├── .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.build.js ├── webpack.build.min.js ├── webpack.dev.conf.js └── webpack.test.conf.js ├── config ├── dev.env.js ├── index.js ├── prod.env.js └── test.env.js ├── examples ├── dist │ ├── index.html │ ├── iview-form.616f23a937d27a2cd87a5f6fa833d514.css │ ├── iview-form.min.6056b99bae7d98bd2913.js │ ├── manifest.min.6056b99bae7d98bd2913.js │ └── vendor.min.6056b99bae7d98bd2913.js └── src │ ├── App.vue │ ├── index.js │ └── index.tpl ├── index.html ├── lib └── iview-form.js ├── package-lock.json ├── package.json ├── packages └── iview-form │ ├── index.js │ └── iview-form.vue ├── src └── index.js ├── static └── .gitkeep └── test └── unit ├── .eslintrc ├── index.js ├── karma.conf.js └── specs └── HelloWorld.spec.js /.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": ["jsx-v-model", "transform-vue-jsx", "transform-runtime"], 12 | "env": { 13 | "test": { 14 | "presets": ["env", "stage-2"], 15 | "plugins": ["transform-vue-jsx", "istanbul"] 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /.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 | /lib/ 4 | /dist/ 5 | /*.js 6 | /test/unit/coverage/ 7 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | // https://eslint.org/docs/user-guide/configuring 2 | 3 | module.exports = { 4 | root: true, 5 | parserOptions: { 6 | parser: 'babel-eslint' 7 | }, 8 | env: { 9 | browser: true, 10 | }, 11 | extends: [ 12 | // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention 13 | // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules. 14 | 'plugin:vue/essential', 15 | // https://github.com/standard/standard/blob/master/docs/RULES-en.md 16 | 'standard' 17 | ], 18 | // required to lint *.vue files 19 | plugins: [ 20 | 'vue' 21 | ], 22 | // add your custom rules here 23 | rules: { 24 | // allow async-await 25 | 'generator-star-spacing': 'off', 26 | // allow debugger during development 27 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', 28 | 'space-before-function-paren': [0, 'always'], 29 | 'no-return-assign': [0, 'always'], 30 | "eol-last": 0 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | /dist/ 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | /test/unit/coverage/ 8 | md.js 9 | 10 | # Editor directories and files 11 | .idea 12 | .vscode 13 | *.suo 14 | *.ntvs* 15 | *.njsproj 16 | *.sln 17 | -------------------------------------------------------------------------------- /.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 | # iview-form 2 | 3 | > 让 iview 和 element-ui 的 form 使用起来更加简单。 4 | 5 | ## 例子 6 | [demo][1] 7 | 8 | ## 安装 9 | 10 | ### npm(推荐方式) 11 | 12 | ```bash 13 | $ npm install iview-form 14 | ``` 15 | 16 | ### script 17 | 18 | ```html 19 | 20 | ``` 21 | 22 | ## 快速开始 23 | 24 | ``` html 25 | 28 | 29 | 54 | ``` 55 | 56 | 标签大小写随你心情 57 | 58 | ``` html 59 | 60 | ``` 61 | 62 | 使用 element-ui 组件库 63 | 64 | ``` html 65 | 66 | ``` 67 | 68 | ## 注意 69 | 如果你是 script 标签引入的,那么所有的参数要用小写,并且单词用 - 链接。 70 | iViewForm => iview-form 71 | formList => form-list 72 | 73 | ## iview-form 参数 74 | 75 | | 参数 | 说明 | 类型 | 默认值 | 76 | | - | - | - | - | 77 | | grid | 网格,更多请看 demo | Number | - | 78 | | gutter | 当使用了 grid 属性时,设置此属性可以调整间距 | Number, Array | - | 79 | | formList | 配置项(看下面 formList 参数) | Array | [] | 80 | | notCtrl | 是否不显示 提交、重置 按钮 | Boolean | false | 81 | | enterSubmit | 如果设定这个值为 true,那么 input 按 enter 键会触发 submit 事件 | Boolean | false | 82 | | lib | 可选值('iview', 'element'),如果指定为 element 那么组件会按照 element 来渲染 | String | 'iview' | 83 | | label-width | 标签的宽度 | Number | 100 | 84 | | content-width | 内容的宽度(支持 百分比 auto) | Number, String | 240 | 85 | | options | iView 和 element-ui 原生 props ( :options="{size: 'small'}" ) | Object | {} | 86 | | submitText | 提交按钮文本 | String | '提交' | 87 | | resetText | 重置按钮文本 | String | '重置' | 88 | | hasSubmitBtn | 是否显示提交按钮 | Boolean | true | 89 | | hasResetBtn | 是否显示重置按钮 | Boolean | true | 90 | | clearable | 控制是否显示清除 icon | Boolean | true | 91 | | maxlength | 默认全局 input 的 maxlength | Number | 20 | 92 | | textareaMaxlength | 默认全局 textarea 的 maxlength | Number | 256 | 93 | | readonly | 如果设定这个值为 true,那么该表单下所有的表单元素都会是 read 94 | | disabled | 如果设定这个值为 true,那么该表单下所有的表单元素都会被禁用 | Boolean | false |nly | Boolean | false | 95 | 96 | ## formList 参数 97 | | 参数 | 说明 | 类型 | 默认值 | 98 | | - | - | - | - | 99 | | title | 显示的标签 | String | '' | 100 | | type | 不同的类型默认值不同,具体看下面 type 的种类 | String | '' | 101 | | key | 可以监听 submit 事件,返回的 form 里面的 key 就是你定义的 key | String | '' | 102 | | defaultValue | item 的默认值 | - | - | 103 | | isShow | isShow 为 false 会不显示这个元素 | Boolean,Function | (form, item) | 104 | | props | 组件库自带的参数,可以参考 iview 或者 element 组件库的文档 | Object | {} | 105 | | attrs | 组件库自带的参数,可以参考 iview 或者 element 组件库的文档 | Object | {} | 106 | | text | type 为 checkbox 或者 radio 时才有用,显示后面跟着的文字 | String | '' | 107 | | options | type 为 select、checkbox-group、radio-group、cascader 时才有用,由 {value: 0, text: '苹果'} 组成,数据项支持异步 | Array | [] | 108 | | onInput | 监听参数改变事件 | Function | (value, item, form) | 109 | | render | 自定义整行 | Function | (h, item, form) | 110 | | renderTitle | 自定义标签 | Function | (h, item, form) | 111 | | renderContent | 自定义内容主题 | Function | (h, item, form) | 112 | | renderOption | type 为 select 时才有用,可以自定义 select 的 option | Function | (h, option, item) | 113 | | disabled | 禁用表单元素,优先级比标签上的低 | Boolean | false | 114 | | settings | formItem 的标签属性,比如 style,class | Object | {} | 115 | | border | 当组件库为 element 时,type:radio-group checkbox checkbox-group, 可以让选项有 border | Boolean | false | 116 | | on | 当前 content 的 on 配置项, 如果要监听 input 事件 请使用 onInput | Object | {} | 117 | | nativeOn | 当前 content 的 nativeOn 配置项 | Object | {} | 118 | 119 | ## type 种类 120 | | 类型 | 默认值 | 其它 | 121 | | - | - | - | 122 | | input | '' | 默认 maxlength: 20, textarea: 256 | 123 | | input-number | 0 | 默认 min: 0, max: 9999999 | 124 | | select | null | | 125 | | checkbox | false | | 126 | | checkbox-group | [] | | 127 | | radio | false | 没有意义,不建议使用 | 128 | | radio-group | [] | | 129 | | date | 当前时间,new Date() | | 130 | | datetime | 当前时间,new Date() | | 131 | | daterange | ['', ''] | | 132 | | datetimerange | ['', ''] | | 133 | | time | '' | | 134 | | switch | false | | 135 | | slider | 0 | | 136 | | cascader | [] | | 137 | 138 | ## 内置方法 139 | | 名称 | 说明 | 参数 | 返回值 | 140 | | - | - | - | - | 141 | | clear | 清除表单验证(暂时只支持element-ui) | - | - | 142 | | reset | 还原表单(默认会调用 clear) | - | - | 143 | | getFormBykey | 根据 key 来获取这个 key 在 form 的值 | { key: value, ... } | - | 144 | | getForm | 获取 form 的值 | - | { key: value, ... } | 145 | | setForm | 设置 form 的值 | { key: value, ... } | - | 146 | | submit | 手动触发 submit 事件 | - | - | 147 | | validateField | 对部分表单字段进行校验的方法。仅当 lib 为 element 的时候,支持第一个参数是数组 | (props: array or string, callback: Function(errorMessage: string) | - | 148 | 149 | ## 事件 150 | | 名称 | 说明 | 返回类型 | 返回值 | 151 | | - | - | - | - | 152 | | submit | 提交按钮的点击事件 | Object | (form, valid) | 153 | 154 | ## 更新日志 155 | ### 1.9.0 156 | 1. 添加 validateField,单项表单验证 157 | 158 | ### 1.8.1 159 | 1. 修复 clear 清空表单无法清空的 bug 160 | 161 | ### 1.8.0 162 | 1. 修复样式错误的 bug 163 | 164 | ### 1.7.0 165 | 1. 修复 renderTitle 和 render 函数没有 form 的bug 166 | 167 | ### 1.6.0 168 | 1. 修复在父组件使用 render(render,renderTitle,renderContent)时,设置 ref 会获取不到对象 169 | 2. 添加 clear 清除方法 170 | 171 | ### 1.5.0 172 | 173 | 1. 支持每个组件的 on 与 nativeOn 配置 174 | 175 | ### 1.4.0 176 | 177 | 1. 当组件库为 element 时,type:radio-group checkbox checkbox-group 支持 border 属性 178 | 179 | ### 1.3.0 180 | 181 | 1. 删除 readonly,因为只能作用于几种类型(input, select),作用不大 182 | 1. 添加 cascader 类型,跟 select 的用法类似 [{ value: 'xxx', text: 'xxx' }, ...] 183 | 184 | ### 1.2.0 185 | 186 | 1. 删除不必要的提示 187 | 188 | ### 1.1.5 189 | 190 | 1. 添加标签的 gutter 属性 191 | 2. content-width 支持 auto 100% 值 192 | 193 | ### 1.1.4 194 | 195 | 1. 修改 1.1.3 失效问题 196 | 197 | ### 1.1.3 198 | 199 | 1. 添加 item 的 setting 属性,可以在 formItem 上添加样式了 200 | 201 | ### 1.1.2 202 | 203 | 1. 添加全局和单体 readonly 属性 204 | 205 | ### 1.1.1 206 | 207 | 1. 添加 type: time 类型 208 | 2. 修改 reset 方法不能清空验证 209 | 210 | ### 1.1.0 211 | 212 | 1. 添加 type: input-number 类型 213 | 2. 添加 maxlength 和 textareaMaxlength 属性,分别作用于 input 和 textarea 上,默认值分别是 20 、256 214 | 3. 添加 setForm 方法 215 | 4. 修改 datetimerange 的默认宽度为 360 216 | 5. 修改 textarea 如果设置了 enterSubmit,不再触发 submit 事件 217 | 6. 修改 element-ui 的 placeholder 现在可以写在 props 里 218 | 219 | ### 1.0.12 220 | 221 | 1. 可以在网页里面用 script 标签引入啦! 222 | 223 | ### 1.0.11 224 | 225 | 1. 修复 options、submitText、resetText、hasSubmitBtn、hasResetBtn 失效的原因 226 | 227 | ### 1.0.10 228 | 229 | 1. isShow 属性,可以使用方法了 230 | 2. 添加 clearable 属性,默认为 true 231 | 232 | ### 1.0.9 233 | 234 | 1. 添加 isShow 属性 235 | 236 | ### 1.0.8 237 | 238 | 1. 修改 tpye 为 switch 时 props 不生效 239 | 240 | ### 1.0.7 241 | 242 | 1. 修改 input 的 placeholder 需要添加在 attrs 里面 243 | 2. 添加 formList 的 render 函数 244 | 245 | ### 1.0.6 246 | 247 | 1. 修改 重置按钮 跟 提交按钮重复的问题 248 | 249 | ### 1.0.5 250 | 251 | 1. 添加 options 自定义组建自带 props 属性 252 | 2. 添加 hasSubmitBtn、hasResetBtn 自定义是否显示按钮属性 253 | 3. 添加 submitText、resetText 自定义按钮文本属性 254 | 4. 删除 autocomplete 属性 255 | 256 | ## LICENSE 257 | MIT 258 | 259 | 260 | [1]: https://viewweiwu.github.io/iview-form/examples/dist/ 261 | -------------------------------------------------------------------------------- /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 | 103 | exports.cdnLoader = (prod = false) => { 104 | return { 105 | modules: [ 106 | { 107 | name: 'vue', 108 | var: 'Vue', 109 | // path: 'dist/vue.runtime.js' 110 | path: 'dist/vue.js' 111 | // path: 'dist/vue.runtime.min.js' 112 | }, 113 | { 114 | name: 'element-ui', 115 | var: 'ELEMENT', 116 | style: 'lib/theme-chalk/index.css', 117 | path: 'lib/index.js' 118 | }, 119 | { 120 | name: 'iview', 121 | var: 'iview', 122 | path: 'dist/iview.js', 123 | style: 'dist/styles/iview.css', 124 | } 125 | ], 126 | prod, 127 | publicPath: '/node_modules', 128 | prodUrl: '//cdn.jsdelivr.net/npm/:name@:version/:path' 129 | } 130 | } 131 | -------------------------------------------------------------------------------- /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 | const webpack = require('webpack') 7 | const CopyWebpackPlugin = require('copy-webpack-plugin') 8 | const HtmlWebpackPlugin = require('html-webpack-plugin') 9 | const WebpackCdnPlugin = require('webpack-cdn-plugin') 10 | 11 | function resolve (dir) { 12 | return path.join(__dirname, '..', dir) 13 | } 14 | 15 | const HOST = process.env.HOST 16 | const PORT = process.env.PORT && Number(process.env.PORT) 17 | 18 | const createLintingRule = () => ({ 19 | test: /\.(js|vue)$/, 20 | loader: 'eslint-loader', 21 | enforce: 'pre', 22 | include: [resolve('src'), resolve('test')], 23 | options: { 24 | formatter: require('eslint-friendly-formatter'), 25 | emitWarning: !config.dev.showEslintErrorsInOverlay 26 | } 27 | }) 28 | 29 | module.exports = { 30 | context: path.resolve(__dirname, '../'), 31 | entry: { 32 | 'vendor': ['vue'], 33 | 'iview-form': './examples/src/index.js' 34 | }, 35 | output: { 36 | path: path.join(__dirname, '../examples/dist'), 37 | publicPath: '/', 38 | filename: '[name].js' 39 | }, 40 | resolve: { 41 | extensions: ['.js', '.vue', '.json'], 42 | alias: { 43 | 'vue$': 'vue/dist/vue.esm.js', 44 | '@': resolve('src'), 45 | 'src': resolve('src') 46 | } 47 | }, 48 | externals: { 49 | 'element-ui/lib/theme-chalk/index.css': 'null', 50 | 'iview/dist/styles/iview.css': 'null' 51 | }, 52 | module: { 53 | rules: [ 54 | ...(config.dev.useEslint ? [createLintingRule()] : []), 55 | { 56 | test: /\.vue$/, 57 | loader: 'vue-loader', 58 | options: vueLoaderConfig 59 | }, 60 | { 61 | test: /\.js$/, 62 | loader: 'babel-loader', 63 | include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')] 64 | }, 65 | { 66 | test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, 67 | loader: 'url-loader', 68 | options: { 69 | limit: 10000, 70 | name: utils.assetsPath('img/[name].[hash:7].[ext]') 71 | } 72 | }, 73 | { 74 | test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, 75 | loader: 'url-loader', 76 | options: { 77 | limit: 10000, 78 | name: utils.assetsPath('fonts/[name].[hash:7].[ext]') 79 | } 80 | }, 81 | // 整合webpack.dev.conf.js中css相关配置 82 | ...utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true }) 83 | ] 84 | }, 85 | node: { 86 | // prevent webpack from injecting useless setImmediate polyfill because Vue 87 | // source contains it (although only uses it if it's native). 88 | setImmediate: false, 89 | // prevent webpack from injecting mocks to Node native modules 90 | // that does not make sense for the client 91 | dgram: 'empty', 92 | fs: 'empty', 93 | net: 'empty', 94 | tls: 'empty', 95 | child_process: 'empty' 96 | }, 97 | devtool: config.dev.devtool, 98 | // 整合webpack.dev.conf.js中的devServer选项 99 | devServer: { 100 | clientLogLevel: 'warning', 101 | historyApiFallback: { 102 | rewrites: [ 103 | { from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') }, 104 | ], 105 | }, 106 | hot: true, 107 | contentBase: false, // since we use CopyWebpackPlugin. 108 | compress: true, 109 | host: HOST || config.dev.host, 110 | port: PORT || config.dev.port, 111 | open: config.dev.autoOpenBrowser, 112 | overlay: config.dev.errorOverlay 113 | ? { warnings: false, errors: true } 114 | : false, 115 | publicPath: config.dev.assetsPublicPath, 116 | proxy: config.dev.proxyTable, 117 | quiet: true, // necessary for FriendlyErrorsPlugin 118 | watchOptions: { 119 | poll: config.dev.poll, 120 | } 121 | }, 122 | // 整合webpack.dev.conf.js中的plugins选项 123 | plugins: [ 124 | new webpack.DefinePlugin({ 125 | 'process.env': require('../config/dev.env') 126 | }), 127 | new webpack.HotModuleReplacementPlugin(), 128 | new webpack.NamedModulesPlugin(), 129 | new webpack.NoEmitOnErrorsPlugin(), 130 | // 页面主入口 131 | new HtmlWebpackPlugin({ 132 | chunks: ['manifest', 'vendor', 'iview-form'], 133 | template: 'examples/src/index.tpl', 134 | filename: 'index.html', 135 | inject: true 136 | }), 137 | new WebpackCdnPlugin(utils.cdnLoader(true)) 138 | ] 139 | } 140 | -------------------------------------------------------------------------------- /build/webpack.build.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const webpack = require('webpack') 3 | const config = require('./webpack.base.conf') 4 | // 修改入口文件 5 | config.entry = { 6 | 'iview-form': './src/index.js' 7 | } 8 | // 修改输出目录 9 | config.output = { 10 | filename: './lib/[name].js', 11 | library: 'iview-form', 12 | libraryTarget: 'umd' 13 | } 14 | // 配置externals选项 15 | config.externals = { 16 | vue: { 17 | root: 'Vue', 18 | commonjs: 'vue', 19 | commonjs2: 'vue', 20 | amd: 'vue' 21 | } 22 | } 23 | // 配置plugins选项 24 | config.plugins = [ 25 | new webpack.DefinePlugin({ 26 | 'process.env': require('../config/prod.env') 27 | }) 28 | ] 29 | // 删除devtool配置 30 | delete config.devtool 31 | 32 | module.exports = config -------------------------------------------------------------------------------- /build/webpack.build.min.js: -------------------------------------------------------------------------------- 1 | const path = require('path') 2 | const webpack = require('webpack') 3 | const merge = require('webpack-merge') 4 | const baseWebpackConfig = require('./webpack.base.conf') 5 | const config = require('../config') 6 | const ExtractTextPlugin = require('extract-text-webpack-plugin') 7 | const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; 8 | 9 | const webpackConfig = merge(baseWebpackConfig, { 10 | output: { 11 | publicPath: './', 12 | chunkFilename: '[id].[hash].js', 13 | filename: '[name].min.[hash].js' 14 | }, 15 | plugins: [ 16 | new webpack.optimize.UglifyJsPlugin({ 17 | compress: { 18 | warnings: false 19 | }, 20 | output: { 21 | comments: false 22 | }, 23 | sourceMap: false 24 | }), 25 | // extract css into its own file 26 | new ExtractTextPlugin({ 27 | filename: '[name].[contenthash].css', 28 | allChunks: true, 29 | }), 30 | // keep module.id stable when vendor modules does not change 31 | new webpack.HashedModuleIdsPlugin(), 32 | // enable scope hoisting 33 | new webpack.optimize.ModuleConcatenationPlugin(), 34 | // split vendor js into its own file 35 | new webpack.optimize.CommonsChunkPlugin({ 36 | name: 'vendor', 37 | minChunks (module) { 38 | // any required modules inside node_modules are extracted to vendor 39 | return ( 40 | module.resource && 41 | /\.js$/.test(module.resource) && 42 | module.resource.indexOf( 43 | path.join(__dirname, '../node_modules') 44 | ) === 0 45 | ) 46 | } 47 | }), 48 | new webpack.optimize.CommonsChunkPlugin({ 49 | name: 'manifest', 50 | minChunks: Infinity 51 | }), 52 | new webpack.optimize.CommonsChunkPlugin({ 53 | name: 'app', 54 | async: 'vendor-async', 55 | children: true, 56 | minChunks: 3 57 | }), 58 | // new BundleAnalyzerPlugin() 59 | ] 60 | }) 61 | 62 | module.exports = webpackConfig -------------------------------------------------------------------------------- /build/webpack.dev.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const utils = require('./utils') 3 | const config = require('../config') 4 | const baseWebpackConfig = require('./webpack.base.conf') 5 | const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin') 6 | const portfinder = require('portfinder') 7 | 8 | module.exports = new Promise((resolve, reject) => { 9 | portfinder.basePort = process.env.PORT || config.dev.port 10 | portfinder.getPort((err, port) => { 11 | if (err) { 12 | reject(err) 13 | } else { 14 | process.env.PORT = port 15 | baseWebpackConfig.devServer.port = port 16 | 17 | baseWebpackConfig.plugins.push(new FriendlyErrorsPlugin({ 18 | compilationSuccessInfo: { 19 | messages: [`Your application is running here: http://${baseWebpackConfig.devServer.host}:${port}`], 20 | }, 21 | onErrors: config.dev.notifyOnErrors 22 | ? utils.createNotifierCallback() 23 | : undefined 24 | })) 25 | 26 | resolve(baseWebpackConfig) 27 | } 28 | }) 29 | }) -------------------------------------------------------------------------------- /build/webpack.test.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | // This is the webpack config used for unit tests. 3 | 4 | const utils = require('./utils') 5 | const webpack = require('webpack') 6 | const merge = require('webpack-merge') 7 | const baseWebpackConfig = require('./webpack.base.conf') 8 | 9 | const webpackConfig = merge(baseWebpackConfig, { 10 | // use inline sourcemap for karma-sourcemap-loader 11 | module: { 12 | rules: utils.styleLoaders() 13 | }, 14 | devtool: '#inline-source-map', 15 | resolveLoader: { 16 | alias: { 17 | // necessary to to make lang="scss" work in test when using vue-loader's ?inject option 18 | // see discussion at https://github.com/vuejs/vue-loader/issues/724 19 | 'scss-loader': 'sass-loader' 20 | } 21 | }, 22 | plugins: [ 23 | new webpack.DefinePlugin({ 24 | 'process.env': require('../config/test.env') 25 | }) 26 | ] 27 | }) 28 | 29 | // no need for app entry during tests 30 | delete webpackConfig.entry 31 | 32 | module.exports = webpackConfig 33 | -------------------------------------------------------------------------------- /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.3.1 3 | // see http://vuejs-templates.github.io/webpack for documentation. 4 | 5 | const path = require('path') 6 | 7 | module.exports = { 8 | dev: { 9 | 10 | // Paths 11 | assetsSubDirectory: 'static', 12 | assetsPublicPath: '/', 13 | proxyTable: {}, 14 | 15 | // Various Dev Server settings 16 | host: 'localhost', // can be overwritten by process.env.HOST 17 | port: 9999, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined 18 | autoOpenBrowser: false, 19 | errorOverlay: true, 20 | notifyOnErrors: true, 21 | poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions- 22 | 23 | // Use Eslint Loader? 24 | // If true, your code will be linted during bundling and 25 | // linting errors and warnings will be shown in the console. 26 | useEslint: true, 27 | // If true, eslint errors and warnings will also be shown in the error overlay 28 | // in the browser. 29 | showEslintErrorsInOverlay: false, 30 | 31 | /** 32 | * Source Maps 33 | */ 34 | 35 | // https://webpack.js.org/configuration/devtool/#development 36 | devtool: 'cheap-module-eval-source-map', 37 | 38 | // If you have problems debugging vue-files in devtools, 39 | // set this to false - it *may* help 40 | // https://vue-loader.vuejs.org/en/options.html#cachebusting 41 | cacheBusting: true, 42 | 43 | cssSourceMap: true 44 | }, 45 | 46 | build: { 47 | // Template for index.html 48 | index: path.resolve(__dirname, '../dist/index.html'), 49 | 50 | // Paths 51 | assetsRoot: path.resolve(__dirname, '../dist'), 52 | assetsSubDirectory: 'static', 53 | assetsPublicPath: './', 54 | 55 | /** 56 | * Source Maps 57 | */ 58 | 59 | productionSourceMap: true, 60 | // https://webpack.js.org/configuration/devtool/#production 61 | devtool: '#source-map', 62 | 63 | // Gzip off by default as many popular static hosts such as 64 | // Surge or Netlify already gzip all static assets for you. 65 | // Before setting to `true`, make sure to: 66 | // npm install --save-dev compression-webpack-plugin 67 | productionGzip: false, 68 | productionGzipExtensions: ['js', 'css'], 69 | 70 | // Run the build command with an extra argument to 71 | // View the bundle analyzer report after build finishes: 72 | // `npm run build --report` 73 | // Set to `true` or `false` to always turn it on or off 74 | bundleAnalyzerReport: process.env.npm_config_report 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /config/prod.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = { 3 | NODE_ENV: '"production"' 4 | } 5 | -------------------------------------------------------------------------------- /config/test.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const devEnv = require('./dev.env') 4 | 5 | module.exports = merge(devEnv, { 6 | NODE_ENV: '"testing"' 7 | }) 8 | -------------------------------------------------------------------------------- /examples/dist/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | hello iview form 8 | 9 | 10 | 11 |
12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /examples/dist/iview-form.616f23a937d27a2cd87a5f6fa833d514.css: -------------------------------------------------------------------------------- 1 | 2 | .test { 3 | background-color: #6cf; 4 | } 5 | body { 6 | padding: 70px 50px 50px; 7 | background-color: #fafafa; 8 | } 9 | h2 { 10 | margin: 20px 0; 11 | padding-left: 10px; 12 | border-left: 3px solid #f60; 13 | } 14 | .app-header { 15 | top: 0; 16 | left: 0; 17 | width: 100%; 18 | height: 70px; 19 | padding: 10px 30px; 20 | border-bottom: 1px solid #ddd; 21 | -webkit-box-shadow: 0 0 5px #ccc; 22 | box-shadow: 0 0 5px #ccc; 23 | background-color: #fff; 24 | z-index: 10; 25 | position: fixed; 26 | display: -webkit-box; 27 | display: -ms-flexbox; 28 | display: flex; 29 | -webkit-box-pack: justify; 30 | -ms-flex-pack: justify; 31 | justify-content: space-between; 32 | -webkit-box-align: center; 33 | -ms-flex-align: center; 34 | align-items: center; 35 | } 36 | .app-header .title { 37 | font-size: 40px; 38 | text-shadow: 1px 1px 2px #fff, 1px 1px 2px #000; 39 | } 40 | .info { 41 | margin: 10px; 42 | padding: 10px; 43 | border: 1px solid #ddd; 44 | font-size: 18px; 45 | background-color: #fff; 46 | } 47 | .ms { 48 | margin: 10px; 49 | } 50 | -------------------------------------------------------------------------------- /examples/dist/manifest.min.6056b99bae7d98bd2913.js: -------------------------------------------------------------------------------- 1 | !function(e){function n(e){delete q[e]}function r(e){var n=document.getElementsByTagName("head")[0],r=document.createElement("script");r.type="text/javascript",r.charset="utf-8",r.src=f.p+""+e+"."+O+".hot-update.js",n.appendChild(r)}function t(e){return e=e||1e4,new Promise(function(n,r){if("undefined"==typeof XMLHttpRequest)return r(new Error("No browser support"));try{var t=new XMLHttpRequest,o=f.p+""+O+".hot-update.json";t.open("GET",o,!0),t.timeout=e,t.send(null)}catch(e){return r(e)}t.onreadystatechange=function(){if(4===t.readyState)if(0===t.status)r(new Error("Manifest request to "+o+" timed out."));else if(404===t.status)n();else if(200!==t.status&&304!==t.status)r(new Error("Manifest request to "+o+" failed."));else{try{var e=JSON.parse(t.responseText)}catch(e){return void r(e)}n(e)}}})}function o(e){var n=U[e];if(!n)return f;var r=function(r){return n.hot.active?(U[r]?U[r].parents.indexOf(e)<0&&U[r].parents.push(e):(E=[e],v=r),n.children.indexOf(r)<0&&n.children.push(r)):(console.warn("[HMR] unexpected require("+r+") from disposed module "+e),E=[]),f(r)};for(var t in f)Object.prototype.hasOwnProperty.call(f,t)&&"e"!==t&&Object.defineProperty(r,t,function(e){return{configurable:!0,enumerable:!0,get:function(){return f[e]},set:function(n){f[e]=n}}}(t));return r.e=function(e){function n(){I--,"prepare"===H&&(k[e]||p(e),0===I&&0===P&&l())}return"ready"===H&&i("prepare"),I++,f.e(e).then(n,function(e){throw n(),e})},r}function c(e){var n={_acceptedDependencies:{},_declinedDependencies:{},_selfAccepted:!1,_selfDeclined:!1,_disposeHandlers:[],_main:v!==e,active:!0,accept:function(e,r){if(void 0===e)n._selfAccepted=!0;else if("function"==typeof e)n._selfAccepted=e;else if("object"==typeof e)for(var t=0;t=0&&n._disposeHandlers.splice(r,1)},check:a,apply:u,status:function(e){if(!e)return H;x.push(e)},addStatusHandler:function(e){x.push(e)},removeStatusHandler:function(e){var n=x.indexOf(e);n>=0&&x.splice(n,1)},data:D[e]};return v=void 0,n}function i(e){H=e;for(var n=0;n0;){var c=o.pop(),i=c.id,d=c.chain;if((s=U[i])&&!s.hot._selfAccepted){if(s.hot._selfDeclined)return{type:"self-declined",chain:d,moduleId:i};if(s.hot._main)return{type:"unaccepted",chain:d,moduleId:i};for(var a=0;a=0||(l.hot._acceptedDependencies[i]?(r[p]||(r[p]=[]),t(r[p],[i])):(delete r[p],n.push(p),o.push({chain:d.concat([p]),id:p})))}}}}return{type:"accepted",moduleId:e,outdatedModules:n,outdatedDependencies:r}}(p):{type:"disposed",moduleId:v};var g=!1,_=!1,j=!1,x="";switch(w.chain&&(x="\nUpdate propagation: "+w.chain.join(" -> ")),w.type){case"self-declined":r.onDeclined&&r.onDeclined(w),r.ignoreDeclined||(g=new Error("Aborted because of self decline: "+w.moduleId+x));break;case"declined":r.onDeclined&&r.onDeclined(w),r.ignoreDeclined||(g=new Error("Aborted because of declined dependency: "+w.moduleId+" in "+w.parentId+x));break;case"unaccepted":r.onUnaccepted&&r.onUnaccepted(w),r.ignoreUnaccepted||(g=new Error("Aborted because "+p+" is not accepted"+x));break;case"accepted":r.onAccepted&&r.onAccepted(w),_=!0;break;case"disposed":r.onDisposed&&r.onDisposed(w),j=!0;break;default:throw new Error("Unexception type "+w.type)}if(g)return i("abort"),Promise.reject(g);if(_){h[p]=b[p],t(u,w.outdatedModules);for(p in w.outdatedDependencies)Object.prototype.hasOwnProperty.call(w.outdatedDependencies,p)&&(l[p]||(l[p]=[]),t(l[p],w.outdatedDependencies[p]))}j&&(t(u,[w.moduleId]),h[p]=y)}var P=[];for(c=0;c0;)if(p=k.pop(),s=U[p]){var A={},q=s.hot._disposeHandlers;for(a=0;a=0&&R.parents.splice(I,1))}}var S,J;for(p in l)if(Object.prototype.hasOwnProperty.call(l,p)&&(s=U[p]))for(J=l[p],a=0;a=0&&s.children.splice(I,1);i("apply"),O=m;for(p in h)Object.prototype.hasOwnProperty.call(h,p)&&(e[p]=h[p]);var N=null;for(p in l)if(Object.prototype.hasOwnProperty.call(l,p)&&(s=U[p])){J=l[p];var T=[];for(c=0;c=0)continue;T.push(o)}for(c=0;c Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");\nvar toLength = __webpack_require__("./node_modules/core-js/library/modules/_to-length.js");\nvar toAbsoluteIndex = __webpack_require__("./node_modules/core-js/library/modules/_to-absolute-index.js");\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2FycmF5LWluY2x1ZGVzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19hcnJheS1pbmNsdWRlcy5qcz9iYzU3Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIGZhbHNlIC0+IEFycmF5I2luZGV4T2Zcbi8vIHRydWUgIC0+IEFycmF5I2luY2x1ZGVzXG52YXIgdG9JT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8taW9iamVjdCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgdG9BYnNvbHV0ZUluZGV4ID0gcmVxdWlyZSgnLi9fdG8tYWJzb2x1dGUtaW5kZXgnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKElTX0lOQ0xVREVTKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoJHRoaXMsIGVsLCBmcm9tSW5kZXgpIHtcbiAgICB2YXIgTyA9IHRvSU9iamVjdCgkdGhpcyk7XG4gICAgdmFyIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgICB2YXIgaW5kZXggPSB0b0Fic29sdXRlSW5kZXgoZnJvbUluZGV4LCBsZW5ndGgpO1xuICAgIHZhciB2YWx1ZTtcbiAgICAvLyBBcnJheSNpbmNsdWRlcyB1c2VzIFNhbWVWYWx1ZVplcm8gZXF1YWxpdHkgYWxnb3JpdGhtXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIGlmIChJU19JTkNMVURFUyAmJiBlbCAhPSBlbCkgd2hpbGUgKGxlbmd0aCA+IGluZGV4KSB7XG4gICAgICB2YWx1ZSA9IE9baW5kZXgrK107XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlXG4gICAgICBpZiAodmFsdWUgIT0gdmFsdWUpIHJldHVybiB0cnVlO1xuICAgIC8vIEFycmF5I2luZGV4T2YgaWdub3JlcyBob2xlcywgQXJyYXkjaW5jbHVkZXMgLSBub3RcbiAgICB9IGVsc2UgZm9yICg7bGVuZ3RoID4gaW5kZXg7IGluZGV4KyspIGlmIChJU19JTkNMVURFUyB8fCBpbmRleCBpbiBPKSB7XG4gICAgICBpZiAoT1tpbmRleF0gPT09IGVsKSByZXR1cm4gSVNfSU5DTFVERVMgfHwgaW5kZXggfHwgMDtcbiAgICB9IHJldHVybiAhSVNfSU5DTFVERVMgJiYgLTE7XG4gIH07XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2FycmF5LWluY2x1ZGVzLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fYXJyYXktaW5jbHVkZXMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_array-includes.js\n')},"./node_modules/core-js/library/modules/_cof.js":function(module,exports){eval("var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvZi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fY29mLmpzPzQ3ZDMiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvZi5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvZi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_cof.js\n")},"./node_modules/core-js/library/modules/_core.js":function(module,exports){eval("var core = module.exports = { version: '2.5.3' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvcmUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvcmUuanM/MTVlMCJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgY29yZSA9IG1vZHVsZS5leHBvcnRzID0geyB2ZXJzaW9uOiAnMi41LjMnIH07XG5pZiAodHlwZW9mIF9fZSA9PSAnbnVtYmVyJykgX19lID0gY29yZTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvcmUuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19jb3JlLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_core.js\n")},"./node_modules/core-js/library/modules/_ctx.js":function(module,exports,__webpack_require__){eval('// optional / simple context binding\nvar aFunction = __webpack_require__("./node_modules/core-js/library/modules/_a-function.js");\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2N0eC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fY3R4LmpzP2Y5OTMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gb3B0aW9uYWwgLyBzaW1wbGUgY29udGV4dCBiaW5kaW5nXG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZm4sIHRoYXQsIGxlbmd0aCkge1xuICBhRnVuY3Rpb24oZm4pO1xuICBpZiAodGhhdCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZm47XG4gIHN3aXRjaCAobGVuZ3RoKSB7XG4gICAgY2FzZSAxOiByZXR1cm4gZnVuY3Rpb24gKGEpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEpO1xuICAgIH07XG4gICAgY2FzZSAyOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIpO1xuICAgIH07XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIsIGMpO1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGZ1bmN0aW9uICgvKiAuLi5hcmdzICovKSB7XG4gICAgcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3VtZW50cyk7XG4gIH07XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2N0eC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2N0eC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_ctx.js\n')},"./node_modules/core-js/library/modules/_defined.js":function(module,exports){eval('// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError("Can\'t call method on " + it);\n return it;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RlZmluZWQuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RlZmluZWQuanM/ZTc2OCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyA3LjIuMSBSZXF1aXJlT2JqZWN0Q29lcmNpYmxlKGFyZ3VtZW50KVxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKGl0ID09IHVuZGVmaW5lZCkgdGhyb3cgVHlwZUVycm9yKFwiQ2FuJ3QgY2FsbCBtZXRob2Qgb24gIFwiICsgaXQpO1xuICByZXR1cm4gaXQ7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RlZmluZWQuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19kZWZpbmVkLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_defined.js\n')},"./node_modules/core-js/library/modules/_descriptors.js":function(module,exports,__webpack_require__){eval("// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(\"./node_modules/core-js/library/modules/_fails.js\")(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2Rlc2NyaXB0b3JzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19kZXNjcmlwdG9ycy5qcz9mODRkIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoYW5rJ3MgSUU4IGZvciBoaXMgZnVubnkgZGVmaW5lUHJvcGVydHlcbm1vZHVsZS5leHBvcnRzID0gIXJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCAnYScsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiA3OyB9IH0pLmEgIT0gNztcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2Rlc2NyaXB0b3JzLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZGVzY3JpcHRvcnMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_descriptors.js\n")},"./node_modules/core-js/library/modules/_dom-create.js":function(module,exports,__webpack_require__){eval('var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");\nvar document = __webpack_require__("./node_modules/core-js/library/modules/_global.js").document;\n// typeof document.createElement is \'object\' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RvbS1jcmVhdGUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RvbS1jcmVhdGUuanM/MzhkZCJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBkb2N1bWVudCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpLmRvY3VtZW50O1xuLy8gdHlwZW9mIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQgaXMgJ29iamVjdCcgaW4gb2xkIElFXG52YXIgaXMgPSBpc09iamVjdChkb2N1bWVudCkgJiYgaXNPYmplY3QoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXMgPyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KGl0KSA6IHt9O1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19kb20tY3JlYXRlLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZG9tLWNyZWF0ZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_dom-create.js\n')},"./node_modules/core-js/library/modules/_enum-bug-keys.js":function(module,exports){eval("// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2VudW0tYnVnLWtleXMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2VudW0tYnVnLWtleXMuanM/YzY3NyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJRSA4LSBkb24ndCBlbnVtIGJ1ZyBrZXlzXG5tb2R1bGUuZXhwb3J0cyA9IChcbiAgJ2NvbnN0cnVjdG9yLGhhc093blByb3BlcnR5LGlzUHJvdG90eXBlT2YscHJvcGVydHlJc0VudW1lcmFibGUsdG9Mb2NhbGVTdHJpbmcsdG9TdHJpbmcsdmFsdWVPZidcbikuc3BsaXQoJywnKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19lbnVtLWJ1Zy1rZXlzLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZW51bS1idWcta2V5cy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_enum-bug-keys.js\n")},"./node_modules/core-js/library/modules/_export.js":function(module,exports,__webpack_require__){eval('var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");\nvar core = __webpack_require__("./node_modules/core-js/library/modules/_core.js");\nvar ctx = __webpack_require__("./node_modules/core-js/library/modules/_ctx.js");\nvar hide = __webpack_require__("./node_modules/core-js/library/modules/_hide.js");\nvar PROTOTYPE = \'prototype\';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && key in exports) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != \'function\' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == \'function\' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2V4cG9ydC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZXhwb3J0LmpzPzkwY2QiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGNvcmUgPSByZXF1aXJlKCcuL19jb3JlJyk7XG52YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbnZhciBQUk9UT1RZUEUgPSAncHJvdG90eXBlJztcblxudmFyICRleHBvcnQgPSBmdW5jdGlvbiAodHlwZSwgbmFtZSwgc291cmNlKSB7XG4gIHZhciBJU19GT1JDRUQgPSB0eXBlICYgJGV4cG9ydC5GO1xuICB2YXIgSVNfR0xPQkFMID0gdHlwZSAmICRleHBvcnQuRztcbiAgdmFyIElTX1NUQVRJQyA9IHR5cGUgJiAkZXhwb3J0LlM7XG4gIHZhciBJU19QUk9UTyA9IHR5cGUgJiAkZXhwb3J0LlA7XG4gIHZhciBJU19CSU5EID0gdHlwZSAmICRleHBvcnQuQjtcbiAgdmFyIElTX1dSQVAgPSB0eXBlICYgJGV4cG9ydC5XO1xuICB2YXIgZXhwb3J0cyA9IElTX0dMT0JBTCA/IGNvcmUgOiBjb3JlW25hbWVdIHx8IChjb3JlW25hbWVdID0ge30pO1xuICB2YXIgZXhwUHJvdG8gPSBleHBvcnRzW1BST1RPVFlQRV07XG4gIHZhciB0YXJnZXQgPSBJU19HTE9CQUwgPyBnbG9iYWwgOiBJU19TVEFUSUMgPyBnbG9iYWxbbmFtZV0gOiAoZ2xvYmFsW25hbWVdIHx8IHt9KVtQUk9UT1RZUEVdO1xuICB2YXIga2V5LCBvd24sIG91dDtcbiAgaWYgKElTX0dMT0JBTCkgc291cmNlID0gbmFtZTtcbiAgZm9yIChrZXkgaW4gc291cmNlKSB7XG4gICAgLy8gY29udGFpbnMgaW4gbmF0aXZlXG4gICAgb3duID0gIUlTX0ZPUkNFRCAmJiB0YXJnZXQgJiYgdGFyZ2V0W2tleV0gIT09IHVuZGVmaW5lZDtcbiAgICBpZiAob3duICYmIGtleSBpbiBleHBvcnRzKSBjb250aW51ZTtcbiAgICAvLyBleHBvcnQgbmF0aXZlIG9yIHBhc3NlZFxuICAgIG91dCA9IG93biA/IHRhcmdldFtrZXldIDogc291cmNlW2tleV07XG4gICAgLy8gcHJldmVudCBnbG9iYWwgcG9sbHV0aW9uIGZvciBuYW1lc3BhY2VzXG4gICAgZXhwb3J0c1trZXldID0gSVNfR0xPQkFMICYmIHR5cGVvZiB0YXJnZXRba2V5XSAhPSAnZnVuY3Rpb24nID8gc291cmNlW2tleV1cbiAgICAvLyBiaW5kIHRpbWVycyB0byBnbG9iYWwgZm9yIGNhbGwgZnJvbSBleHBvcnQgY29udGV4dFxuICAgIDogSVNfQklORCAmJiBvd24gPyBjdHgob3V0LCBnbG9iYWwpXG4gICAgLy8gd3JhcCBnbG9iYWwgY29uc3RydWN0b3JzIGZvciBwcmV2ZW50IGNoYW5nZSB0aGVtIGluIGxpYnJhcnlcbiAgICA6IElTX1dSQVAgJiYgdGFyZ2V0W2tleV0gPT0gb3V0ID8gKGZ1bmN0aW9uIChDKSB7XG4gICAgICB2YXIgRiA9IGZ1bmN0aW9uIChhLCBiLCBjKSB7XG4gICAgICAgIGlmICh0aGlzIGluc3RhbmNlb2YgQykge1xuICAgICAgICAgIHN3aXRjaCAoYXJndW1lbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgY2FzZSAwOiByZXR1cm4gbmV3IEMoKTtcbiAgICAgICAgICAgIGNhc2UgMTogcmV0dXJuIG5ldyBDKGEpO1xuICAgICAgICAgICAgY2FzZSAyOiByZXR1cm4gbmV3IEMoYSwgYik7XG4gICAgICAgICAgfSByZXR1cm4gbmV3IEMoYSwgYiwgYyk7XG4gICAgICAgIH0gcmV0dXJuIEMuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgIH07XG4gICAgICBGW1BST1RPVFlQRV0gPSBDW1BST1RPVFlQRV07XG4gICAgICByZXR1cm4gRjtcbiAgICAvLyBtYWtlIHN0YXRpYyB2ZXJzaW9ucyBmb3IgcHJvdG90eXBlIG1ldGhvZHNcbiAgICB9KShvdXQpIDogSVNfUFJPVE8gJiYgdHlwZW9mIG91dCA9PSAnZnVuY3Rpb24nID8gY3R4KEZ1bmN0aW9uLmNhbGwsIG91dCkgOiBvdXQ7XG4gICAgLy8gZXhwb3J0IHByb3RvIG1ldGhvZHMgdG8gY29yZS4lQ09OU1RSVUNUT1IlLm1ldGhvZHMuJU5BTUUlXG4gICAgaWYgKElTX1BST1RPKSB7XG4gICAgICAoZXhwb3J0cy52aXJ0dWFsIHx8IChleHBvcnRzLnZpcnR1YWwgPSB7fSkpW2tleV0gPSBvdXQ7XG4gICAgICAvLyBleHBvcnQgcHJvdG8gbWV0aG9kcyB0byBjb3JlLiVDT05TVFJVQ1RPUiUucHJvdG90eXBlLiVOQU1FJVxuICAgICAgaWYgKHR5cGUgJiAkZXhwb3J0LlIgJiYgZXhwUHJvdG8gJiYgIWV4cFByb3RvW2tleV0pIGhpZGUoZXhwUHJvdG8sIGtleSwgb3V0KTtcbiAgICB9XG4gIH1cbn07XG4vLyB0eXBlIGJpdG1hcFxuJGV4cG9ydC5GID0gMTsgICAvLyBmb3JjZWRcbiRleHBvcnQuRyA9IDI7ICAgLy8gZ2xvYmFsXG4kZXhwb3J0LlMgPSA0OyAgIC8vIHN0YXRpY1xuJGV4cG9ydC5QID0gODsgICAvLyBwcm90b1xuJGV4cG9ydC5CID0gMTY7ICAvLyBiaW5kXG4kZXhwb3J0LlcgPSAzMjsgIC8vIHdyYXBcbiRleHBvcnQuVSA9IDY0OyAgLy8gc2FmZVxuJGV4cG9ydC5SID0gMTI4OyAvLyByZWFsIHByb3RvIG1ldGhvZCBmb3IgYGxpYnJhcnlgXG5tb2R1bGUuZXhwb3J0cyA9ICRleHBvcnQ7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZXhwb3J0LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZXhwb3J0LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_export.js\n')},"./node_modules/core-js/library/modules/_fails.js":function(module,exports){eval("module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2ZhaWxzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19mYWlscy5qcz80YmNkIl0sInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGV4ZWMpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gISFleGVjKCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19mYWlscy5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2ZhaWxzLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_fails.js\n")},"./node_modules/core-js/library/modules/_global.js":function(module,exports){eval("// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2dsb2JhbC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fZ2xvYmFsLmpzP2VjYWIiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbnZhciBnbG9iYWwgPSBtb2R1bGUuZXhwb3J0cyA9IHR5cGVvZiB3aW5kb3cgIT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lk1hdGggPT0gTWF0aFxuICA/IHdpbmRvdyA6IHR5cGVvZiBzZWxmICE9ICd1bmRlZmluZWQnICYmIHNlbGYuTWF0aCA9PSBNYXRoID8gc2VsZlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgOiBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuaWYgKHR5cGVvZiBfX2cgPT0gJ251bWJlcicpIF9fZyA9IGdsb2JhbDsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2dsb2JhbC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2dsb2JhbC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_global.js\n")},"./node_modules/core-js/library/modules/_has.js":function(module,exports){eval("var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hhcy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faGFzLmpzPzBmNjIiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGhhc093blByb3BlcnR5ID0ge30uaGFzT3duUHJvcGVydHk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19oYXMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19oYXMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_has.js\n")},"./node_modules/core-js/library/modules/_hide.js":function(module,exports,__webpack_require__){eval('var dP = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js");\nvar createDesc = __webpack_require__("./node_modules/core-js/library/modules/_property-desc.js");\nmodule.exports = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hpZGUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hpZGUuanM/ODQ5YyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgZFAgPSByZXF1aXJlKCcuL19vYmplY3QtZHAnKTtcbnZhciBjcmVhdGVEZXNjID0gcmVxdWlyZSgnLi9fcHJvcGVydHktZGVzYycpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpID8gZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICByZXR1cm4gZFAuZihvYmplY3QsIGtleSwgY3JlYXRlRGVzYygxLCB2YWx1ZSkpO1xufSA6IGZ1bmN0aW9uIChvYmplY3QsIGtleSwgdmFsdWUpIHtcbiAgb2JqZWN0W2tleV0gPSB2YWx1ZTtcbiAgcmV0dXJuIG9iamVjdDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faGlkZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hpZGUuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_hide.js\n')},"./node_modules/core-js/library/modules/_ie8-dom-define.js":function(module,exports,__webpack_require__){eval('module.exports = !__webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__("./node_modules/core-js/library/modules/_fails.js")(function () {\n return Object.defineProperty(__webpack_require__("./node_modules/core-js/library/modules/_dom-create.js")(\'div\'), \'a\', { get: function () { return 7; } }).a != 7;\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2llOC1kb20tZGVmaW5lLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19pZTgtZG9tLWRlZmluZS5qcz80OWYwIl0sInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gIXJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgJiYgIXJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcXVpcmUoJy4vX2RvbS1jcmVhdGUnKSgnZGl2JyksICdhJywgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIDc7IH0gfSkuYSAhPSA3O1xufSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faWU4LWRvbS1kZWZpbmUuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19pZTgtZG9tLWRlZmluZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_ie8-dom-define.js\n')},"./node_modules/core-js/library/modules/_iobject.js":function(module,exports,__webpack_require__){eval("// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(\"./node_modules/core-js/library/modules/_cof.js\");\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2lvYmplY3QuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2lvYmplY3QuanM/MzE0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIGFuZCBub24tZW51bWVyYWJsZSBvbGQgVjggc3RyaW5nc1xudmFyIGNvZiA9IHJlcXVpcmUoJy4vX2NvZicpO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xubW9kdWxlLmV4cG9ydHMgPSBPYmplY3QoJ3onKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKSA/IE9iamVjdCA6IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gY29mKGl0KSA9PSAnU3RyaW5nJyA/IGl0LnNwbGl0KCcnKSA6IE9iamVjdChpdCk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2lvYmplY3QuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19pb2JqZWN0LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_iobject.js\n")},"./node_modules/core-js/library/modules/_is-object.js":function(module,exports){eval("module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2lzLW9iamVjdC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faXMtb2JqZWN0LmpzPzEyYTgiXSwic291cmNlc0NvbnRlbnQiOlsibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIHR5cGVvZiBpdCA9PT0gJ29iamVjdCcgPyBpdCAhPT0gbnVsbCA6IHR5cGVvZiBpdCA9PT0gJ2Z1bmN0aW9uJztcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faXMtb2JqZWN0LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9faXMtb2JqZWN0LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_is-object.js\n")},"./node_modules/core-js/library/modules/_object-assign.js":function(module,exports,__webpack_require__){"use strict";eval('\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys.js");\nvar gOPS = __webpack_require__("./node_modules/core-js/library/modules/_object-gops.js");\nvar pIE = __webpack_require__("./node_modules/core-js/library/modules/_object-pie.js");\nvar toObject = __webpack_require__("./node_modules/core-js/library/modules/_to-object.js");\nvar IObject = __webpack_require__("./node_modules/core-js/library/modules/_iobject.js");\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || __webpack_require__("./node_modules/core-js/library/modules/_fails.js")(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = \'abcdefghijklmnopqrst\';\n A[S] = 7;\n K.split(\'\').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join(\'\') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1hc3NpZ24uanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1hc3NpZ24uanM/NGU4ZCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG4vLyAxOS4xLjIuMSBPYmplY3QuYXNzaWduKHRhcmdldCwgc291cmNlLCAuLi4pXG52YXIgZ2V0S2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzJyk7XG52YXIgZ09QUyA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BzJyk7XG52YXIgcElFID0gcmVxdWlyZSgnLi9fb2JqZWN0LXBpZScpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgSU9iamVjdCA9IHJlcXVpcmUoJy4vX2lvYmplY3QnKTtcbnZhciAkYXNzaWduID0gT2JqZWN0LmFzc2lnbjtcblxuLy8gc2hvdWxkIHdvcmsgd2l0aCBzeW1ib2xzIGFuZCBzaG91bGQgaGF2ZSBkZXRlcm1pbmlzdGljIHByb3BlcnR5IG9yZGVyIChWOCBidWcpXG5tb2R1bGUuZXhwb3J0cyA9ICEkYXNzaWduIHx8IHJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICB2YXIgQSA9IHt9O1xuICB2YXIgQiA9IHt9O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWZcbiAgdmFyIFMgPSBTeW1ib2woKTtcbiAgdmFyIEsgPSAnYWJjZGVmZ2hpamtsbW5vcHFyc3QnO1xuICBBW1NdID0gNztcbiAgSy5zcGxpdCgnJykuZm9yRWFjaChmdW5jdGlvbiAoaykgeyBCW2tdID0gazsgfSk7XG4gIHJldHVybiAkYXNzaWduKHt9LCBBKVtTXSAhPSA3IHx8IE9iamVjdC5rZXlzKCRhc3NpZ24oe30sIEIpKS5qb2luKCcnKSAhPSBLO1xufSkgPyBmdW5jdGlvbiBhc3NpZ24odGFyZ2V0LCBzb3VyY2UpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bnVzZWQtdmFyc1xuICB2YXIgVCA9IHRvT2JqZWN0KHRhcmdldCk7XG4gIHZhciBhTGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgdmFyIGluZGV4ID0gMTtcbiAgdmFyIGdldFN5bWJvbHMgPSBnT1BTLmY7XG4gIHZhciBpc0VudW0gPSBwSUUuZjtcbiAgd2hpbGUgKGFMZW4gPiBpbmRleCkge1xuICAgIHZhciBTID0gSU9iamVjdChhcmd1bWVudHNbaW5kZXgrK10pO1xuICAgIHZhciBrZXlzID0gZ2V0U3ltYm9scyA/IGdldEtleXMoUykuY29uY2F0KGdldFN5bWJvbHMoUykpIDogZ2V0S2V5cyhTKTtcbiAgICB2YXIgbGVuZ3RoID0ga2V5cy5sZW5ndGg7XG4gICAgdmFyIGogPSAwO1xuICAgIHZhciBrZXk7XG4gICAgd2hpbGUgKGxlbmd0aCA+IGopIGlmIChpc0VudW0uY2FsbChTLCBrZXkgPSBrZXlzW2orK10pKSBUW2tleV0gPSBTW2tleV07XG4gIH0gcmV0dXJuIFQ7XG59IDogJGFzc2lnbjtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtYXNzaWduLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LWFzc2lnbi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-assign.js\n')},"./node_modules/core-js/library/modules/_object-dp.js":function(module,exports,__webpack_require__){eval("var anObject = __webpack_require__(\"./node_modules/core-js/library/modules/_an-object.js\");\nvar IE8_DOM_DEFINE = __webpack_require__(\"./node_modules/core-js/library/modules/_ie8-dom-define.js\");\nvar toPrimitive = __webpack_require__(\"./node_modules/core-js/library/modules/_to-primitive.js\");\nvar dP = Object.defineProperty;\n\nexports.f = __webpack_require__(\"./node_modules/core-js/library/modules/_descriptors.js\") ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1kcC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LWRwLmpzPzdhZjAiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi9fYW4tb2JqZWN0Jyk7XG52YXIgSUU4X0RPTV9ERUZJTkUgPSByZXF1aXJlKCcuL19pZTgtZG9tLWRlZmluZScpO1xudmFyIHRvUHJpbWl0aXZlID0gcmVxdWlyZSgnLi9fdG8tcHJpbWl0aXZlJyk7XG52YXIgZFAgPSBPYmplY3QuZGVmaW5lUHJvcGVydHk7XG5cbmV4cG9ydHMuZiA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBPYmplY3QuZGVmaW5lUHJvcGVydHkgOiBmdW5jdGlvbiBkZWZpbmVQcm9wZXJ0eShPLCBQLCBBdHRyaWJ1dGVzKSB7XG4gIGFuT2JqZWN0KE8pO1xuICBQID0gdG9QcmltaXRpdmUoUCwgdHJ1ZSk7XG4gIGFuT2JqZWN0KEF0dHJpYnV0ZXMpO1xuICBpZiAoSUU4X0RPTV9ERUZJTkUpIHRyeSB7XG4gICAgcmV0dXJuIGRQKE8sIFAsIEF0dHJpYnV0ZXMpO1xuICB9IGNhdGNoIChlKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKCdnZXQnIGluIEF0dHJpYnV0ZXMgfHwgJ3NldCcgaW4gQXR0cmlidXRlcykgdGhyb3cgVHlwZUVycm9yKCdBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCEnKTtcbiAgaWYgKCd2YWx1ZScgaW4gQXR0cmlidXRlcykgT1tQXSA9IEF0dHJpYnV0ZXMudmFsdWU7XG4gIHJldHVybiBPO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtZHAuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtZHAuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-dp.js\n")},"./node_modules/core-js/library/modules/_object-gops.js":function(module,exports){eval("exports.f = Object.getOwnPropertySymbols;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1nb3BzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtZ29wcy5qcz9kNjQ0Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMuZiA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LWdvcHMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtZ29wcy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-gops.js\n")},"./node_modules/core-js/library/modules/_object-keys-internal.js":function(module,exports,__webpack_require__){eval('var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");\nvar toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");\nvar arrayIndexOf = __webpack_require__("./node_modules/core-js/library/modules/_array-includes.js")(false);\nvar IE_PROTO = __webpack_require__("./node_modules/core-js/library/modules/_shared-key.js")(\'IE_PROTO\');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don\'t enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1rZXlzLWludGVybmFsLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3Qta2V5cy1pbnRlcm5hbC5qcz8yMWI4Il0sInNvdXJjZXNDb250ZW50IjpbInZhciBoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciB0b0lPYmplY3QgPSByZXF1aXJlKCcuL190by1pb2JqZWN0Jyk7XG52YXIgYXJyYXlJbmRleE9mID0gcmVxdWlyZSgnLi9fYXJyYXktaW5jbHVkZXMnKShmYWxzZSk7XG52YXIgSUVfUFJPVE8gPSByZXF1aXJlKCcuL19zaGFyZWQta2V5JykoJ0lFX1BST1RPJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9iamVjdCwgbmFtZXMpIHtcbiAgdmFyIE8gPSB0b0lPYmplY3Qob2JqZWN0KTtcbiAgdmFyIGkgPSAwO1xuICB2YXIgcmVzdWx0ID0gW107XG4gIHZhciBrZXk7XG4gIGZvciAoa2V5IGluIE8pIGlmIChrZXkgIT0gSUVfUFJPVE8pIGhhcyhPLCBrZXkpICYmIHJlc3VsdC5wdXNoKGtleSk7XG4gIC8vIERvbid0IGVudW0gYnVnICYgaGlkZGVuIGtleXNcbiAgd2hpbGUgKG5hbWVzLmxlbmd0aCA+IGkpIGlmIChoYXMoTywga2V5ID0gbmFtZXNbaSsrXSkpIHtcbiAgICB+YXJyYXlJbmRleE9mKHJlc3VsdCwga2V5KSB8fCByZXN1bHQucHVzaChrZXkpO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1rZXlzLWludGVybmFsLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LWtleXMtaW50ZXJuYWwuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-keys-internal.js\n')},"./node_modules/core-js/library/modules/_object-keys.js":function(module,exports,__webpack_require__){eval('// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys-internal.js");\nvar enumBugKeys = __webpack_require__("./node_modules/core-js/library/modules/_enum-bug-keys.js");\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1rZXlzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3Qta2V5cy5qcz85NjRiIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIDE5LjEuMi4xNCAvIDE1LjIuMy4xNCBPYmplY3Qua2V5cyhPKVxudmFyICRrZXlzID0gcmVxdWlyZSgnLi9fb2JqZWN0LWtleXMtaW50ZXJuYWwnKTtcbnZhciBlbnVtQnVnS2V5cyA9IHJlcXVpcmUoJy4vX2VudW0tYnVnLWtleXMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3Qua2V5cyB8fCBmdW5jdGlvbiBrZXlzKE8pIHtcbiAgcmV0dXJuICRrZXlzKE8sIGVudW1CdWdLZXlzKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LWtleXMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3Qta2V5cy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-keys.js\n')},"./node_modules/core-js/library/modules/_object-pie.js":function(module,exports){eval("exports.f = {}.propertyIsEnumerable;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1waWUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1waWUuanM/MzY5MiJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzLmYgPSB7fS5wcm9wZXJ0eUlzRW51bWVyYWJsZTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19vYmplY3QtcGllLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fb2JqZWN0LXBpZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_object-pie.js\n")},"./node_modules/core-js/library/modules/_property-desc.js":function(module,exports){eval("module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanM/NWZjMCJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19wcm9wZXJ0eS1kZXNjLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_property-desc.js\n")},"./node_modules/core-js/library/modules/_shared-key.js":function(module,exports,__webpack_require__){eval('var shared = __webpack_require__("./node_modules/core-js/library/modules/_shared.js")(\'keys\');\nvar uid = __webpack_require__("./node_modules/core-js/library/modules/_uid.js");\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3NoYXJlZC1rZXkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3NoYXJlZC1rZXkuanM/NmIxZCJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgc2hhcmVkID0gcmVxdWlyZSgnLi9fc2hhcmVkJykoJ2tleXMnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuL191aWQnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gc2hhcmVkW2tleV0gfHwgKHNoYXJlZFtrZXldID0gdWlkKGtleSkpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19zaGFyZWQta2V5LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fc2hhcmVkLWtleS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_shared-key.js\n')},"./node_modules/core-js/library/modules/_shared.js":function(module,exports,__webpack_require__){eval("var global = __webpack_require__(\"./node_modules/core-js/library/modules/_global.js\");\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function (key) {\n return store[key] || (store[key] = {});\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3NoYXJlZC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fc2hhcmVkLmpzPzdiYzAiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIFNIQVJFRCA9ICdfX2NvcmUtanNfc2hhcmVkX18nO1xudmFyIHN0b3JlID0gZ2xvYmFsW1NIQVJFRF0gfHwgKGdsb2JhbFtTSEFSRURdID0ge30pO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoa2V5KSB7XG4gIHJldHVybiBzdG9yZVtrZXldIHx8IChzdG9yZVtrZXldID0ge30pO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19zaGFyZWQuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19zaGFyZWQuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_shared.js\n")},"./node_modules/core-js/library/modules/_to-absolute-index.js":function(module,exports,__webpack_require__){eval('var toInteger = __webpack_require__("./node_modules/core-js/library/modules/_to-integer.js");\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWFic29sdXRlLWluZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL190by1hYnNvbHV0ZS1pbmRleC5qcz83ZTQwIl0sInNvdXJjZXNDb250ZW50IjpbInZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuL190by1pbnRlZ2VyJyk7XG52YXIgbWF4ID0gTWF0aC5tYXg7XG52YXIgbWluID0gTWF0aC5taW47XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpbmRleCwgbGVuZ3RoKSB7XG4gIGluZGV4ID0gdG9JbnRlZ2VyKGluZGV4KTtcbiAgcmV0dXJuIGluZGV4IDwgMCA/IG1heChpbmRleCArIGxlbmd0aCwgMCkgOiBtaW4oaW5kZXgsIGxlbmd0aCk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWFic29sdXRlLWluZGV4LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tYWJzb2x1dGUtaW5kZXguanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-absolute-index.js\n')},"./node_modules/core-js/library/modules/_to-integer.js":function(module,exports){eval("// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWludGVnZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWludGVnZXIuanM/NTJlMSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyA3LjEuNCBUb0ludGVnZXJcbnZhciBjZWlsID0gTWF0aC5jZWlsO1xudmFyIGZsb29yID0gTWF0aC5mbG9vcjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpc05hTihpdCA9ICtpdCkgPyAwIDogKGl0ID4gMCA/IGZsb29yIDogY2VpbCkoaXQpO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL190by1pbnRlZ2VyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8taW50ZWdlci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-integer.js\n")},"./node_modules/core-js/library/modules/_to-iobject.js":function(module,exports,__webpack_require__){eval('// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__("./node_modules/core-js/library/modules/_iobject.js");\nvar defined = __webpack_require__("./node_modules/core-js/library/modules/_defined.js");\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWlvYmplY3QuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWlvYmplY3QuanM/NGRjNCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0byBpbmRleGVkIG9iamVjdCwgdG9PYmplY3Qgd2l0aCBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIHN0cmluZ3NcbnZhciBJT2JqZWN0ID0gcmVxdWlyZSgnLi9faW9iamVjdCcpO1xudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gSU9iamVjdChkZWZpbmVkKGl0KSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWlvYmplY3QuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL190by1pb2JqZWN0LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-iobject.js\n')},"./node_modules/core-js/library/modules/_to-length.js":function(module,exports,__webpack_require__){eval('// 7.1.15 ToLength\nvar toInteger = __webpack_require__("./node_modules/core-js/library/modules/_to-integer.js");\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLWxlbmd0aC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tbGVuZ3RoLmpzPzQxMTEiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gNy4xLjE1IFRvTGVuZ3RoXG52YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIG1pbiA9IE1hdGgubWluO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGl0ID4gMCA/IG1pbih0b0ludGVnZXIoaXQpLCAweDFmZmZmZmZmZmZmZmZmKSA6IDA7IC8vIHBvdygyLCA1MykgLSAxID09IDkwMDcxOTkyNTQ3NDA5OTFcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tbGVuZ3RoLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tbGVuZ3RoLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-length.js\n')},"./node_modules/core-js/library/modules/_to-object.js":function(module,exports,__webpack_require__){eval('// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__("./node_modules/core-js/library/modules/_defined.js");\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLW9iamVjdC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tb2JqZWN0LmpzP2IwMWQiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gNy4xLjEzIFRvT2JqZWN0KGFyZ3VtZW50KVxudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gT2JqZWN0KGRlZmluZWQoaXQpKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tb2JqZWN0LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tb2JqZWN0LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-object.js\n')},"./node_modules/core-js/library/modules/_to-primitive.js":function(module,exports,__webpack_require__){eval("// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(\"./node_modules/core-js/library/modules/_is-object.js\");\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLXByaW1pdGl2ZS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdG8tcHJpbWl0aXZlLmpzPzMyNjMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gNy4xLjEgVG9QcmltaXRpdmUoaW5wdXQgWywgUHJlZmVycmVkVHlwZV0pXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbi8vIGluc3RlYWQgb2YgdGhlIEVTNiBzcGVjIHZlcnNpb24sIHdlIGRpZG4ndCBpbXBsZW1lbnQgQEB0b1ByaW1pdGl2ZSBjYXNlXG4vLyBhbmQgdGhlIHNlY29uZCBhcmd1bWVudCAtIGZsYWcgLSBwcmVmZXJyZWQgdHlwZSBpcyBhIHN0cmluZ1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFMpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHJldHVybiBpdDtcbiAgdmFyIGZuLCB2YWw7XG4gIGlmIChTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAodHlwZW9mIChmbiA9IGl0LnZhbHVlT2YpID09ICdmdW5jdGlvbicgJiYgIWlzT2JqZWN0KHZhbCA9IGZuLmNhbGwoaXQpKSkgcmV0dXJuIHZhbDtcbiAgaWYgKCFTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWVcIik7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLXByaW1pdGl2ZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3RvLXByaW1pdGl2ZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_to-primitive.js\n")},"./node_modules/core-js/library/modules/_uid.js":function(module,exports){eval("var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3VpZC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdWlkLmpzP2RjNGEiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGlkID0gMDtcbnZhciBweCA9IE1hdGgucmFuZG9tKCk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgcmV0dXJuICdTeW1ib2woJy5jb25jYXQoa2V5ID09PSB1bmRlZmluZWQgPyAnJyA6IGtleSwgJylfJywgKCsraWQgKyBweCkudG9TdHJpbmcoMzYpKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdWlkLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fdWlkLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/_uid.js\n")},"./node_modules/core-js/library/modules/es6.object.assign.js":function(module,exports,__webpack_require__){eval('// 19.1.3.1 Object.assign(target, source)\nvar $export = __webpack_require__("./node_modules/core-js/library/modules/_export.js");\n\n$export($export.S + $export.F, \'Object\', { assign: __webpack_require__("./node_modules/core-js/library/modules/_object-assign.js") });\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvZXM2Lm9iamVjdC5hc3NpZ24uanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvZXM2Lm9iamVjdC5hc3NpZ24uanM/NDc4YyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAxOS4xLjMuMSBPYmplY3QuYXNzaWduKHRhcmdldCwgc291cmNlKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYsICdPYmplY3QnLCB7IGFzc2lnbjogcmVxdWlyZSgnLi9fb2JqZWN0LWFzc2lnbicpIH0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvZXM2Lm9iamVjdC5hc3NpZ24uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL2VzNi5vYmplY3QuYXNzaWduLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/core-js/library/modules/es6.object.assign.js\n')},"./node_modules/vue-loader/lib/component-normalizer.js":function(module,exports){eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanM/NTU0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBnbG9iYWxzIF9fVlVFX1NTUl9DT05URVhUX18gKi9cblxuLy8gSU1QT1JUQU5UOiBEbyBOT1QgdXNlIEVTMjAxNSBmZWF0dXJlcyBpbiB0aGlzIGZpbGUuXG4vLyBUaGlzIG1vZHVsZSBpcyBhIHJ1bnRpbWUgdXRpbGl0eSBmb3IgY2xlYW5lciBjb21wb25lbnQgbW9kdWxlIG91dHB1dCBhbmQgd2lsbFxuLy8gYmUgaW5jbHVkZWQgaW4gdGhlIGZpbmFsIHdlYnBhY2sgdXNlciBidW5kbGUuXG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50IChcbiAgcmF3U2NyaXB0RXhwb3J0cyxcbiAgY29tcGlsZWRUZW1wbGF0ZSxcbiAgZnVuY3Rpb25hbFRlbXBsYXRlLFxuICBpbmplY3RTdHlsZXMsXG4gIHNjb3BlSWQsXG4gIG1vZHVsZUlkZW50aWZpZXIgLyogc2VydmVyIG9ubHkgKi9cbikge1xuICB2YXIgZXNNb2R1bGVcbiAgdmFyIHNjcmlwdEV4cG9ydHMgPSByYXdTY3JpcHRFeHBvcnRzID0gcmF3U2NyaXB0RXhwb3J0cyB8fCB7fVxuXG4gIC8vIEVTNiBtb2R1bGVzIGludGVyb3BcbiAgdmFyIHR5cGUgPSB0eXBlb2YgcmF3U2NyaXB0RXhwb3J0cy5kZWZhdWx0XG4gIGlmICh0eXBlID09PSAnb2JqZWN0JyB8fCB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZXNNb2R1bGUgPSByYXdTY3JpcHRFeHBvcnRzXG4gICAgc2NyaXB0RXhwb3J0cyA9IHJhd1NjcmlwdEV4cG9ydHMuZGVmYXVsdFxuICB9XG5cbiAgLy8gVnVlLmV4dGVuZCBjb25zdHJ1Y3RvciBleHBvcnQgaW50ZXJvcFxuICB2YXIgb3B0aW9ucyA9IHR5cGVvZiBzY3JpcHRFeHBvcnRzID09PSAnZnVuY3Rpb24nXG4gICAgPyBzY3JpcHRFeHBvcnRzLm9wdGlvbnNcbiAgICA6IHNjcmlwdEV4cG9ydHNcblxuICAvLyByZW5kZXIgZnVuY3Rpb25zXG4gIGlmIChjb21waWxlZFRlbXBsYXRlKSB7XG4gICAgb3B0aW9ucy5yZW5kZXIgPSBjb21waWxlZFRlbXBsYXRlLnJlbmRlclxuICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gY29tcGlsZWRUZW1wbGF0ZS5zdGF0aWNSZW5kZXJGbnNcbiAgICBvcHRpb25zLl9jb21waWxlZCA9IHRydWVcbiAgfVxuXG4gIC8vIGZ1bmN0aW9uYWwgdGVtcGxhdGVcbiAgaWYgKGZ1bmN0aW9uYWxUZW1wbGF0ZSkge1xuICAgIG9wdGlvbnMuZnVuY3Rpb25hbCA9IHRydWVcbiAgfVxuXG4gIC8vIHNjb3BlZElkXG4gIGlmIChzY29wZUlkKSB7XG4gICAgb3B0aW9ucy5fc2NvcGVJZCA9IHNjb3BlSWRcbiAgfVxuXG4gIHZhciBob29rXG4gIGlmIChtb2R1bGVJZGVudGlmaWVyKSB7IC8vIHNlcnZlciBidWlsZFxuICAgIGhvb2sgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgICAgLy8gMi4zIGluamVjdGlvblxuICAgICAgY29udGV4dCA9XG4gICAgICAgIGNvbnRleHQgfHwgLy8gY2FjaGVkIGNhbGxcbiAgICAgICAgKHRoaXMuJHZub2RlICYmIHRoaXMuJHZub2RlLnNzckNvbnRleHQpIHx8IC8vIHN0YXRlZnVsXG4gICAgICAgICh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC4kdm5vZGUgJiYgdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpIC8vIGZ1bmN0aW9uYWxcbiAgICAgIC8vIDIuMiB3aXRoIHJ1bkluTmV3Q29udGV4dDogdHJ1ZVxuICAgICAgaWYgKCFjb250ZXh0ICYmIHR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9fICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb250ZXh0ID0gX19WVUVfU1NSX0NPTlRFWFRfX1xuICAgICAgfVxuICAgICAgLy8gaW5qZWN0IGNvbXBvbmVudCBzdHlsZXNcbiAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwodGhpcywgY29udGV4dClcbiAgICAgIH1cbiAgICAgIC8vIHJlZ2lzdGVyIGNvbXBvbmVudCBtb2R1bGUgaWRlbnRpZmllciBmb3IgYXN5bmMgY2h1bmsgaW5mZXJyZW5jZVxuICAgICAgaWYgKGNvbnRleHQgJiYgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMpIHtcbiAgICAgICAgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG1vZHVsZUlkZW50aWZpZXIpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIHVzZWQgYnkgc3NyIGluIGNhc2UgY29tcG9uZW50IGlzIGNhY2hlZCBhbmQgYmVmb3JlQ3JlYXRlXG4gICAgLy8gbmV2ZXIgZ2V0cyBjYWxsZWRcbiAgICBvcHRpb25zLl9zc3JSZWdpc3RlciA9IGhvb2tcbiAgfSBlbHNlIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICBob29rID0gaW5qZWN0U3R5bGVzXG4gIH1cblxuICBpZiAoaG9vaykge1xuICAgIHZhciBmdW5jdGlvbmFsID0gb3B0aW9ucy5mdW5jdGlvbmFsXG4gICAgdmFyIGV4aXN0aW5nID0gZnVuY3Rpb25hbFxuICAgICAgPyBvcHRpb25zLnJlbmRlclxuICAgICAgOiBvcHRpb25zLmJlZm9yZUNyZWF0ZVxuXG4gICAgaWYgKCFmdW5jdGlvbmFsKSB7XG4gICAgICAvLyBpbmplY3QgY29tcG9uZW50IHJlZ2lzdHJhdGlvbiBhcyBiZWZvcmVDcmVhdGUgaG9va1xuICAgICAgb3B0aW9ucy5iZWZvcmVDcmVhdGUgPSBleGlzdGluZ1xuICAgICAgICA/IFtdLmNvbmNhdChleGlzdGluZywgaG9vaylcbiAgICAgICAgOiBbaG9va11cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gZm9yIHRlbXBsYXRlLW9ubHkgaG90LXJlbG9hZCBiZWNhdXNlIGluIHRoYXQgY2FzZSB0aGUgcmVuZGVyIGZuIGRvZXNuJ3RcbiAgICAgIC8vIGdvIHRocm91Z2ggdGhlIG5vcm1hbGl6ZXJcbiAgICAgIG9wdGlvbnMuX2luamVjdFN0eWxlcyA9IGhvb2tcbiAgICAgIC8vIHJlZ2lzdGVyIGZvciBmdW5jdGlvYWwgY29tcG9uZW50IGluIHZ1ZSBmaWxlXG4gICAgICBvcHRpb25zLnJlbmRlciA9IGZ1bmN0aW9uIHJlbmRlcldpdGhTdHlsZUluamVjdGlvbiAoaCwgY29udGV4dCkge1xuICAgICAgICBob29rLmNhbGwoY29udGV4dClcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nKGgsIGNvbnRleHQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlc01vZHVsZTogZXNNb2R1bGUsXG4gICAgZXhwb3J0czogc2NyaXB0RXhwb3J0cyxcbiAgICBvcHRpb25zOiBvcHRpb25zXG4gIH1cbn1cblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2NvbXBvbmVudC1ub3JtYWxpemVyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/component-normalizer.js\n")},0:function(e,n,c){e.exports=c("vue")},vue:function(module,exports){eval("module.exports = Vue;//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL2V4dGVybmFsIFwiVnVlXCI/NTQ4YSJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IFZ1ZTtcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyBleHRlcm5hbCBcIlZ1ZVwiXG4vLyBtb2R1bGUgaWQgPSB2dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///vue\n")}},[0]); -------------------------------------------------------------------------------- /examples/src/App.vue: -------------------------------------------------------------------------------- 1 | 59 | 60 | 265 | 266 | -------------------------------------------------------------------------------- /examples/src/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import App from './App' 3 | import iView from 'iview' 4 | import 'iview/dist/styles/iview.css' 5 | 6 | Vue.use(iView) 7 | 8 | Vue.config.productionTip = false 9 | 10 | /* eslint-disable no-new */ 11 | new Vue({ 12 | el: '#app-container', 13 | components: { App }, 14 | template: '' 15 | }) -------------------------------------------------------------------------------- /examples/src/index.tpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | hello iview form 8 | 9 | 10 | 11 |
12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | iview-form 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /lib/iview-form.js: -------------------------------------------------------------------------------- 1 | (function webpackUniversalModuleDefinition(root, factory) { 2 | if(typeof exports === 'object' && typeof module === 'object') 3 | module.exports = factory(); 4 | else if(typeof define === 'function' && define.amd) 5 | define([], factory); 6 | else if(typeof exports === 'object') 7 | exports["iview-form"] = factory(); 8 | else 9 | root["iview-form"] = factory(); 10 | })(typeof self !== 'undefined' ? self : this, function() { 11 | return /******/ (function(modules) { // webpackBootstrap 12 | /******/ // The module cache 13 | /******/ var installedModules = {}; 14 | /******/ 15 | /******/ // The require function 16 | /******/ function __webpack_require__(moduleId) { 17 | /******/ 18 | /******/ // Check if module is in cache 19 | /******/ if(installedModules[moduleId]) { 20 | /******/ return installedModules[moduleId].exports; 21 | /******/ } 22 | /******/ // Create a new module (and put it into the cache) 23 | /******/ var module = installedModules[moduleId] = { 24 | /******/ i: moduleId, 25 | /******/ l: false, 26 | /******/ exports: {} 27 | /******/ }; 28 | /******/ 29 | /******/ // Execute the module function 30 | /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 31 | /******/ 32 | /******/ // Flag the module as loaded 33 | /******/ module.l = true; 34 | /******/ 35 | /******/ // Return the exports of the module 36 | /******/ return module.exports; 37 | /******/ } 38 | /******/ 39 | /******/ 40 | /******/ // expose the modules object (__webpack_modules__) 41 | /******/ __webpack_require__.m = modules; 42 | /******/ 43 | /******/ // expose the module cache 44 | /******/ __webpack_require__.c = installedModules; 45 | /******/ 46 | /******/ // define getter function for harmony exports 47 | /******/ __webpack_require__.d = function(exports, name, getter) { 48 | /******/ if(!__webpack_require__.o(exports, name)) { 49 | /******/ Object.defineProperty(exports, name, { 50 | /******/ configurable: false, 51 | /******/ enumerable: true, 52 | /******/ get: getter 53 | /******/ }); 54 | /******/ } 55 | /******/ }; 56 | /******/ 57 | /******/ // getDefaultExport function for compatibility with non-harmony modules 58 | /******/ __webpack_require__.n = function(module) { 59 | /******/ var getter = module && module.__esModule ? 60 | /******/ function getDefault() { return module['default']; } : 61 | /******/ function getModuleExports() { return module; }; 62 | /******/ __webpack_require__.d(getter, 'a', getter); 63 | /******/ return getter; 64 | /******/ }; 65 | /******/ 66 | /******/ // Object.prototype.hasOwnProperty.call 67 | /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; 68 | /******/ 69 | /******/ // __webpack_public_path__ 70 | /******/ __webpack_require__.p = ""; 71 | /******/ 72 | /******/ // Load entry module and return exports 73 | /******/ return __webpack_require__(__webpack_require__.s = 11); 74 | /******/ }) 75 | /************************************************************************/ 76 | /******/ ([ 77 | /* 0 */ 78 | /***/ (function(module, exports) { 79 | 80 | var core = module.exports = { version: '2.5.3' }; 81 | if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef 82 | 83 | 84 | /***/ }), 85 | /* 1 */ 86 | /***/ (function(module, exports) { 87 | 88 | // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 89 | var global = module.exports = typeof window != 'undefined' && window.Math == Math 90 | ? window : typeof self != 'undefined' && self.Math == Math ? self 91 | // eslint-disable-next-line no-new-func 92 | : Function('return this')(); 93 | if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef 94 | 95 | 96 | /***/ }), 97 | /* 2 */ 98 | /***/ (function(module, exports) { 99 | 100 | module.exports = function (it) { 101 | return typeof it === 'object' ? it !== null : typeof it === 'function'; 102 | }; 103 | 104 | 105 | /***/ }), 106 | /* 3 */ 107 | /***/ (function(module, exports, __webpack_require__) { 108 | 109 | // Thank's IE8 for his funny defineProperty 110 | module.exports = !__webpack_require__(4)(function () { 111 | return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; 112 | }); 113 | 114 | 115 | /***/ }), 116 | /* 4 */ 117 | /***/ (function(module, exports) { 118 | 119 | module.exports = function (exec) { 120 | try { 121 | return !!exec(); 122 | } catch (e) { 123 | return true; 124 | } 125 | }; 126 | 127 | 128 | /***/ }), 129 | /* 5 */ 130 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 131 | 132 | "use strict"; 133 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__ = __webpack_require__(15); 134 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__); 135 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__ = __webpack_require__(6); 136 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__); 137 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__ = __webpack_require__(44); 138 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends__); 139 | 140 | 141 | 142 | 143 | var getPrefix = function getPrefix(tag, lib) { 144 | var iviewMap = { 145 | 'form': 'i-form', 146 | 'form-item': 'form-item', 147 | 'input': 'i-input', 148 | 'select': 'i-select', 149 | 'option': 'i-option', 150 | 'checkbox': 'checkbox', 151 | 'checkbox-group': 'checkbox-group', 152 | 'date-picker': 'date-picker', 153 | 'time-picker': 'time-picker', 154 | 'radio': 'radio', 155 | 'radio-group': 'radio-group', 156 | 'switch': 'i-switch', 157 | 'slider': 'slider', 158 | 'button': 'i-button', 159 | 'row': 'row', 160 | 'col': 'i-col', 161 | 'input-number': 'input-number', 162 | 'cascader': 'cascader' 163 | }; 164 | var elementMap = { 165 | 'form': 'el-form', 166 | 'form-item': 'el-form-item', 167 | 'input': 'el-input', 168 | 'select': 'el-select', 169 | 'option': 'el-option', 170 | 'checkbox': 'el-checkbox', 171 | 'checkbox-group': 'el-checkbox-group', 172 | 'date-picker': 'el-date-picker', 173 | 'time-picker': 'el-time-picker', 174 | 'radio': 'el-radio', 175 | 'radio-group': 'el-radio-group', 176 | 'switch': 'el-switch', 177 | 'slider': 'el-slider', 178 | 'button': 'el-button', 179 | 'row': 'el-row', 180 | 'col': 'el-col', 181 | 'input-number': 'el-input-number', 182 | 'cascader': 'el-cascader' 183 | }; 184 | 185 | return lib === 'iview' ? iviewMap[tag] : elementMap[tag]; 186 | }; 187 | 188 | /* harmony default export */ __webpack_exports__["a"] = ({ 189 | name: 'iview-form', 190 | props: { 191 | // 是否启用 grid 布局 192 | grid: { 193 | type: [Array, Number] 194 | }, 195 | // grid 间距 196 | gutter: { 197 | type: Number 198 | }, 199 | // formItem 项 200 | formList: { 201 | type: Array, 202 | default: function _default() { 203 | return []; 204 | } 205 | }, 206 | // 是否显示整个控制按钮 207 | notCtrl: { 208 | type: Boolean, 209 | default: false 210 | }, 211 | // 是否开启 input 标签默认 212 | enterSubmit: { 213 | type: Boolean, 214 | default: false 215 | }, 216 | // 默认 ui 库 217 | lib: { 218 | type: String, 219 | default: 'iview' 220 | }, 221 | // 默认标签宽度 222 | 'label-width': { 223 | type: Number, 224 | default: 100 225 | }, 226 | // 默认内容宽度 227 | 'content-width': { 228 | type: [Number, String], 229 | default: 240 230 | }, 231 | // submit 按钮文本 232 | submitText: { 233 | type: String, 234 | default: '提交' 235 | }, 236 | // 重置按钮文本 237 | resetText: { 238 | type: String, 239 | default: '重置' 240 | }, 241 | // 是否拥有 提交 按钮 242 | hasSubmitBtn: { 243 | type: Boolean, 244 | default: true 245 | }, 246 | // 是否拥有 重置 按钮 247 | hasResetBtn: { 248 | type: Boolean, 249 | default: true 250 | }, 251 | // 原生 form 标签上的 props 252 | options: { 253 | type: Object 254 | }, 255 | // 开启全局 clearable 256 | clearable: { 257 | type: Boolean, 258 | default: true 259 | }, 260 | // 文本框默认字符个数 261 | maxlength: { 262 | type: [Number, String], 263 | default: 20 264 | }, 265 | // 多行文本框默认字符个数 266 | textareaMaxlength: { 267 | type: Number, 268 | default: 256 269 | }, 270 | // 是否全局 disabled 271 | disabled: { 272 | type: Boolean, 273 | default: false 274 | } 275 | }, 276 | data: function data() { 277 | return { 278 | form: this.initForm() 279 | }; 280 | }, 281 | render: function render(h) { 282 | return h(getPrefix('form', this.lib), { 283 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 284 | model: this.form, 285 | rules: this.rules, 286 | 'label-width': this.lib === 'iview' ? this['labelWidth'] : this['labelWidth'] + 'px' 287 | }, this.options), 288 | ref: 'form', 289 | nativeOn: { 290 | submit: function submit(e) { 291 | e.preventDefault(); 292 | e.stopPropagation(); 293 | } 294 | } 295 | }, [this.$slots.prepend, this.renderFormList(h), !this.notCtrl && this.renderSubmit(h), this.$slots.default]); 296 | }, 297 | 298 | computed: { 299 | rules: function rules() { 300 | var rules = {}; 301 | this.formList.forEach(function (item) { 302 | if (item.rule !== undefined) { 303 | rules[item.key] = item.rule; 304 | } 305 | }); 306 | return rules; 307 | }, 308 | gridNum: function gridNum() { 309 | return this.grid; 310 | } 311 | }, 312 | methods: { 313 | // 默认值 314 | initForm: function initForm() { 315 | var form = {}; 316 | var map = { 317 | 'input': '', 318 | 'select': null, 319 | 'checkbox': false, 320 | 'checkbox-group': [], 321 | 'date': new Date(), 322 | 'datetime': new Date(), 323 | 'daterange': [], 324 | 'datetimerange': [], 325 | 'time': '', 326 | 'radio': false, 327 | 'radio-group': '', 328 | 'slider': 0, 329 | 'switch': false, 330 | 'input-number': 0, 331 | 'cascader': [] 332 | }; 333 | this.formList.forEach(function (item) { 334 | var defaultValue = ''; 335 | defaultValue = item.defaultValue !== undefined ? item.defaultValue : map[item.type]; 336 | if (item.key) { 337 | form[item.key] = defaultValue; 338 | } 339 | }); 340 | return form; 341 | }, 342 | getHypeScript: function getHypeScript() { 343 | return this.$parent.$createElement; 344 | }, 345 | renderFormList: function renderFormList(h) { 346 | var list = []; 347 | var grid = this.grid; 348 | // 处理 grid 为不同值时 349 | if (typeof grid === 'number') { 350 | list = this.getFormListByNumber(h); 351 | } else if (Array.isArray(grid)) { 352 | if (grid.every(function (item) { 353 | return !Array.isArray(item); 354 | })) { 355 | list = this.getFormListByArray(h); 356 | } else { 357 | list = this.getFormListByGrid(h); 358 | } 359 | } else { 360 | list = this.getFormList(h); 361 | } 362 | return list; 363 | }, 364 | getFormList: function getFormList(h) { 365 | var _this = this; 366 | 367 | return this.formList.map(function (item) { 368 | return _this.getFormItem(h, item, _this.getContent(h, item)); 369 | }); 370 | }, 371 | 372 | // 当 grid 为数字时 373 | getFormListByNumber: function getFormListByNumber(h) { 374 | var list = []; 375 | // 过滤 grid 376 | var grid = ~~Math.abs(this.grid); 377 | if (grid < 1) grid = 1; 378 | 379 | for (var i = 0; i < this.formList.length; i += grid) { 380 | var childrenList = []; 381 | // 获取当前分成几列 grid 为 number 时 382 | for (var j = 0; j < grid && i + j < this.formList.length; j++) { 383 | var children = this.formList[i + j]; 384 | if (!children) break; 385 | var childrenItem = this.getFormItem(h, children, this.getContent(h, children)); 386 | var childrenParts = h(getPrefix('col', this.lib), { 387 | props: { 388 | span: 24 / grid 389 | } 390 | }, [childrenItem]); 391 | childrenList.push(childrenParts); 392 | } 393 | var row = this.getRow(h, childrenList); 394 | list.push(row); 395 | } 396 | return list; 397 | }, 398 | 399 | // 当 grid 为一维数组时 400 | getFormListByArray: function getFormListByArray(h) { 401 | var list = []; 402 | var gridIndex = 0; 403 | for (var i = 0; i < this.formList.length;) { 404 | var childrenList = []; 405 | var grid = this.grid[gridIndex]; 406 | for (var j = 0; j < grid; j++) { 407 | var children = this.formList[i + j]; 408 | if (!children) break; 409 | var childrenItem = this.getFormItem(h, children, this.getContent(h, children)); 410 | var childrenParts = h(getPrefix('col', this.lib), { 411 | props: { 412 | span: 24 / grid 413 | } 414 | }, [childrenItem]); 415 | childrenList.push(childrenParts); 416 | } 417 | var row = this.getRow(h, childrenList); 418 | list.push(row); 419 | gridIndex += 1; 420 | i += grid; 421 | } 422 | return list; 423 | }, 424 | 425 | // 当 grid 为二维数组 426 | getFormListByGrid: function getFormListByGrid(h) { 427 | var list = []; 428 | var gridIndex = 0; 429 | for (var i = 0; i < this.formList.length;) { 430 | var childrenList = []; 431 | var grid = this.grid[gridIndex]; 432 | if (!grid) grid = [1]; 433 | for (var j = 0; j < grid.length; j++) { 434 | var children = this.formList[i + j]; 435 | if (!children) break; 436 | var childrenItem = this.getFormItem(h, children, this.getContent(h, children)); 437 | var childrenParts = h(getPrefix('col', this.lib), { 438 | props: { 439 | span: grid[j] 440 | } 441 | }, [childrenItem]); 442 | childrenList.push(childrenParts); 443 | } 444 | var row = this.getRow(h, childrenList); 445 | list.push(row); 446 | gridIndex += 1; 447 | i += grid.length; 448 | } 449 | return list; 450 | }, 451 | getRow: function getRow(h, childrenList) { 452 | return h(getPrefix('row', this.lib), { 453 | props: { 454 | gutter: this.gutter 455 | } 456 | }, childrenList); 457 | }, 458 | getContent: function getContent(h, item) { 459 | var content = void 0; 460 | switch (item.type) { 461 | case 'input': 462 | content = this.renderInput(h, item); 463 | break; 464 | case 'select': 465 | content = this.renderSelect(h, item); 466 | break; 467 | case 'checkbox': 468 | content = this.renderCheckbox(h, item); 469 | break; 470 | case 'checkbox-group': 471 | content = this.renderCheckboxGroup(h, item); 472 | break; 473 | case 'date': 474 | content = this.renderDatePicker(h, item); 475 | break; 476 | case 'datetime': 477 | content = this.renderDatePicker(h, item); 478 | break; 479 | case 'daterange': 480 | content = this.renderDateRange(h, item); 481 | break; 482 | case 'datetimerange': 483 | content = this.renderDateRange(h, item); 484 | break; 485 | case 'time': 486 | content = this.renderTimePicker(h, item); 487 | break; 488 | case 'radio': 489 | content = this.renderRadio(h, item); 490 | break; 491 | case 'radio-group': 492 | content = this.renderRadioGroup(h, item); 493 | break; 494 | case 'switch': 495 | content = this.renderSwitch(h, item); 496 | break; 497 | case 'slider': 498 | content = this.renderSlider(h, item); 499 | break; 500 | case 'input-number': 501 | content = this.renderInputNumber(h, item); 502 | break; 503 | case 'cascader': 504 | content = this.renderCascader(h, item); 505 | break; 506 | default: 507 | if (typeof item.renderContent === 'function') { 508 | content = item.renderContent(this.getHypeScript(), item, this.form); 509 | } 510 | break; 511 | } 512 | return content; 513 | }, 514 | getFormItem: function getFormItem(h, item, content) { 515 | if (item.isShow === false) return;else if (typeof item.isShow === 'function') { 516 | if (item.isShow(this.form, item) === false) { 517 | return; 518 | } 519 | } 520 | if (typeof item.render === 'function') { 521 | return item.render(this.getHypeScript(), item, this.form); 522 | } else { 523 | var settings = { 524 | props: { 525 | prop: item.key 526 | } 527 | }; 528 | return h(getPrefix('form-item', this.lib), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default()(settings, item.settings), [this.renderTitle(h, item, this.form), content]); 529 | } 530 | }, 531 | 532 | // 渲染 title 533 | renderTitle: function renderTitle(h, item) { 534 | return h( 535 | 'span', 536 | { slot: 'label' }, 537 | [item.required === true ? h( 538 | 'span', 539 | { style: 'color: font' }, 540 | ['*'] 541 | ) : '', typeof item.renderTitle === 'function' ? h('span', [item.renderTitle(h, item, this.form)]) : h('span', [item.title])] 542 | ); 543 | }, 544 | 545 | // 渲染提交 按钮 546 | renderSubmit: function renderSubmit(h) { 547 | var btns = []; 548 | if (this.hasSubmitBtn) { 549 | btns.push(h(getPrefix('button', this.lib), { 550 | props: { 551 | type: 'primary' 552 | }, 553 | on: { 554 | click: this.submit 555 | } 556 | }, this.submitText)); 557 | } 558 | if (this.hasResetBtn) { 559 | btns.push(h(getPrefix('button', this.lib), { 560 | style: { 561 | 'margin-left': '10px' 562 | }, 563 | on: { 564 | click: this.reset 565 | } 566 | }, this.resetText)); 567 | } 568 | 569 | return h(getPrefix('form-item', this.lib), btns); 570 | }, 571 | 572 | // 渲染 input 573 | renderInput: function renderInput(h, item) { 574 | var _this2 = this; 575 | 576 | var props = item.props || {}; 577 | var attrs = item.attrs || {}; 578 | // 让 element-ui 在 props 里也可以设置 placeholder 579 | if (props.placeholder) { 580 | attrs.placeholder = props.placeholder; 581 | } 582 | 583 | // 让 element-ui 在 props 里也可以设置 maxlength 584 | if (props.type !== 'textarea') { 585 | attrs.maxlength = +props.maxlength || +this.maxlength; 586 | } else { 587 | // textarea 长度 588 | attrs.maxlength = +props.maxlength || +this.textareaMaxlength; 589 | } 590 | 591 | item.attrs = attrs; 592 | 593 | var tag = { 594 | h: h, 595 | item: item, 596 | tagName: getPrefix('input', this.lib), 597 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 598 | clearable: this.clearable 599 | }, props), 600 | nativeOn: { 601 | keydown: function keydown(e) { 602 | if (e.keyCode === 13 && _this2.enterSubmit && props.type !== 'textarea') { 603 | _this2.submit(); 604 | } 605 | } 606 | } 607 | }; 608 | return this.generateTag(tag); 609 | }, 610 | 611 | // 渲染 select 612 | renderSelect: function renderSelect(h, item) { 613 | var _this3 = this; 614 | 615 | var tag = { 616 | h: h, 617 | item: item, 618 | tagName: getPrefix('select', this.lib), 619 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 620 | clearable: this.clearable 621 | }, item.props || {}), 622 | children: item.options.map(function (option) { 623 | return h(getPrefix('option', _this3.lib), { 624 | props: { 625 | label: option.text, 626 | value: option.value 627 | } 628 | }, [typeof item.renderOption === 'function' ? item.renderOption(h, option, item) : item.text]); 629 | }) 630 | }; 631 | return this.generateTag(tag); 632 | }, 633 | 634 | // 渲染 单个checkbox 635 | renderCheckbox: function renderCheckbox(h, item) { 636 | var props = item.props || {}; 637 | if (item.border) { 638 | props.border = true; 639 | } 640 | var tag = { 641 | h: h, 642 | item: item, 643 | tagName: getPrefix('checkbox', this.lib), 644 | props: props, 645 | children: item.text 646 | }; 647 | return this.generateTag(tag); 648 | }, 649 | 650 | // 渲染 checkbox group 651 | renderCheckboxGroup: function renderCheckboxGroup(h, item) { 652 | var _this4 = this; 653 | 654 | var tag = { 655 | h: h, 656 | item: item, 657 | tagName: getPrefix('checkbox-group', this.lib), 658 | props: item.props || {}, 659 | children: item.options.map(function (option) { 660 | return h(getPrefix('checkbox', _this4.lib), { 661 | props: { 662 | border: item.border, 663 | label: option.value 664 | } 665 | }, option.text); 666 | }) 667 | }; 668 | return this.generateTag(tag); 669 | }, 670 | 671 | // 渲染 datepicker 672 | renderDatePicker: function renderDatePicker(h, item) { 673 | var tag = { 674 | h: h, 675 | item: item, 676 | tagName: getPrefix('date-picker', this.lib), 677 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 678 | clearable: this.clearable, 679 | type: item.type 680 | }, item.props || {}) 681 | }; 682 | return this.generateTag(tag); 683 | }, 684 | 685 | // 渲染范围的 daterange 686 | renderDateRange: function renderDateRange(h, item) { 687 | // 处理 datetimerange 可能宽度不够的问题 688 | if (item.type === 'datetimerange') { 689 | item.width = item.width || 360; 690 | } 691 | var tag = { 692 | h: h, 693 | item: item, 694 | tagName: getPrefix('date-picker', this.lib), 695 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 696 | clearable: this.clearable, 697 | type: item.type 698 | }, item.props || {}) 699 | }; 700 | return this.generateTag(tag); 701 | }, 702 | renderTimePicker: function renderTimePicker(h, item) { 703 | var tag = { 704 | h: h, 705 | item: item, 706 | tagName: getPrefix('time-picker', this.lib), 707 | props: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 708 | clearable: this.clearable, 709 | type: item.type 710 | }, item.props || {}) 711 | }; 712 | return this.generateTag(tag); 713 | }, 714 | 715 | // 渲染 radio 716 | renderRadio: function renderRadio(h, item) { 717 | var props = item.props || {}; 718 | if (item.border) { 719 | props.border = true; 720 | } 721 | var tag = { 722 | h: h, 723 | item: item, 724 | tagName: getPrefix('radio', this.lib), 725 | props: props, 726 | children: item.text 727 | }; 728 | return this.generateTag(tag); 729 | }, 730 | 731 | // 渲染 radio group 732 | renderRadioGroup: function renderRadioGroup(h, item) { 733 | var _this5 = this; 734 | 735 | var tag = { 736 | h: h, 737 | item: item, 738 | tagName: getPrefix('radio-group', this.lib), 739 | props: item.props || {}, 740 | children: item.options.map(function (option) { 741 | return h(getPrefix('radio', _this5.lib), { 742 | props: { 743 | border: item.border, 744 | label: option.value 745 | } 746 | }, option.text); 747 | }) 748 | }; 749 | return this.generateTag(tag); 750 | }, 751 | 752 | // 渲染 switch 753 | renderSwitch: function renderSwitch(h, item) { 754 | var tag = { 755 | h: h, 756 | item: item, 757 | tagName: getPrefix('switch', this.lib), 758 | props: item.props || {} 759 | }; 760 | return this.generateTag(tag); 761 | }, 762 | 763 | // 渲染 slider 764 | renderSlider: function renderSlider(h, item) { 765 | var tag = { 766 | h: h, 767 | item: item, 768 | tagName: getPrefix('slider', this.lib), 769 | props: item.props || {} 770 | }; 771 | return this.generateTag(tag); 772 | }, 773 | 774 | // 渲染 slider 775 | renderInputNumber: function renderInputNumber(h, item) { 776 | var tag = { 777 | h: h, 778 | item: item, 779 | tagName: getPrefix('input-number', this.lib), 780 | props: item.props || {} 781 | }; 782 | return this.generateTag(tag); 783 | }, 784 | 785 | // 渲染 cascader 786 | renderCascader: function renderCascader(h, item) { 787 | var props = item.props || {}; 788 | var tag = { 789 | h: h, 790 | item: item, 791 | tagName: getPrefix('cascader', this.lib) 792 | }; 793 | if (this.lib === 'iview') { 794 | props.data = this.getCascaderOptions(item.options); 795 | } else { 796 | props.options = this.getCascaderOptions(item.options); 797 | } 798 | tag.props = props; 799 | return this.generateTag(tag); 800 | }, 801 | 802 | // 转换 cascader options 803 | getCascaderOptions: function getCascaderOptions() { 804 | var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; 805 | 806 | var list = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(options); 807 | list = list.replace(/"text":/g, '"label":'); 808 | return JSON.parse(list); 809 | }, 810 | 811 | // 生产 tag 812 | generateTag: function generateTag(_ref) { 813 | var _this6 = this; 814 | 815 | var h = _ref.h, 816 | item = _ref.item, 817 | tagName = _ref.tagName, 818 | props = _ref.props, 819 | children = _ref.children, 820 | _ref$on = _ref.on, 821 | on = _ref$on === undefined ? {} : _ref$on, 822 | _ref$nativeOn = _ref.nativeOn, 823 | nativeOn = _ref$nativeOn === undefined ? {} : _ref$nativeOn; 824 | 825 | var currProps = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({ 826 | value: this.form[item.key], 827 | min: 0, 828 | max: 9999999 829 | }, props, { 830 | disabled: this.disabled || item.disabled 831 | }); 832 | var attrs = item.attrs || {}; 833 | var width = null; 834 | 835 | var itemOn = item.on || {}; 836 | var itemNativeOn = item.nativeOn || {}; 837 | 838 | // 忽略这些标签的宽度设置 839 | var ignoreMap = { 840 | 'switch': true, 841 | 'checkbox': true, 842 | 'checkbox-group': true, 843 | 'radio': true, 844 | 'radio-group': true, 845 | 'input-number': true 846 | }; 847 | 848 | if (!ignoreMap[item.type]) { 849 | var w = item.width || this['contentWidth']; 850 | if (typeof w === 'string' && (w.indexOf('%') >= 0 || w === 'auto')) { 851 | width = w; 852 | } else { 853 | width = w + 'px'; 854 | } 855 | } 856 | 857 | return h(tagName, { 858 | props: currProps, 859 | attrs: attrs, 860 | style: { 861 | width: width 862 | }, 863 | on: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, itemOn, { 864 | input: function input(value) { 865 | value = _this6.formatDateValue(value, item); 866 | _this6.form[item.key] = value; 867 | _this6.emitInput(value, item); 868 | } 869 | }, on), 870 | nativeOn: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, itemNativeOn, nativeOn) 871 | }, children); 872 | }, 873 | 874 | // 格式化日期返回,避免 null 的出现 875 | formatDateValue: function formatDateValue(value, item) { 876 | switch (item.type) { 877 | case 'date': 878 | case 'datetitme': 879 | if (!value) { 880 | value = ''; 881 | } 882 | break; 883 | case 'daterange': 884 | case 'datetimerange': 885 | if (!value) { 886 | value = ['', '']; 887 | } 888 | break; 889 | } 890 | return value; 891 | }, 892 | 893 | // 触发 item onInput 事件 894 | emitInput: function emitInput(value, item) { 895 | if (typeof item.onInput === 'function') { 896 | item.onInput(value, item, this.form); 897 | } 898 | }, 899 | 900 | // 提交事件 901 | submit: function submit() { 902 | var _this7 = this; 903 | 904 | this.$refs.form.validate(function (valid) { 905 | _this7.$emit('submit', _this7.getForm(), valid); 906 | }); 907 | }, 908 | 909 | // 清空 form 表单 910 | reset: function reset() { 911 | this.clear(); 912 | this.form = this.initForm(); 913 | this.$refs.form.resetFields(); 914 | }, 915 | 916 | // 清空验证 917 | clear: function clear() { 918 | this.$refs.form.clearValidate && this.$refs.form.clearValidate(); 919 | }, 920 | 921 | // 根据 key 获取 value 922 | getFormBykey: function getFormBykey(key) { 923 | return this.form[key]; 924 | }, 925 | 926 | // 获取整个 form 927 | getForm: function getForm() { 928 | return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_extends___default()({}, this.form); 929 | }, 930 | 931 | // 设值 932 | setForm: function setForm(form) { 933 | for (var key in form) { 934 | this.form[key] = form[key]; 935 | } 936 | }, 937 | validateField: function validateField(props, callback) { 938 | this.$refs.form.validateField(props, callback); 939 | } 940 | } 941 | }); 942 | 943 | /***/ }), 944 | /* 6 */ 945 | /***/ (function(module, exports, __webpack_require__) { 946 | 947 | module.exports = { "default": __webpack_require__(17), __esModule: true }; 948 | 949 | /***/ }), 950 | /* 7 */ 951 | /***/ (function(module, exports, __webpack_require__) { 952 | 953 | // to indexed object, toObject with fallback for non-array-like ES3 strings 954 | var IObject = __webpack_require__(8); 955 | var defined = __webpack_require__(9); 956 | module.exports = function (it) { 957 | return IObject(defined(it)); 958 | }; 959 | 960 | 961 | /***/ }), 962 | /* 8 */ 963 | /***/ (function(module, exports, __webpack_require__) { 964 | 965 | // fallback for non-array-like ES3 and non-enumerable old V8 strings 966 | var cof = __webpack_require__(33); 967 | // eslint-disable-next-line no-prototype-builtins 968 | module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { 969 | return cof(it) == 'String' ? it.split('') : Object(it); 970 | }; 971 | 972 | 973 | /***/ }), 974 | /* 9 */ 975 | /***/ (function(module, exports) { 976 | 977 | // 7.2.1 RequireObjectCoercible(argument) 978 | module.exports = function (it) { 979 | if (it == undefined) throw TypeError("Can't call method on " + it); 980 | return it; 981 | }; 982 | 983 | 984 | /***/ }), 985 | /* 10 */ 986 | /***/ (function(module, exports) { 987 | 988 | // 7.1.4 ToInteger 989 | var ceil = Math.ceil; 990 | var floor = Math.floor; 991 | module.exports = function (it) { 992 | return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); 993 | }; 994 | 995 | 996 | /***/ }), 997 | /* 11 */ 998 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 999 | 1000 | "use strict"; 1001 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 1002 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__packages_iview_form__ = __webpack_require__(12); 1003 | 1004 | 1005 | /* harmony default export */ __webpack_exports__["default"] = (__WEBPACK_IMPORTED_MODULE_0__packages_iview_form__["a" /* default */]); 1006 | 1007 | /***/ }), 1008 | /* 12 */ 1009 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 1010 | 1011 | "use strict"; 1012 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__iview_form__ = __webpack_require__(13); 1013 | 1014 | 1015 | const install = (Vue) => { 1016 | Vue.component(__WEBPACK_IMPORTED_MODULE_0__iview_form__["a" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__iview_form__["a" /* default */]) 1017 | } 1018 | 1019 | if (typeof window !== 'undefined' && window.Vue) { 1020 | install(window.Vue) 1021 | } 1022 | 1023 | /* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0__iview_form__["a" /* default */]); 1024 | 1025 | /***/ }), 1026 | /* 13 */ 1027 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 1028 | 1029 | "use strict"; 1030 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_iview_form_vue__ = __webpack_require__(5); 1031 | /* unused harmony namespace reexport */ 1032 | var disposed = false 1033 | var normalizeComponent = __webpack_require__(14) 1034 | /* script */ 1035 | 1036 | 1037 | /* template */ 1038 | var __vue_template__ = null 1039 | /* template functional */ 1040 | var __vue_template_functional__ = false 1041 | /* styles */ 1042 | var __vue_styles__ = null 1043 | /* scopeId */ 1044 | var __vue_scopeId__ = null 1045 | /* moduleIdentifier (server only) */ 1046 | var __vue_module_identifier__ = null 1047 | var Component = normalizeComponent( 1048 | __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_iview_form_vue__["a" /* default */], 1049 | __vue_template__, 1050 | __vue_template_functional__, 1051 | __vue_styles__, 1052 | __vue_scopeId__, 1053 | __vue_module_identifier__ 1054 | ) 1055 | Component.options.__file = "packages/iview-form/iview-form.vue" 1056 | 1057 | /* hot reload */ 1058 | if (false) {(function () { 1059 | var hotAPI = require("vue-hot-reload-api") 1060 | hotAPI.install(require("vue"), false) 1061 | if (!hotAPI.compatible) return 1062 | module.hot.accept() 1063 | if (!module.hot.data) { 1064 | hotAPI.createRecord("data-v-1eb6cf0a", Component.options) 1065 | } else { 1066 | hotAPI.reload("data-v-1eb6cf0a", Component.options) 1067 | } 1068 | module.hot.dispose(function (data) { 1069 | disposed = true 1070 | }) 1071 | })()} 1072 | 1073 | /* harmony default export */ __webpack_exports__["a"] = (Component.exports); 1074 | 1075 | 1076 | /***/ }), 1077 | /* 14 */ 1078 | /***/ (function(module, exports) { 1079 | 1080 | /* globals __VUE_SSR_CONTEXT__ */ 1081 | 1082 | // IMPORTANT: Do NOT use ES2015 features in this file. 1083 | // This module is a runtime utility for cleaner component module output and will 1084 | // be included in the final webpack user bundle. 1085 | 1086 | module.exports = function normalizeComponent ( 1087 | rawScriptExports, 1088 | compiledTemplate, 1089 | functionalTemplate, 1090 | injectStyles, 1091 | scopeId, 1092 | moduleIdentifier /* server only */ 1093 | ) { 1094 | var esModule 1095 | var scriptExports = rawScriptExports = rawScriptExports || {} 1096 | 1097 | // ES6 modules interop 1098 | var type = typeof rawScriptExports.default 1099 | if (type === 'object' || type === 'function') { 1100 | esModule = rawScriptExports 1101 | scriptExports = rawScriptExports.default 1102 | } 1103 | 1104 | // Vue.extend constructor export interop 1105 | var options = typeof scriptExports === 'function' 1106 | ? scriptExports.options 1107 | : scriptExports 1108 | 1109 | // render functions 1110 | if (compiledTemplate) { 1111 | options.render = compiledTemplate.render 1112 | options.staticRenderFns = compiledTemplate.staticRenderFns 1113 | options._compiled = true 1114 | } 1115 | 1116 | // functional template 1117 | if (functionalTemplate) { 1118 | options.functional = true 1119 | } 1120 | 1121 | // scopedId 1122 | if (scopeId) { 1123 | options._scopeId = scopeId 1124 | } 1125 | 1126 | var hook 1127 | if (moduleIdentifier) { // server build 1128 | hook = function (context) { 1129 | // 2.3 injection 1130 | context = 1131 | context || // cached call 1132 | (this.$vnode && this.$vnode.ssrContext) || // stateful 1133 | (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional 1134 | // 2.2 with runInNewContext: true 1135 | if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { 1136 | context = __VUE_SSR_CONTEXT__ 1137 | } 1138 | // inject component styles 1139 | if (injectStyles) { 1140 | injectStyles.call(this, context) 1141 | } 1142 | // register component module identifier for async chunk inferrence 1143 | if (context && context._registeredComponents) { 1144 | context._registeredComponents.add(moduleIdentifier) 1145 | } 1146 | } 1147 | // used by ssr in case component is cached and beforeCreate 1148 | // never gets called 1149 | options._ssrRegister = hook 1150 | } else if (injectStyles) { 1151 | hook = injectStyles 1152 | } 1153 | 1154 | if (hook) { 1155 | var functional = options.functional 1156 | var existing = functional 1157 | ? options.render 1158 | : options.beforeCreate 1159 | 1160 | if (!functional) { 1161 | // inject component registration as beforeCreate hook 1162 | options.beforeCreate = existing 1163 | ? [].concat(existing, hook) 1164 | : [hook] 1165 | } else { 1166 | // for template-only hot-reload because in that case the render fn doesn't 1167 | // go through the normalizer 1168 | options._injectStyles = hook 1169 | // register for functioal component in vue file 1170 | options.render = function renderWithStyleInjection (h, context) { 1171 | hook.call(context) 1172 | return existing(h, context) 1173 | } 1174 | } 1175 | } 1176 | 1177 | return { 1178 | esModule: esModule, 1179 | exports: scriptExports, 1180 | options: options 1181 | } 1182 | } 1183 | 1184 | 1185 | /***/ }), 1186 | /* 15 */ 1187 | /***/ (function(module, exports, __webpack_require__) { 1188 | 1189 | module.exports = { "default": __webpack_require__(16), __esModule: true }; 1190 | 1191 | /***/ }), 1192 | /* 16 */ 1193 | /***/ (function(module, exports, __webpack_require__) { 1194 | 1195 | var core = __webpack_require__(0); 1196 | var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify }); 1197 | module.exports = function stringify(it) { // eslint-disable-line no-unused-vars 1198 | return $JSON.stringify.apply($JSON, arguments); 1199 | }; 1200 | 1201 | 1202 | /***/ }), 1203 | /* 17 */ 1204 | /***/ (function(module, exports, __webpack_require__) { 1205 | 1206 | __webpack_require__(18); 1207 | module.exports = __webpack_require__(0).Object.assign; 1208 | 1209 | 1210 | /***/ }), 1211 | /* 18 */ 1212 | /***/ (function(module, exports, __webpack_require__) { 1213 | 1214 | // 19.1.3.1 Object.assign(target, source) 1215 | var $export = __webpack_require__(19); 1216 | 1217 | $export($export.S + $export.F, 'Object', { assign: __webpack_require__(29) }); 1218 | 1219 | 1220 | /***/ }), 1221 | /* 19 */ 1222 | /***/ (function(module, exports, __webpack_require__) { 1223 | 1224 | var global = __webpack_require__(1); 1225 | var core = __webpack_require__(0); 1226 | var ctx = __webpack_require__(20); 1227 | var hide = __webpack_require__(22); 1228 | var PROTOTYPE = 'prototype'; 1229 | 1230 | var $export = function (type, name, source) { 1231 | var IS_FORCED = type & $export.F; 1232 | var IS_GLOBAL = type & $export.G; 1233 | var IS_STATIC = type & $export.S; 1234 | var IS_PROTO = type & $export.P; 1235 | var IS_BIND = type & $export.B; 1236 | var IS_WRAP = type & $export.W; 1237 | var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); 1238 | var expProto = exports[PROTOTYPE]; 1239 | var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; 1240 | var key, own, out; 1241 | if (IS_GLOBAL) source = name; 1242 | for (key in source) { 1243 | // contains in native 1244 | own = !IS_FORCED && target && target[key] !== undefined; 1245 | if (own && key in exports) continue; 1246 | // export native or passed 1247 | out = own ? target[key] : source[key]; 1248 | // prevent global pollution for namespaces 1249 | exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] 1250 | // bind timers to global for call from export context 1251 | : IS_BIND && own ? ctx(out, global) 1252 | // wrap global constructors for prevent change them in library 1253 | : IS_WRAP && target[key] == out ? (function (C) { 1254 | var F = function (a, b, c) { 1255 | if (this instanceof C) { 1256 | switch (arguments.length) { 1257 | case 0: return new C(); 1258 | case 1: return new C(a); 1259 | case 2: return new C(a, b); 1260 | } return new C(a, b, c); 1261 | } return C.apply(this, arguments); 1262 | }; 1263 | F[PROTOTYPE] = C[PROTOTYPE]; 1264 | return F; 1265 | // make static versions for prototype methods 1266 | })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; 1267 | // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% 1268 | if (IS_PROTO) { 1269 | (exports.virtual || (exports.virtual = {}))[key] = out; 1270 | // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% 1271 | if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); 1272 | } 1273 | } 1274 | }; 1275 | // type bitmap 1276 | $export.F = 1; // forced 1277 | $export.G = 2; // global 1278 | $export.S = 4; // static 1279 | $export.P = 8; // proto 1280 | $export.B = 16; // bind 1281 | $export.W = 32; // wrap 1282 | $export.U = 64; // safe 1283 | $export.R = 128; // real proto method for `library` 1284 | module.exports = $export; 1285 | 1286 | 1287 | /***/ }), 1288 | /* 20 */ 1289 | /***/ (function(module, exports, __webpack_require__) { 1290 | 1291 | // optional / simple context binding 1292 | var aFunction = __webpack_require__(21); 1293 | module.exports = function (fn, that, length) { 1294 | aFunction(fn); 1295 | if (that === undefined) return fn; 1296 | switch (length) { 1297 | case 1: return function (a) { 1298 | return fn.call(that, a); 1299 | }; 1300 | case 2: return function (a, b) { 1301 | return fn.call(that, a, b); 1302 | }; 1303 | case 3: return function (a, b, c) { 1304 | return fn.call(that, a, b, c); 1305 | }; 1306 | } 1307 | return function (/* ...args */) { 1308 | return fn.apply(that, arguments); 1309 | }; 1310 | }; 1311 | 1312 | 1313 | /***/ }), 1314 | /* 21 */ 1315 | /***/ (function(module, exports) { 1316 | 1317 | module.exports = function (it) { 1318 | if (typeof it != 'function') throw TypeError(it + ' is not a function!'); 1319 | return it; 1320 | }; 1321 | 1322 | 1323 | /***/ }), 1324 | /* 22 */ 1325 | /***/ (function(module, exports, __webpack_require__) { 1326 | 1327 | var dP = __webpack_require__(23); 1328 | var createDesc = __webpack_require__(28); 1329 | module.exports = __webpack_require__(3) ? function (object, key, value) { 1330 | return dP.f(object, key, createDesc(1, value)); 1331 | } : function (object, key, value) { 1332 | object[key] = value; 1333 | return object; 1334 | }; 1335 | 1336 | 1337 | /***/ }), 1338 | /* 23 */ 1339 | /***/ (function(module, exports, __webpack_require__) { 1340 | 1341 | var anObject = __webpack_require__(24); 1342 | var IE8_DOM_DEFINE = __webpack_require__(25); 1343 | var toPrimitive = __webpack_require__(27); 1344 | var dP = Object.defineProperty; 1345 | 1346 | exports.f = __webpack_require__(3) ? Object.defineProperty : function defineProperty(O, P, Attributes) { 1347 | anObject(O); 1348 | P = toPrimitive(P, true); 1349 | anObject(Attributes); 1350 | if (IE8_DOM_DEFINE) try { 1351 | return dP(O, P, Attributes); 1352 | } catch (e) { /* empty */ } 1353 | if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); 1354 | if ('value' in Attributes) O[P] = Attributes.value; 1355 | return O; 1356 | }; 1357 | 1358 | 1359 | /***/ }), 1360 | /* 24 */ 1361 | /***/ (function(module, exports, __webpack_require__) { 1362 | 1363 | var isObject = __webpack_require__(2); 1364 | module.exports = function (it) { 1365 | if (!isObject(it)) throw TypeError(it + ' is not an object!'); 1366 | return it; 1367 | }; 1368 | 1369 | 1370 | /***/ }), 1371 | /* 25 */ 1372 | /***/ (function(module, exports, __webpack_require__) { 1373 | 1374 | module.exports = !__webpack_require__(3) && !__webpack_require__(4)(function () { 1375 | return Object.defineProperty(__webpack_require__(26)('div'), 'a', { get: function () { return 7; } }).a != 7; 1376 | }); 1377 | 1378 | 1379 | /***/ }), 1380 | /* 26 */ 1381 | /***/ (function(module, exports, __webpack_require__) { 1382 | 1383 | var isObject = __webpack_require__(2); 1384 | var document = __webpack_require__(1).document; 1385 | // typeof document.createElement is 'object' in old IE 1386 | var is = isObject(document) && isObject(document.createElement); 1387 | module.exports = function (it) { 1388 | return is ? document.createElement(it) : {}; 1389 | }; 1390 | 1391 | 1392 | /***/ }), 1393 | /* 27 */ 1394 | /***/ (function(module, exports, __webpack_require__) { 1395 | 1396 | // 7.1.1 ToPrimitive(input [, PreferredType]) 1397 | var isObject = __webpack_require__(2); 1398 | // instead of the ES6 spec version, we didn't implement @@toPrimitive case 1399 | // and the second argument - flag - preferred type is a string 1400 | module.exports = function (it, S) { 1401 | if (!isObject(it)) return it; 1402 | var fn, val; 1403 | if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; 1404 | if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; 1405 | if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; 1406 | throw TypeError("Can't convert object to primitive value"); 1407 | }; 1408 | 1409 | 1410 | /***/ }), 1411 | /* 28 */ 1412 | /***/ (function(module, exports) { 1413 | 1414 | module.exports = function (bitmap, value) { 1415 | return { 1416 | enumerable: !(bitmap & 1), 1417 | configurable: !(bitmap & 2), 1418 | writable: !(bitmap & 4), 1419 | value: value 1420 | }; 1421 | }; 1422 | 1423 | 1424 | /***/ }), 1425 | /* 29 */ 1426 | /***/ (function(module, exports, __webpack_require__) { 1427 | 1428 | "use strict"; 1429 | 1430 | // 19.1.2.1 Object.assign(target, source, ...) 1431 | var getKeys = __webpack_require__(30); 1432 | var gOPS = __webpack_require__(41); 1433 | var pIE = __webpack_require__(42); 1434 | var toObject = __webpack_require__(43); 1435 | var IObject = __webpack_require__(8); 1436 | var $assign = Object.assign; 1437 | 1438 | // should work with symbols and should have deterministic property order (V8 bug) 1439 | module.exports = !$assign || __webpack_require__(4)(function () { 1440 | var A = {}; 1441 | var B = {}; 1442 | // eslint-disable-next-line no-undef 1443 | var S = Symbol(); 1444 | var K = 'abcdefghijklmnopqrst'; 1445 | A[S] = 7; 1446 | K.split('').forEach(function (k) { B[k] = k; }); 1447 | return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K; 1448 | }) ? function assign(target, source) { // eslint-disable-line no-unused-vars 1449 | var T = toObject(target); 1450 | var aLen = arguments.length; 1451 | var index = 1; 1452 | var getSymbols = gOPS.f; 1453 | var isEnum = pIE.f; 1454 | while (aLen > index) { 1455 | var S = IObject(arguments[index++]); 1456 | var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S); 1457 | var length = keys.length; 1458 | var j = 0; 1459 | var key; 1460 | while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key]; 1461 | } return T; 1462 | } : $assign; 1463 | 1464 | 1465 | /***/ }), 1466 | /* 30 */ 1467 | /***/ (function(module, exports, __webpack_require__) { 1468 | 1469 | // 19.1.2.14 / 15.2.3.14 Object.keys(O) 1470 | var $keys = __webpack_require__(31); 1471 | var enumBugKeys = __webpack_require__(40); 1472 | 1473 | module.exports = Object.keys || function keys(O) { 1474 | return $keys(O, enumBugKeys); 1475 | }; 1476 | 1477 | 1478 | /***/ }), 1479 | /* 31 */ 1480 | /***/ (function(module, exports, __webpack_require__) { 1481 | 1482 | var has = __webpack_require__(32); 1483 | var toIObject = __webpack_require__(7); 1484 | var arrayIndexOf = __webpack_require__(34)(false); 1485 | var IE_PROTO = __webpack_require__(37)('IE_PROTO'); 1486 | 1487 | module.exports = function (object, names) { 1488 | var O = toIObject(object); 1489 | var i = 0; 1490 | var result = []; 1491 | var key; 1492 | for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); 1493 | // Don't enum bug & hidden keys 1494 | while (names.length > i) if (has(O, key = names[i++])) { 1495 | ~arrayIndexOf(result, key) || result.push(key); 1496 | } 1497 | return result; 1498 | }; 1499 | 1500 | 1501 | /***/ }), 1502 | /* 32 */ 1503 | /***/ (function(module, exports) { 1504 | 1505 | var hasOwnProperty = {}.hasOwnProperty; 1506 | module.exports = function (it, key) { 1507 | return hasOwnProperty.call(it, key); 1508 | }; 1509 | 1510 | 1511 | /***/ }), 1512 | /* 33 */ 1513 | /***/ (function(module, exports) { 1514 | 1515 | var toString = {}.toString; 1516 | 1517 | module.exports = function (it) { 1518 | return toString.call(it).slice(8, -1); 1519 | }; 1520 | 1521 | 1522 | /***/ }), 1523 | /* 34 */ 1524 | /***/ (function(module, exports, __webpack_require__) { 1525 | 1526 | // false -> Array#indexOf 1527 | // true -> Array#includes 1528 | var toIObject = __webpack_require__(7); 1529 | var toLength = __webpack_require__(35); 1530 | var toAbsoluteIndex = __webpack_require__(36); 1531 | module.exports = function (IS_INCLUDES) { 1532 | return function ($this, el, fromIndex) { 1533 | var O = toIObject($this); 1534 | var length = toLength(O.length); 1535 | var index = toAbsoluteIndex(fromIndex, length); 1536 | var value; 1537 | // Array#includes uses SameValueZero equality algorithm 1538 | // eslint-disable-next-line no-self-compare 1539 | if (IS_INCLUDES && el != el) while (length > index) { 1540 | value = O[index++]; 1541 | // eslint-disable-next-line no-self-compare 1542 | if (value != value) return true; 1543 | // Array#indexOf ignores holes, Array#includes - not 1544 | } else for (;length > index; index++) if (IS_INCLUDES || index in O) { 1545 | if (O[index] === el) return IS_INCLUDES || index || 0; 1546 | } return !IS_INCLUDES && -1; 1547 | }; 1548 | }; 1549 | 1550 | 1551 | /***/ }), 1552 | /* 35 */ 1553 | /***/ (function(module, exports, __webpack_require__) { 1554 | 1555 | // 7.1.15 ToLength 1556 | var toInteger = __webpack_require__(10); 1557 | var min = Math.min; 1558 | module.exports = function (it) { 1559 | return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 1560 | }; 1561 | 1562 | 1563 | /***/ }), 1564 | /* 36 */ 1565 | /***/ (function(module, exports, __webpack_require__) { 1566 | 1567 | var toInteger = __webpack_require__(10); 1568 | var max = Math.max; 1569 | var min = Math.min; 1570 | module.exports = function (index, length) { 1571 | index = toInteger(index); 1572 | return index < 0 ? max(index + length, 0) : min(index, length); 1573 | }; 1574 | 1575 | 1576 | /***/ }), 1577 | /* 37 */ 1578 | /***/ (function(module, exports, __webpack_require__) { 1579 | 1580 | var shared = __webpack_require__(38)('keys'); 1581 | var uid = __webpack_require__(39); 1582 | module.exports = function (key) { 1583 | return shared[key] || (shared[key] = uid(key)); 1584 | }; 1585 | 1586 | 1587 | /***/ }), 1588 | /* 38 */ 1589 | /***/ (function(module, exports, __webpack_require__) { 1590 | 1591 | var global = __webpack_require__(1); 1592 | var SHARED = '__core-js_shared__'; 1593 | var store = global[SHARED] || (global[SHARED] = {}); 1594 | module.exports = function (key) { 1595 | return store[key] || (store[key] = {}); 1596 | }; 1597 | 1598 | 1599 | /***/ }), 1600 | /* 39 */ 1601 | /***/ (function(module, exports) { 1602 | 1603 | var id = 0; 1604 | var px = Math.random(); 1605 | module.exports = function (key) { 1606 | return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); 1607 | }; 1608 | 1609 | 1610 | /***/ }), 1611 | /* 40 */ 1612 | /***/ (function(module, exports) { 1613 | 1614 | // IE 8- don't enum bug keys 1615 | module.exports = ( 1616 | 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' 1617 | ).split(','); 1618 | 1619 | 1620 | /***/ }), 1621 | /* 41 */ 1622 | /***/ (function(module, exports) { 1623 | 1624 | exports.f = Object.getOwnPropertySymbols; 1625 | 1626 | 1627 | /***/ }), 1628 | /* 42 */ 1629 | /***/ (function(module, exports) { 1630 | 1631 | exports.f = {}.propertyIsEnumerable; 1632 | 1633 | 1634 | /***/ }), 1635 | /* 43 */ 1636 | /***/ (function(module, exports, __webpack_require__) { 1637 | 1638 | // 7.1.13 ToObject(argument) 1639 | var defined = __webpack_require__(9); 1640 | module.exports = function (it) { 1641 | return Object(defined(it)); 1642 | }; 1643 | 1644 | 1645 | /***/ }), 1646 | /* 44 */ 1647 | /***/ (function(module, exports, __webpack_require__) { 1648 | 1649 | "use strict"; 1650 | 1651 | 1652 | exports.__esModule = true; 1653 | 1654 | var _assign = __webpack_require__(6); 1655 | 1656 | var _assign2 = _interopRequireDefault(_assign); 1657 | 1658 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 1659 | 1660 | exports.default = _assign2.default || function (target) { 1661 | for (var i = 1; i < arguments.length; i++) { 1662 | var source = arguments[i]; 1663 | 1664 | for (var key in source) { 1665 | if (Object.prototype.hasOwnProperty.call(source, key)) { 1666 | target[key] = source[key]; 1667 | } 1668 | } 1669 | } 1670 | 1671 | return target; 1672 | }; 1673 | 1674 | /***/ }) 1675 | /******/ ]); 1676 | }); -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "iview-form", 3 | "version": "1.9.0", 4 | "description": "Configuration iview form", 5 | "author": "viewweiwu <648764190@qq.com>", 6 | "private": false, 7 | "scripts": { 8 | "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js", 9 | "start": "npm run dev", 10 | "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run", 11 | "test": "npm run unit", 12 | "lint": "eslint --ext .js,.vue src test/unit", 13 | "build": "webpack --progress --hide-modules --config build/webpack.build.js", 14 | "build:e": "webpack --progress --hide-modules --config build/webpack.build.min.js", 15 | "build:full": "webpack --progress --hide-modules --config build/webpack.build.js && rimraf examples/dist && cross-env NODE_ENV=production webpack --progress --hide-modules --config build/webpack.build.min.js" 16 | }, 17 | "keywords": [ 18 | "iview", 19 | "element-ui", 20 | "vue", 21 | "vue.js", 22 | "components", 23 | "ui" 24 | ], 25 | "dependencies": { 26 | "element-ui": "^2.3.7", 27 | "highlight.js": "^9.12.0", 28 | "iview": "^2.14.3", 29 | "vue": "^2.5.2", 30 | "vue-highlight.js": "^2.2.0" 31 | }, 32 | "main": "lib/iview-form.js", 33 | "files": [ 34 | "lib", 35 | "src", 36 | "packages" 37 | ], 38 | "devDependencies": { 39 | "autoprefixer": "^7.1.2", 40 | "babel-core": "^6.22.1", 41 | "babel-eslint": "^8.2.1", 42 | "babel-helper-vue-jsx-merge-props": "^2.0.3", 43 | "babel-loader": "^7.1.1", 44 | "babel-plugin-istanbul": "^4.1.1", 45 | "babel-plugin-jsx-v-model": "^2.0.3", 46 | "babel-plugin-syntax-jsx": "^6.18.0", 47 | "babel-plugin-transform-runtime": "^6.22.0", 48 | "babel-plugin-transform-vue-jsx": "^3.7.0", 49 | "babel-preset-env": "^1.3.2", 50 | "babel-preset-stage-2": "^6.22.0", 51 | "chai": "^4.1.2", 52 | "chalk": "^2.0.1", 53 | "copy-webpack-plugin": "^4.0.1", 54 | "cross-env": "^5.0.1", 55 | "css-loader": "^0.28.0", 56 | "eslint": "^4.15.0", 57 | "eslint-config-standard": "^10.2.1", 58 | "eslint-friendly-formatter": "^3.0.0", 59 | "eslint-loader": "^1.7.1", 60 | "eslint-plugin-import": "^2.7.0", 61 | "eslint-plugin-node": "^5.2.0", 62 | "eslint-plugin-promise": "^3.4.0", 63 | "eslint-plugin-standard": "^3.0.1", 64 | "eslint-plugin-vue": "^4.0.0", 65 | "extract-text-webpack-plugin": "^3.0.0", 66 | "file-loader": "^1.1.4", 67 | "friendly-errors-webpack-plugin": "^1.6.1", 68 | "github-markdown-css": "^2.10.0", 69 | "html-webpack-plugin": "^2.30.1", 70 | "inject-loader": "^3.0.0", 71 | "karma": "^1.4.1", 72 | "karma-coverage": "^1.1.1", 73 | "karma-mocha": "^1.3.0", 74 | "karma-phantomjs-launcher": "^1.0.2", 75 | "karma-phantomjs-shim": "^1.4.0", 76 | "karma-sinon-chai": "^1.3.1", 77 | "karma-sourcemap-loader": "^0.3.7", 78 | "karma-spec-reporter": "0.0.31", 79 | "karma-webpack": "^2.0.2", 80 | "less": "^3.0.1", 81 | "less-loader": "^4.1.0", 82 | "marked": "^0.3.17", 83 | "mocha": "^3.2.0", 84 | "node-notifier": "^5.1.2", 85 | "optimize-css-assets-webpack-plugin": "^3.2.0", 86 | "ora": "^1.2.0", 87 | "phantomjs-prebuilt": "^2.1.14", 88 | "portfinder": "^1.0.13", 89 | "postcss-import": "^11.0.0", 90 | "postcss-loader": "^2.0.8", 91 | "postcss-url": "^7.2.1", 92 | "rimraf": "^2.6.0", 93 | "semver": "^5.3.0", 94 | "shelljs": "^0.7.6", 95 | "sinon": "^4.0.0", 96 | "sinon-chai": "^2.8.0", 97 | "uglifyjs-webpack-plugin": "^1.1.1", 98 | "url-loader": "^0.5.8", 99 | "vue-loader": "^13.3.0", 100 | "vue-style-loader": "^3.0.1", 101 | "vue-template-compiler": "^2.5.2", 102 | "webpack": "^3.6.0", 103 | "webpack-bundle-analyzer": "^2.9.0", 104 | "webpack-cdn-plugin": "^1.8.1", 105 | "webpack-dev-server": "^2.9.1", 106 | "webpack-merge": "^4.1.0" 107 | }, 108 | "engines": { 109 | "node": ">= 6.0.0", 110 | "npm": ">= 3.0.0" 111 | }, 112 | "browserslist": [ 113 | "> 1%", 114 | "last 2 versions", 115 | "not ie <= 8" 116 | ] 117 | } 118 | -------------------------------------------------------------------------------- /packages/iview-form/index.js: -------------------------------------------------------------------------------- 1 | import iViewForm from './iview-form' 2 | 3 | const install = (Vue) => { 4 | Vue.component(iViewForm.name, iViewForm) 5 | } 6 | 7 | if (typeof window !== 'undefined' && window.Vue) { 8 | install(window.Vue) 9 | } 10 | 11 | export default iViewForm -------------------------------------------------------------------------------- /packages/iview-form/iview-form.vue: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import form from '../packages/iview-form' 2 | 3 | export default form -------------------------------------------------------------------------------- /static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/viewweiwu/iview-form/f9417baeaa0be775c57a28fc8ec51453616c8bdf/static/.gitkeep -------------------------------------------------------------------------------- /test/unit/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "mocha": true 4 | }, 5 | "globals": { 6 | "expect": true, 7 | "sinon": true 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /test/unit/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | Vue.config.productionTip = false 4 | 5 | // require all test files (files that ends with .spec.js) 6 | const testsContext = require.context('./specs', true, /\.spec$/) 7 | testsContext.keys().forEach(testsContext) 8 | 9 | // require all src files except main.js for coverage. 10 | // you can also change this to match only the subset of files that 11 | // you want coverage for. 12 | const srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/) 13 | srcContext.keys().forEach(srcContext) 14 | -------------------------------------------------------------------------------- /test/unit/karma.conf.js: -------------------------------------------------------------------------------- 1 | // This is a karma config file. For more details see 2 | // http://karma-runner.github.io/0.13/config/configuration-file.html 3 | // we are also using it with karma-webpack 4 | // https://github.com/webpack/karma-webpack 5 | 6 | var webpackConfig = require('../../build/webpack.test.conf') 7 | 8 | module.exports = function karmaConfig (config) { 9 | config.set({ 10 | // to run in additional browsers: 11 | // 1. install corresponding karma launcher 12 | // http://karma-runner.github.io/0.13/config/browsers.html 13 | // 2. add it to the `browsers` array below. 14 | browsers: ['PhantomJS'], 15 | frameworks: ['mocha', 'sinon-chai', 'phantomjs-shim'], 16 | reporters: ['spec', 'coverage'], 17 | files: ['./index.js'], 18 | preprocessors: { 19 | './index.js': ['webpack', 'sourcemap'] 20 | }, 21 | webpack: webpackConfig, 22 | webpackMiddleware: { 23 | noInfo: true 24 | }, 25 | coverageReporter: { 26 | dir: './coverage', 27 | reporters: [ 28 | { type: 'lcov', subdir: '.' }, 29 | { type: 'text-summary' } 30 | ] 31 | } 32 | }) 33 | } 34 | -------------------------------------------------------------------------------- /test/unit/specs/HelloWorld.spec.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import HelloWorld from '@/components/HelloWorld' 3 | 4 | describe('HelloWorld.vue', () => { 5 | it('should render correct contents', () => { 6 | const Constructor = Vue.extend(HelloWorld) 7 | const vm = new Constructor().$mount() 8 | expect(vm.$el.querySelector('.hello h1').textContent) 9 | .to.equal('Welcome to Your Vue.js App') 10 | }) 11 | }) 12 | --------------------------------------------------------------------------------