diff --git a/.npmignore b/.npmignore
index 49baa315..b2ca5c8b 100644
--- a/.npmignore
+++ b/.npmignore
@@ -3,5 +3,5 @@
*.yml
build/
node_modules/
-local/
-gulpfile.js
\ No newline at end of file
+test/
+gulpfile.js
diff --git a/build/webpack.config.js b/build/webpack.dev.config.js
similarity index 100%
rename from build/webpack.config.js
rename to build/webpack.dev.config.js
diff --git a/build/webpack.dist.dev.config.js b/build/webpack.dist.dev.config.js
new file mode 100644
index 00000000..81c2167b
--- /dev/null
+++ b/build/webpack.dist.dev.config.js
@@ -0,0 +1,48 @@
+var path = require('path');
+var webpack = require('webpack');
+
+module.exports = {
+ entry: {
+ main: './src/index.js'
+ },
+ output: {
+ path: path.resolve(__dirname, '../dist'),
+ publicPath: '/dist/',
+ filename: 'iview.js',
+ library: 'iview',
+ libraryTarget: 'umd',
+ umdNamedDefine: true
+ },
+ resolve: {
+ extensions: ['', '.js', '.vue']
+ },
+ module: {
+ loaders: [{
+ test: /\.vue$/,
+ loader: 'vue'
+ }, {
+ test: /\.js$/,
+ loader: 'babel',
+ exclude: /node_modules/
+ }, {
+ test: /\.css$/,
+ loader: 'style!css!autoprefixer'
+ }, {
+ test: /\.less$/,
+ loader: 'style!css!less'
+ }, {
+ test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/,
+ loader: 'url?limit=8192'
+ }, {
+ test: /\.(html|tpl)$/,
+ loader: 'vue-html'
+ }]
+ },
+ plugins: [
+ new webpack.DefinePlugin({
+ 'process.env': {
+ NODE_ENV: '"development"'
+ }
+ })
+ ]
+}
diff --git a/build/webpack.dist.prod.config.js b/build/webpack.dist.prod.config.js
new file mode 100644
index 00000000..3d0464b3
--- /dev/null
+++ b/build/webpack.dist.prod.config.js
@@ -0,0 +1,54 @@
+var path = require('path');
+var webpack = require('webpack');
+
+module.exports = {
+ entry: {
+ main: './src/index.js'
+ },
+ output: {
+ path: path.resolve(__dirname, '../dist'),
+ publicPath: '/dist/',
+ filename: 'iview.min.js',
+ library: 'iview',
+ libraryTarget: 'umd',
+ umdNamedDefine: true
+ },
+ resolve: {
+ extensions: ['', '.js', '.vue']
+ },
+ module: {
+ loaders: [{
+ test: /\.vue$/,
+ loader: 'vue'
+ }, {
+ test: /\.js$/,
+ loader: 'babel',
+ exclude: /node_modules/
+ }, {
+ test: /\.css$/,
+ loader: 'style!css!autoprefixer'
+ }, {
+ test: /\.less$/,
+ loader: 'style!css!less'
+ }, {
+ test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/,
+ loader: 'url?limit=8192'
+ }, {
+ test: /\.(html|tpl)$/,
+ loader: 'vue-html'
+ }]
+ },
+ plugins: [
+ new webpack.DefinePlugin({
+ 'process.env': {
+ NODE_ENV: '"production"'
+ }
+ }),
+ new webpack.optimize.UglifyJsPlugin({
+ compress: {
+ warnings: false
+ }
+ }),
+ new webpack.optimize.OccurenceOrderPlugin()
+ ]
+}
diff --git a/dist/iview.js b/dist/iview.js
new file mode 100644
index 00000000..737d8e27
--- /dev/null
+++ b/dist/iview.js
@@ -0,0 +1,20475 @@
+(function webpackUniversalModuleDefinition(root, factory) {
+ if(typeof exports === 'object' && typeof module === 'object')
+ module.exports = factory();
+ else if(typeof define === 'function' && define.amd)
+ define("iview", [], factory);
+ else if(typeof exports === 'object')
+ exports["iview"] = factory();
+ else
+ root["iview"] = factory();
+})(this, function() {
+return /******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId])
+/******/ return installedModules[moduleId].exports;
+
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ exports: {},
+/******/ id: moduleId,
+/******/ loaded: false
+/******/ };
+
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+
+/******/ // Flag the module as loaded
+/******/ module.loaded = true;
+
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+
+
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "/dist/";
+
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(0);
+/******/ })
+/************************************************************************/
+/******/ ([
+/* 0 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ var _assign = __webpack_require__(1);
+
+ var _assign2 = _interopRequireDefault(_assign);
+
+ var _keys = __webpack_require__(38);
+
+ var _keys2 = _interopRequireDefault(_keys);
+
+ var _affix = __webpack_require__(42);
+
+ var _affix2 = _interopRequireDefault(_affix);
+
+ var _alert = __webpack_require__(50);
+
+ var _alert2 = _interopRequireDefault(_alert);
+
+ var _backTop = __webpack_require__(59);
+
+ var _backTop2 = _interopRequireDefault(_backTop);
+
+ var _badge = __webpack_require__(63);
+
+ var _badge2 = _interopRequireDefault(_badge);
+
+ var _breadcrumb = __webpack_require__(67);
+
+ var _breadcrumb2 = _interopRequireDefault(_breadcrumb);
+
+ var _button = __webpack_require__(74);
+
+ var _button2 = _interopRequireDefault(_button);
+
+ var _card = __webpack_require__(81);
+
+ var _card2 = _interopRequireDefault(_card);
+
+ var _checkbox = __webpack_require__(85);
+
+ var _checkbox2 = _interopRequireDefault(_checkbox);
+
+ var _circle = __webpack_require__(92);
+
+ var _circle2 = _interopRequireDefault(_circle);
+
+ var _collapse = __webpack_require__(96);
+
+ var _collapse2 = _interopRequireDefault(_collapse);
+
+ var _icon = __webpack_require__(53);
+
+ var _icon2 = _interopRequireDefault(_icon);
+
+ var _input = __webpack_require__(103);
+
+ var _input2 = _interopRequireDefault(_input);
+
+ var _inputNumber = __webpack_require__(107);
+
+ var _inputNumber2 = _interopRequireDefault(_inputNumber);
+
+ var _loadingBar = __webpack_require__(111);
+
+ var _loadingBar2 = _interopRequireDefault(_loadingBar);
+
+ var _message = __webpack_require__(117);
+
+ var _message2 = _interopRequireDefault(_message);
+
+ var _modal = __webpack_require__(125);
+
+ var _modal2 = _interopRequireDefault(_modal);
+
+ var _notice = __webpack_require__(130);
+
+ var _notice2 = _interopRequireDefault(_notice);
+
+ var _page = __webpack_require__(131);
+
+ var _page2 = _interopRequireDefault(_page);
+
+ var _poptip = __webpack_require__(184);
+
+ var _poptip2 = _interopRequireDefault(_poptip);
+
+ var _progress = __webpack_require__(189);
+
+ var _progress2 = _interopRequireDefault(_progress);
+
+ var _radio = __webpack_require__(193);
+
+ var _radio2 = _interopRequireDefault(_radio);
+
+ var _slider = __webpack_require__(200);
+
+ var _slider2 = _interopRequireDefault(_slider);
+
+ var _spin = __webpack_require__(207);
+
+ var _spin2 = _interopRequireDefault(_spin);
+
+ var _steps = __webpack_require__(211);
+
+ var _steps2 = _interopRequireDefault(_steps);
+
+ var _switch = __webpack_require__(218);
+
+ var _switch2 = _interopRequireDefault(_switch);
+
+ var _tag = __webpack_require__(222);
+
+ var _tag2 = _interopRequireDefault(_tag);
+
+ var _timeline = __webpack_require__(226);
+
+ var _timeline2 = _interopRequireDefault(_timeline);
+
+ var _tooltip = __webpack_require__(233);
+
+ var _tooltip2 = _interopRequireDefault(_tooltip);
+
+ var _layout = __webpack_require__(234);
+
+ var _select = __webpack_require__(241);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var iview = {
+ Affix: _affix2.default,
+ Alert: _alert2.default,
+ BackTop: _backTop2.default,
+ Badge: _badge2.default,
+ Breadcrumb: _breadcrumb2.default,
+ BreadcrumbItem: _breadcrumb2.default.Item,
+ iButton: _button2.default,
+ ButtonGroup: _button2.default.Group,
+ Card: _card2.default,
+ Checkbox: _checkbox2.default,
+ CheckboxGroup: _checkbox2.default.Group,
+ Circle: _circle2.default,
+ iCol: _layout.Col,
+ Collapse: _collapse2.default,
+ Icon: _icon2.default,
+ iInput: _input2.default,
+ InputNumber: _inputNumber2.default,
+ LoadingBar: _loadingBar2.default,
+ Message: _message2.default,
+ Modal: _modal2.default,
+ Notice: _notice2.default,
+ iOption: _select.Option,
+ OptionGroup: _select.OptionGroup,
+ Page: _page2.default,
+ Panel: _collapse2.default.Panel,
+ Poptip: _poptip2.default,
+ Progress: _progress2.default,
+ Radio: _radio2.default,
+ RadioGroup: _radio2.default.Group,
+ Row: _layout.Row,
+ iSelect: _select.Select,
+ Slider: _slider2.default,
+ Spin: _spin2.default,
+ Step: _steps2.default.Step,
+ Steps: _steps2.default,
+ Switch: _switch2.default,
+ Tag: _tag2.default,
+ Timeline: _timeline2.default,
+ TimelineItem: _timeline2.default.Item,
+ Tooltip: _tooltip2.default
+ };
+
+ var install = function install(Vue) {
+ (0, _keys2.default)(iview).forEach(function (key) {
+ Vue.component(key, iview[key]);
+ });
+ };
+
+ if (typeof window !== 'undefined' && window.Vue) {
+ install(window.Vue);
+ };
+
+ module.exports = (0, _assign2.default)(iview, { install: install });
+
+/***/ },
+/* 1 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = { "default": __webpack_require__(2), __esModule: true };
+
+/***/ },
+/* 2 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(3);
+ module.exports = __webpack_require__(6).Object.assign;
+
+/***/ },
+/* 3 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.1 Object.assign(target, source)
+ var $export = __webpack_require__(4);
+
+ $export($export.S + $export.F, 'Object', {assign: __webpack_require__(19)});
+
+/***/ },
+/* 4 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(5)
+ , core = __webpack_require__(6)
+ , ctx = __webpack_require__(7)
+ , hide = __webpack_require__(9)
+ , PROTOTYPE = 'prototype';
+
+ var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE]
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+ , key, own, out;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && target[key] !== undefined;
+ if(own && key in exports)continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function(C){
+ var F = function(a, b, c){
+ if(this instanceof C){
+ switch(arguments.length){
+ case 0: return new C;
+ case 1: return new C(a);
+ case 2: return new C(a, b);
+ } return new C(a, b, c);
+ } return C.apply(this, arguments);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
+ if(IS_PROTO){
+ (exports.virtual || (exports.virtual = {}))[key] = out;
+ // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
+ if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);
+ }
+ }
+ };
+ // type bitmap
+ $export.F = 1; // forced
+ $export.G = 2; // global
+ $export.S = 4; // static
+ $export.P = 8; // proto
+ $export.B = 16; // bind
+ $export.W = 32; // wrap
+ $export.U = 64; // safe
+ $export.R = 128; // real proto method for `library`
+ module.exports = $export;
+
+/***/ },
+/* 5 */
+/***/ function(module, exports) {
+
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+ if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
+
+/***/ },
+/* 6 */
+/***/ function(module, exports) {
+
+ var core = module.exports = {version: '2.4.0'};
+ if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+
+/***/ },
+/* 7 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // optional / simple context binding
+ var aFunction = __webpack_require__(8);
+ module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+ };
+
+/***/ },
+/* 8 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+ };
+
+/***/ },
+/* 9 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var dP = __webpack_require__(10)
+ , createDesc = __webpack_require__(18);
+ module.exports = __webpack_require__(14) ? function(object, key, value){
+ return dP.f(object, key, createDesc(1, value));
+ } : function(object, key, value){
+ object[key] = value;
+ return object;
+ };
+
+/***/ },
+/* 10 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var anObject = __webpack_require__(11)
+ , IE8_DOM_DEFINE = __webpack_require__(13)
+ , toPrimitive = __webpack_require__(17)
+ , dP = Object.defineProperty;
+
+ exports.f = __webpack_require__(14) ? Object.defineProperty : function defineProperty(O, P, Attributes){
+ anObject(O);
+ P = toPrimitive(P, true);
+ anObject(Attributes);
+ if(IE8_DOM_DEFINE)try {
+ return dP(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)O[P] = Attributes.value;
+ return O;
+ };
+
+/***/ },
+/* 11 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(12);
+ module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+ };
+
+/***/ },
+/* 12 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+ };
+
+/***/ },
+/* 13 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = !__webpack_require__(14) && !__webpack_require__(15)(function(){
+ return Object.defineProperty(__webpack_require__(16)('div'), 'a', {get: function(){ return 7; }}).a != 7;
+ });
+
+/***/ },
+/* 14 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Thank's IE8 for his funny defineProperty
+ module.exports = !__webpack_require__(15)(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+ });
+
+/***/ },
+/* 15 */
+/***/ function(module, exports) {
+
+ module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+ };
+
+/***/ },
+/* 16 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(12)
+ , document = __webpack_require__(5).document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+ module.exports = function(it){
+ return is ? document.createElement(it) : {};
+ };
+
+/***/ },
+/* 17 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.1 ToPrimitive(input [, PreferredType])
+ var isObject = __webpack_require__(12);
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
+ // and the second argument - flag - preferred type is a string
+ module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+ };
+
+/***/ },
+/* 18 */
+/***/ function(module, exports) {
+
+ module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+ };
+
+/***/ },
+/* 19 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 19.1.2.1 Object.assign(target, source, ...)
+ var getKeys = __webpack_require__(20)
+ , gOPS = __webpack_require__(35)
+ , pIE = __webpack_require__(36)
+ , toObject = __webpack_require__(37)
+ , IObject = __webpack_require__(24)
+ , $assign = Object.assign;
+
+ // should work with symbols and should have deterministic property order (V8 bug)
+ module.exports = !$assign || __webpack_require__(15)(function(){
+ var A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
+ }) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , aLen = arguments.length
+ , index = 1
+ , getSymbols = gOPS.f
+ , isEnum = pIE.f;
+ while(aLen > index){
+ var S = IObject(arguments[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ } return T;
+ } : $assign;
+
+/***/ },
+/* 20 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ var $keys = __webpack_require__(21)
+ , enumBugKeys = __webpack_require__(34);
+
+ module.exports = Object.keys || function keys(O){
+ return $keys(O, enumBugKeys);
+ };
+
+/***/ },
+/* 21 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var has = __webpack_require__(22)
+ , toIObject = __webpack_require__(23)
+ , arrayIndexOf = __webpack_require__(27)(false)
+ , IE_PROTO = __webpack_require__(31)('IE_PROTO');
+
+ module.exports = function(object, names){
+ var O = toIObject(object)
+ , i = 0
+ , result = []
+ , key;
+ for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
+ // Don't enum bug & hidden keys
+ while(names.length > i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+
+/***/ },
+/* 22 */
+/***/ function(module, exports) {
+
+ var hasOwnProperty = {}.hasOwnProperty;
+ module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+ };
+
+/***/ },
+/* 23 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
+ var IObject = __webpack_require__(24)
+ , defined = __webpack_require__(26);
+ module.exports = function(it){
+ return IObject(defined(it));
+ };
+
+/***/ },
+/* 24 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
+ var cof = __webpack_require__(25);
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+ };
+
+/***/ },
+/* 25 */
+/***/ function(module, exports) {
+
+ var toString = {}.toString;
+
+ module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+ };
+
+/***/ },
+/* 26 */
+/***/ function(module, exports) {
+
+ // 7.2.1 RequireObjectCoercible(argument)
+ module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+ };
+
+/***/ },
+/* 27 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // false -> Array#indexOf
+ // true -> Array#includes
+ var toIObject = __webpack_require__(23)
+ , toLength = __webpack_require__(28)
+ , toIndex = __webpack_require__(30);
+ module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index || 0;
+ } return !IS_INCLUDES && -1;
+ };
+ };
+
+/***/ },
+/* 28 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.15 ToLength
+ var toInteger = __webpack_require__(29)
+ , min = Math.min;
+ module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+ };
+
+/***/ },
+/* 29 */
+/***/ function(module, exports) {
+
+ // 7.1.4 ToInteger
+ var ceil = Math.ceil
+ , floor = Math.floor;
+ module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+ };
+
+/***/ },
+/* 30 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(29)
+ , max = Math.max
+ , min = Math.min;
+ module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+ };
+
+/***/ },
+/* 31 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var shared = __webpack_require__(32)('keys')
+ , uid = __webpack_require__(33);
+ module.exports = function(key){
+ return shared[key] || (shared[key] = uid(key));
+ };
+
+/***/ },
+/* 32 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(5)
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+ module.exports = function(key){
+ return store[key] || (store[key] = {});
+ };
+
+/***/ },
+/* 33 */
+/***/ function(module, exports) {
+
+ var id = 0
+ , px = Math.random();
+ module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+ };
+
+/***/ },
+/* 34 */
+/***/ function(module, exports) {
+
+ // IE 8- don't enum bug keys
+ module.exports = (
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
+ ).split(',');
+
+/***/ },
+/* 35 */
+/***/ function(module, exports) {
+
+ exports.f = Object.getOwnPropertySymbols;
+
+/***/ },
+/* 36 */
+/***/ function(module, exports) {
+
+ exports.f = {}.propertyIsEnumerable;
+
+/***/ },
+/* 37 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.13 ToObject(argument)
+ var defined = __webpack_require__(26);
+ module.exports = function(it){
+ return Object(defined(it));
+ };
+
+/***/ },
+/* 38 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = { "default": __webpack_require__(39), __esModule: true };
+
+/***/ },
+/* 39 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(40);
+ module.exports = __webpack_require__(6).Object.keys;
+
+/***/ },
+/* 40 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.14 Object.keys(O)
+ var toObject = __webpack_require__(37)
+ , $keys = __webpack_require__(20);
+
+ __webpack_require__(41)('keys', function(){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+ });
+
+/***/ },
+/* 41 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // most Object methods by ES6 should accept primitives
+ var $export = __webpack_require__(4)
+ , core = __webpack_require__(6)
+ , fails = __webpack_require__(15);
+ module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+ };
+
+/***/ },
+/* 42 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _affix = __webpack_require__(43);
+
+ var _affix2 = _interopRequireDefault(_affix);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _affix2.default;
+
+/***/ },
+/* 43 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(44)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\affix\\affix.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(49)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-e45ea8a6/affix.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 44 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-affix';
+
+ function getScroll(target, top) {
+ var prop = top ? 'pageYOffset' : 'pageXOffset';
+ var method = top ? 'scrollTop' : 'scrollLeft';
+
+ var ret = target[prop];
+
+ if (typeof ret !== 'number') {
+ ret = window.document.documentElement[method];
+ }
+
+ return ret;
+ }
+
+ function getOffset(element) {
+ var rect = element.getBoundingClientRect();
+
+ var scrollTop = getScroll(window, true);
+ var scrollLeft = getScroll(window);
+
+ var docEl = window.document.body;
+ var clientTop = docEl.clientTop || 0;
+ var clientLeft = docEl.clientLeft || 0;
+
+ return {
+ top: rect.top + scrollTop - clientTop,
+ left: rect.left + scrollLeft - clientLeft
+ };
+ }
+
+ exports.default = {
+ props: {
+ offsetTop: {
+ type: Number,
+ default: 0
+ },
+ offsetBottom: {
+ type: Number
+ }
+ },
+ data: function data() {
+ return {
+ affix: false,
+ styles: {}
+ };
+ },
+
+ computed: {
+ offsetType: function offsetType() {
+ var type = 'top';
+ if (this.offsetBottom >= 0) {
+ type = 'bottom';
+ }
+
+ return type;
+ },
+ classes: function classes() {
+ return [(0, _defineProperty3.default)({}, '' + prefixCls, this.affix)];
+ }
+ },
+ ready: function ready() {
+ window.addEventListener('scroll', this.handleScroll, false);
+ window.addEventListener('resize', this.handleScroll, false);
+ },
+ beforeDestroy: function beforeDestroy() {
+ window.removeEventListener('scroll', this.handleScroll, false);
+ window.removeEventListener('resize', this.handleScroll, false);
+ },
+
+ methods: {
+ handleScroll: function handleScroll() {
+ var affix = this.affix;
+ var scrollTop = getScroll(window, true);
+ var elOffset = getOffset(this.$el);
+ var windowHeight = window.innerHeight;
+ var elHeight = this.$el.getElementsByTagName('div')[0].offsetHeight;
+
+ if (elOffset.top - this.offsetTop < scrollTop && this.offsetType == 'top' && !affix) {
+ this.affix = true;
+ this.styles = {
+ top: this.offsetTop + 'px',
+ left: elOffset.left + 'px',
+ width: this.$el.offsetWidth + 'px'
+ };
+
+ this.$emit('on-change', true);
+ } else if (elOffset.top - this.offsetTop > scrollTop && this.offsetType == 'top' && affix) {
+ this.affix = false;
+ this.styles = null;
+
+ this.$emit('on-change', false);
+ }
+
+ if (elOffset.top + this.offsetBottom + elHeight > scrollTop + windowHeight && this.offsetType == 'bottom' && !affix) {
+ this.affix = true;
+ this.styles = {
+ bottom: this.offsetBottom + 'px',
+ left: elOffset.left + 'px',
+ width: this.$el.offsetWidth + 'px'
+ };
+
+ this.$emit('on-change', true);
+ } else if (elOffset.top + this.offsetBottom + elHeight < scrollTop + windowHeight && this.offsetType == 'bottom' && affix) {
+ this.affix = false;
+ this.styles = null;
+
+ this.$emit('on-change', false);
+ }
+ }
+ }
+ };
+
+/***/ },
+/* 45 */
+/***/ function(module, exports, __webpack_require__) {
+
+ "use strict";
+
+ exports.__esModule = true;
+
+ var _defineProperty = __webpack_require__(46);
+
+ var _defineProperty2 = _interopRequireDefault(_defineProperty);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = function (obj, key, value) {
+ if (key in obj) {
+ (0, _defineProperty2.default)(obj, key, {
+ value: value,
+ enumerable: true,
+ configurable: true,
+ writable: true
+ });
+ } else {
+ obj[key] = value;
+ }
+
+ return obj;
+ };
+
+/***/ },
+/* 46 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = { "default": __webpack_require__(47), __esModule: true };
+
+/***/ },
+/* 47 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(48);
+ var $Object = __webpack_require__(6).Object;
+ module.exports = function defineProperty(it, key, desc){
+ return $Object.defineProperty(it, key, desc);
+ };
+
+/***/ },
+/* 48 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(4);
+ // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+ $export($export.S + $export.F * !__webpack_require__(14), 'Object', {defineProperty: __webpack_require__(10).f});
+
+/***/ },
+/* 49 */
+/***/ function(module, exports) {
+
+ module.exports = "\n
\n";
+
+/***/ },
+/* 50 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _alert = __webpack_require__(51);
+
+ var _alert2 = _interopRequireDefault(_alert);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _alert2.default;
+
+/***/ },
+/* 51 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(52)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\alert\\alert.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(58)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-25b075c5/alert.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 52 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _icon = __webpack_require__(53);
+
+ var _icon2 = _interopRequireDefault(_icon);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-alert';
+
+ exports.default = {
+ components: { Icon: _icon2.default },
+ props: {
+ type: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['success', 'info', 'warning', 'error']);
+ },
+
+ default: 'info'
+ },
+ closable: {
+ type: Boolean,
+ default: false
+ },
+ showIcon: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data: function data() {
+ return {
+ closed: false,
+ desc: false
+ };
+ },
+
+ computed: {
+ wrapClasses: function wrapClasses() {
+ var _ref;
+
+ return ['' + prefixCls, prefixCls + '-' + this.type, (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-with-icon', this.showIcon), (0, _defineProperty3.default)(_ref, prefixCls + '-with-desc', this.desc), _ref)];
+ },
+ messageClasses: function messageClasses() {
+ return prefixCls + '-message';
+ },
+ descClasses: function descClasses() {
+ return prefixCls + '-desc';
+ },
+ closeClasses: function closeClasses() {
+ return prefixCls + '-close';
+ },
+ iconClasses: function iconClasses() {
+ return prefixCls + '-icon';
+ },
+ iconType: function iconType() {
+ var type = '';
+
+ switch (this.type) {
+ case 'success':
+ type = 'checkmark-circled';
+ break;
+ case 'info':
+ type = 'information-circled';
+ break;
+ case 'warning':
+ type = 'android-alert';
+ break;
+ case 'error':
+ type = 'close-circled';
+ break;
+ }
+
+ return type;
+ }
+ },
+ methods: {
+ close: function close(e) {
+ this.closed = true;
+ this.$emit('on-close', e);
+ }
+ },
+ compiled: function compiled() {
+ this.desc = this.$els.desc.innerHTML != '';
+ }
+ };
+
+/***/ },
+/* 53 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _icon = __webpack_require__(54);
+
+ var _icon2 = _interopRequireDefault(_icon);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _icon2.default;
+
+/***/ },
+/* 54 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(55)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\icon\\icon.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(56)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-1f8d2525/icon.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 55 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var prefixCls = 'ivu-icon';
+
+ exports.default = {
+ props: {
+ type: String,
+ size: [Number, String]
+ },
+ computed: {
+ classes: function classes() {
+ return prefixCls + ' ' + prefixCls + '-' + this.type;
+ },
+ styles: function styles() {
+ if (!!this.size) {
+ return {
+ 'font-size': this.size + 'px'
+ };
+ } else {
+ return {};
+ }
+ }
+ }
+ };
+
+/***/ },
+/* 56 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 57 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+ exports.oneOf = oneOf;
+ exports.camelcaseToHyphen = camelcaseToHyphen;
+ exports.getScrollBarSize = getScrollBarSize;
+ function oneOf(value, validList) {
+ for (var i = 0; i < validList.length; i++) {
+ if (value === validList[i]) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ function camelcaseToHyphen(str) {
+ return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
+ }
+
+ var cached = void 0;
+ function getScrollBarSize(fresh) {
+ if (fresh || cached === undefined) {
+ var inner = document.createElement('div');
+ inner.style.width = '100%';
+ inner.style.height = '200px';
+
+ var outer = document.createElement('div');
+ var outerStyle = outer.style;
+
+ outerStyle.position = 'absolute';
+ outerStyle.top = 0;
+ outerStyle.left = 0;
+ outerStyle.pointerEvents = 'none';
+ outerStyle.visibility = 'hidden';
+ outerStyle.width = '200px';
+ outerStyle.height = '150px';
+ outerStyle.overflow = 'hidden';
+
+ outer.appendChild(inner);
+
+ document.body.appendChild(outer);
+
+ var widthContained = inner.offsetWidth;
+ outer.style.overflow = 'scroll';
+ var widthScroll = inner.offsetWidth;
+
+ if (widthContained === widthScroll) {
+ widthScroll = outer.clientWidth;
+ }
+
+ document.body.removeChild(outer);
+
+ cached = widthContained - widthScroll;
+ }
+ return cached;
+ }
+
+/***/ },
+/* 58 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 59 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _backTop = __webpack_require__(60);
+
+ var _backTop2 = _interopRequireDefault(_backTop);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _backTop2.default;
+
+/***/ },
+/* 60 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(61)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\back-top\\back-top.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(62)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-54b2df65/back-top.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 61 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-back-top';
+
+ function getScroll(target, top) {
+ var prop = top ? 'pageYOffset' : 'pageXOffset';
+ var method = top ? 'scrollTop' : 'scrollLeft';
+
+ var ret = target[prop];
+
+ if (typeof ret !== 'number') {
+ ret = window.document.documentElement[method];
+ }
+
+ return ret;
+ }
+
+ exports.default = {
+ props: {
+ height: {
+ type: Number,
+ default: 400
+ },
+ bottom: {
+ type: Number,
+ default: 30
+ },
+ right: {
+ type: Number,
+ default: 30
+ }
+ },
+ data: function data() {
+ return {
+ backTop: false
+ };
+ },
+ ready: function ready() {
+ window.addEventListener('scroll', this.handleScroll, false);
+ window.addEventListener('resize', this.handleScroll, false);
+ },
+ beforeDestroy: function beforeDestroy() {
+ window.removeEventListener('scroll', this.handleScroll, false);
+ window.removeEventListener('resize', this.handleScroll, false);
+ },
+
+ computed: {
+ classes: function classes() {
+ return ['' + prefixCls, (0, _defineProperty3.default)({}, prefixCls + '-show', this.backTop)];
+ },
+ styles: function styles() {
+ return {
+ bottom: this.bottom + 'px',
+ right: this.right + 'px'
+ };
+ },
+ innerClasses: function innerClasses() {
+ return prefixCls + '-inner';
+ }
+ },
+ methods: {
+ handleScroll: function handleScroll() {
+ var backTop = this.backTop;
+ var scrollTop = getScroll(window, true);
+
+ if (this.height <= scrollTop && !backTop) {
+ this.backTop = true;
+ } else if (this.height > scrollTop && backTop) {
+ this.backTop = false;
+ }
+ },
+ back: function back() {
+ window.scrollTo(0, 0);
+ this.$emit('on-click');
+ }
+ }
+ };
+
+/***/ },
+/* 62 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 63 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _badge = __webpack_require__(64);
+
+ var _badge2 = _interopRequireDefault(_badge);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _badge2.default;
+
+/***/ },
+/* 64 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(65)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\badge\\badge.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(66)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-b8dd9bda/badge.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 65 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-badge';
+
+ exports.default = {
+ props: {
+ count: [Number, String],
+ dot: {
+ type: Boolean,
+ default: false
+ },
+ overflowCount: {
+ type: [Number, String],
+ default: 99
+ },
+ class: String
+ },
+ computed: {
+ classes: function classes() {
+ return '' + prefixCls;
+ },
+ dotClasses: function dotClasses() {
+ return prefixCls + '-dot';
+ },
+ countClasses: function countClasses() {
+ var _ref;
+
+ return [prefixCls + '-count', (_ref = {}, (0, _defineProperty3.default)(_ref, '' + this.class, !!this.class), (0, _defineProperty3.default)(_ref, prefixCls + '-count-alone', this.alone), _ref)];
+ },
+ finalCount: function finalCount() {
+ return parseInt(this.count) >= parseInt(this.overflowCount) ? this.overflowCount + '+' : this.count;
+ },
+ badge: function badge() {
+ var status = false;
+
+ if (this.count) {
+ status = !(parseInt(this.count) === 0);
+ }
+
+ if (this.dot) {
+ status = true;
+ if (this.count) {
+ if (parseInt(this.count) === 0) {
+ status = false;
+ }
+ }
+ }
+
+ return status;
+ }
+ },
+ data: function data() {
+ return {
+ alone: false
+ };
+ },
+ compiled: function compiled() {
+ var child_length = this.$els.badge.children.length;
+ if (child_length === 1) {
+ this.alone = true;
+ }
+ }
+ };
+
+/***/ },
+/* 66 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n \n\n\n \n {{ finalCount }}\n\n";
+
+/***/ },
+/* 67 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _breadcrumb = __webpack_require__(68);
+
+ var _breadcrumb2 = _interopRequireDefault(_breadcrumb);
+
+ var _breadcrumbItem = __webpack_require__(71);
+
+ var _breadcrumbItem2 = _interopRequireDefault(_breadcrumbItem);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ _breadcrumb2.default.Item = _breadcrumbItem2.default;
+ exports.default = _breadcrumb2.default;
+
+/***/ },
+/* 68 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(69)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\breadcrumb\\breadcrumb.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(70)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-6fc829b6/breadcrumb.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 69 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var prefixCls = 'ivu-breadcrumb';
+
+ exports.default = {
+ props: {
+ separator: {
+ type: String,
+ default: '/'
+ }
+ },
+ computed: {
+ classes: function classes() {
+ return '' + prefixCls;
+ }
+ },
+ compiled: function compiled() {
+ this.updateChildren();
+ },
+
+ methods: {
+ updateChildren: function updateChildren() {
+ var _this = this;
+
+ this.$children.forEach(function (child) {
+ child.separator = _this.separator;
+ });
+ }
+ },
+ watch: {
+ separator: function separator() {
+ this.updateChildren();
+ }
+ }
+ };
+
+/***/ },
+/* 70 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n
\n";
+
+/***/ },
+/* 71 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(72)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\breadcrumb\\breadcrumb-item.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(73)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-493f06eb/breadcrumb-item.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 72 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var prefixCls = 'ivu-breadcrumb-item';
+
+ exports.default = {
+ props: {
+ href: {
+ type: String
+ },
+ separator: {
+ type: String,
+ default: '/'
+ }
+ },
+ computed: {
+ linkClasses: function linkClasses() {
+ return prefixCls + '-link';
+ },
+ separatorClasses: function separatorClasses() {
+ return prefixCls + '-separator';
+ }
+ }
+ };
+
+/***/ },
+/* 73 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n \n \n \n \n \n \n {{{ separator }}}\n \n\n";
+
+/***/ },
+/* 74 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _button = __webpack_require__(75);
+
+ var _button2 = _interopRequireDefault(_button);
+
+ var _buttonGroup = __webpack_require__(78);
+
+ var _buttonGroup2 = _interopRequireDefault(_buttonGroup);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ _button2.default.Group = _buttonGroup2.default;
+ exports.default = _button2.default;
+
+/***/ },
+/* 75 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(76)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\button\\button.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(77)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-9a708476/button.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 76 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _icon = __webpack_require__(53);
+
+ var _icon2 = _interopRequireDefault(_icon);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-btn';
+ var iconPrefixCls = 'ivu-icon';
+
+ exports.default = {
+ components: { Icon: _icon2.default },
+ props: {
+ type: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['primary', 'ghost', 'dashed', 'text']);
+ }
+ },
+ shape: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['circle', 'circle-outline']);
+ }
+ },
+ size: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['small', 'large']);
+ }
+ },
+ loading: Boolean,
+ disabled: Boolean,
+ htmlType: {
+ default: 'button',
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['button', 'submit', 'reset']);
+ }
+ },
+ icon: String
+ },
+ data: function data() {
+ return {
+ showSlot: true
+ };
+ },
+
+ computed: {
+ classes: function classes() {
+ var _ref;
+
+ return ['' + prefixCls, (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.type, !!this.type), (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.shape, !!this.shape), (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.size, !!this.size), (0, _defineProperty3.default)(_ref, prefixCls + '-loading', this.loading != null && this.loading), (0, _defineProperty3.default)(_ref, prefixCls + '-icon-only', !this.showSlot && (!!this.icon || this.loading)), _ref)];
+ },
+ loadingIconClasses: function loadingIconClasses() {
+ return iconPrefixCls + ' ivu-load-loop ' + iconPrefixCls + '-load-c';
+ },
+ typeIconClasses: function typeIconClasses() {
+ return ['' + iconPrefixCls, (0, _defineProperty3.default)({}, iconPrefixCls + '-' + this.icon, !!this.icon)];
+ }
+ },
+ ready: function ready() {
+ this.showSlot = this.$els.slot.innerHTML !== '';
+ }
+ };
+
+/***/ },
+/* 77 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 78 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(79)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\button\\button-group.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(80)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-192f2d12/button-group.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 79 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-btn-group';
+
+ exports.default = {
+ props: {
+ size: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['small', 'large']);
+ }
+ },
+ shape: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['circle', 'circle-outline']);
+ }
+ }
+ },
+ computed: {
+ classes: function classes() {
+ var _ref;
+
+ return ['' + prefixCls, (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.size, !!this.size), (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.shape, !!this.shape), _ref)];
+ }
+ }
+ };
+
+/***/ },
+/* 80 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n
\n";
+
+/***/ },
+/* 81 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _card = __webpack_require__(82);
+
+ var _card2 = _interopRequireDefault(_card);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _card2.default;
+
+/***/ },
+/* 82 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(83)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\card\\card.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(84)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-4f3508f6/card.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 83 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-card';
+
+ exports.default = {
+ props: {
+ bordered: {
+ type: Boolean,
+ default: true
+ },
+ disHover: {
+ type: Boolean,
+ default: false
+ },
+ shadow: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data: function data() {
+ return {
+ showHead: true,
+ showExtra: true
+ };
+ },
+
+ computed: {
+ classes: function classes() {
+ var _ref;
+
+ return ['' + prefixCls, (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-bordered', this.bordered && !this.shadow), (0, _defineProperty3.default)(_ref, prefixCls + '-dis-hover', this.disHover || this.shadow), (0, _defineProperty3.default)(_ref, prefixCls + '-shadow', this.shadow), _ref)];
+ },
+ headClasses: function headClasses() {
+ return prefixCls + '-head';
+ },
+ extraClasses: function extraClasses() {
+ return prefixCls + '-extra';
+ },
+ bodyClasses: function bodyClasses() {
+ return prefixCls + '-body';
+ }
+ },
+ compiled: function compiled() {
+ this.showHead = this.$els.head.innerHTML != '';
+ this.showExtra = this.$els.extra.innerHTML != '';
+ }
+ };
+
+/***/ },
+/* 84 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 85 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _checkbox = __webpack_require__(86);
+
+ var _checkbox2 = _interopRequireDefault(_checkbox);
+
+ var _checkboxGroup = __webpack_require__(89);
+
+ var _checkboxGroup2 = _interopRequireDefault(_checkboxGroup);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ _checkbox2.default.Group = _checkboxGroup2.default;
+ exports.default = _checkbox2.default;
+
+/***/ },
+/* 86 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(87)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\checkbox\\checkbox.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(88)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-8b0b8436/checkbox.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 87 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-checkbox';
+
+ exports.default = {
+ props: {
+ disabled: {
+ type: Boolean,
+ default: false
+ },
+ value: {
+ type: [String, Number, Boolean]
+ },
+ checked: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data: function data() {
+ return {
+ model: [],
+ selected: false,
+ group: false
+ };
+ },
+
+ computed: {
+ wrapClasses: function wrapClasses() {
+ var _ref;
+
+ return [prefixCls + '-wrapper', (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-group-item', this.group), (0, _defineProperty3.default)(_ref, prefixCls + '-wrapper-checked', this.selected), (0, _defineProperty3.default)(_ref, prefixCls + '-wrapper-disabled', this.disabled), _ref)];
+ },
+ checkboxClasses: function checkboxClasses() {
+ var _ref2;
+
+ return ['' + prefixCls, (_ref2 = {}, (0, _defineProperty3.default)(_ref2, prefixCls + '-checked', this.selected), (0, _defineProperty3.default)(_ref2, prefixCls + '-disabled', this.disabled), _ref2)];
+ },
+ innerClasses: function innerClasses() {
+ return prefixCls + '-inner';
+ },
+ inputClasses: function inputClasses() {
+ return prefixCls + '-input';
+ }
+ },
+ ready: function ready() {
+ if (!this.group) {
+ this.updateModel();
+ }
+ },
+
+ methods: {
+ change: function change(event) {
+ if (this.disabled) {
+ return false;
+ }
+
+ this.selected = event.target.checked;
+
+ if (this.group) {
+ this.$parent.change(this.model);
+ } else {
+ this.$emit('on-change', this.checked);
+ }
+ },
+ updateModel: function updateModel() {
+ this.selected = this.checked;
+ }
+ },
+ watch: {
+ checked: function checked() {
+ this.updateModel();
+ }
+ }
+ };
+
+/***/ },
+/* 88 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 89 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(90)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\checkbox\\checkbox-group.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(91)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-affb5cd2/checkbox-group.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 90 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var prefixCls = 'ivu-checkbox-group';
+
+ exports.default = {
+ props: {
+ model: {
+ type: Array,
+ default: []
+ }
+ },
+ computed: {
+ classes: function classes() {
+ return '' + prefixCls;
+ }
+ },
+ compiled: function compiled() {
+ this.updateModel(true);
+ },
+
+ methods: {
+ updateModel: function updateModel(update) {
+ var model = this.model;
+
+ this.$children.forEach(function (child) {
+ child.model = model;
+
+ if (update) {
+ child.selected = model.indexOf(child.value) >= 0;
+ child.group = true;
+ }
+ });
+ },
+ change: function change(data) {
+ this.model = data;
+ this.$emit('on-change', data);
+ }
+ },
+ watch: {
+ model: function model(val, oldVal) {
+ if (val == oldVal) {
+ this.updateModel();
+ } else {
+ this.updateModel(true);
+ }
+ }
+ }
+ };
+
+/***/ },
+/* 91 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n
\n";
+
+/***/ },
+/* 92 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _circle = __webpack_require__(93);
+
+ var _circle2 = _interopRequireDefault(_circle);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _circle2.default;
+
+/***/ },
+/* 93 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(94)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\circle\\circle.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(95)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-54ccb005/circle.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 94 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _assist = __webpack_require__(57);
+
+ var prefixCls = 'ivu-chart-circle';
+
+ exports.default = {
+ props: {
+ percent: {
+ type: Number,
+ default: 0
+ },
+ size: {
+ type: Number,
+ default: 120
+ },
+ strokeWidth: {
+ type: Number,
+ default: 6
+ },
+ strokeColor: {
+ type: String,
+ default: '#2db7f5'
+ },
+ strokeLinecap: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['square', 'round']);
+ },
+
+ default: 'round'
+ },
+ trailWidth: {
+ type: Number,
+ default: 5
+ },
+ trailColor: {
+ type: String,
+ default: '#eaeef2'
+ }
+ },
+ computed: {
+ circleSize: function circleSize() {
+ return {
+ width: this.size + 'px',
+ height: this.size + 'px'
+ };
+ },
+ radius: function radius() {
+ return 50 - this.strokeWidth / 2;
+ },
+ pathString: function pathString() {
+ return 'M 50,50 m 0,-' + this.radius + '\n a ' + this.radius + ',' + this.radius + ' 0 1 1 0,' + 2 * this.radius + '\n a ' + this.radius + ',' + this.radius + ' 0 1 1 0,-' + 2 * this.radius;
+ },
+ len: function len() {
+ return Math.PI * 2 * this.radius;
+ },
+ pathStyle: function pathStyle() {
+ return {
+ 'stroke-dasharray': this.len + 'px ' + this.len + 'px',
+ 'stroke-dashoffset': (100 - this.percent) / 100 * this.len + 'px',
+ 'transition': 'stroke-dashoffset 0.6s ease 0s, stroke 0.6s ease'
+ };
+ },
+ wrapClasses: function wrapClasses() {
+ return '' + prefixCls;
+ },
+ innerClasses: function innerClasses() {
+ return prefixCls + '-inner';
+ }
+ }
+ };
+
+/***/ },
+/* 95 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 96 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _collapse = __webpack_require__(97);
+
+ var _collapse2 = _interopRequireDefault(_collapse);
+
+ var _panel = __webpack_require__(100);
+
+ var _panel2 = _interopRequireDefault(_panel);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ _collapse2.default.Panel = _panel2.default;
+ exports.default = _collapse2.default;
+
+/***/ },
+/* 97 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(98)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\collapse\\collapse.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(99)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-3e3de525/collapse.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 98 */
+/***/ function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var prefixCls = 'ivu-collapse';
+
+ exports.default = {
+ props: {
+ accordion: {
+ type: Boolean,
+ default: false
+ },
+ activeKey: {
+ type: [Array, String]
+ }
+ },
+ computed: {
+ classes: function classes() {
+ return '' + prefixCls;
+ }
+ },
+ compiled: function compiled() {
+ this.setActive();
+ },
+
+ methods: {
+ setActive: function setActive() {
+ var activeKey = this.getActiveKey();
+
+ this.$children.forEach(function (child, index) {
+ var key = child.key || index.toString();
+ var isActive = false;
+
+ if (self.accordion) {
+ isActive = activeKey === key;
+ } else {
+ isActive = activeKey.indexOf(key) > -1;
+ }
+
+ child.isActive = isActive;
+ child.index = index;
+ });
+ },
+ getActiveKey: function getActiveKey() {
+ var activeKey = this.activeKey || [];
+ var accordion = this.accordion;
+
+ if (!Array.isArray(activeKey)) {
+ activeKey = [activeKey];
+ }
+
+ if (accordion && activeKey.length > 1) {
+ activeKey = [activeKey[0]];
+ }
+
+ for (var i = 0; i < activeKey.length; i++) {
+ activeKey[i] = activeKey[i].toString();
+ }
+
+ return activeKey;
+ },
+ toggle: function toggle(data) {
+ var key = data.key.toString();
+ var newActiveKey = [];
+
+ if (this.accordion) {
+ if (!data.isActive) {
+ newActiveKey.push(key);
+ }
+ } else {
+ var activeKey = this.getActiveKey();
+ var keyIndex = activeKey.indexOf(key);
+
+ if (data.isActive) {
+ if (keyIndex > -1) {
+ activeKey.splice(keyIndex, 1);
+ }
+ } else {
+ if (keyIndex < 0) {
+ activeKey.push(key);
+ }
+ }
+
+ newActiveKey = activeKey;
+ }
+
+ this.activeKey = newActiveKey;
+ this.$emit('on-change', newActiveKey);
+ }
+ },
+ watch: {
+ activeKey: function activeKey() {
+ this.setActive();
+ }
+ }
+ };
+
+/***/ },
+/* 99 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n \n
\n";
+
+/***/ },
+/* 100 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(101)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\collapse\\panel.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(102)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-7af8693c/panel.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 101 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _icon = __webpack_require__(53);
+
+ var _icon2 = _interopRequireDefault(_icon);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-collapse';
+
+ exports.default = {
+ components: { Icon: _icon2.default },
+ props: {
+ key: {
+ type: String
+ }
+ },
+ data: function data() {
+ return {
+ index: 0,
+ isActive: false
+ };
+ },
+
+ computed: {
+ itemClasses: function itemClasses() {
+ return [prefixCls + '-item', (0, _defineProperty3.default)({}, prefixCls + '-item-active', this.isActive)];
+ },
+ headerClasses: function headerClasses() {
+ return prefixCls + '-header';
+ },
+ concentClasses: function concentClasses() {
+ return prefixCls + '-content';
+ },
+ boxClasses: function boxClasses() {
+ return prefixCls + '-content-box';
+ }
+ },
+ methods: {
+ toggle: function toggle() {
+ this.$parent.toggle({
+ key: this.key || this.index,
+ isActive: this.isActive
+ });
+ }
+ }
+ };
+
+/***/ },
+/* 102 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 103 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _input = __webpack_require__(104);
+
+ var _input2 = _interopRequireDefault(_input);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _input2.default;
+
+/***/ },
+/* 104 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(105)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\input\\input.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(106)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-68330bbe/input.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 105 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-input';
+
+ exports.default = {
+ props: {
+ type: {
+ type: String,
+ default: 'text'
+ },
+ value: {
+ type: [String, Number],
+ default: '',
+ twoWay: true
+ },
+ placeholder: String,
+ name: String,
+ size: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['small', 'large']);
+ }
+ }
+ },
+ data: function data() {
+ return {};
+ },
+
+ computed: {
+ classes: function classes() {
+ return ['' + prefixCls, (0, _defineProperty3.default)({}, prefixCls + '-' + this.size, !!this.size)];
+ }
+ }
+ };
+
+/***/ },
+/* 106 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 107 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _inputNumber = __webpack_require__(108);
+
+ var _inputNumber2 = _interopRequireDefault(_inputNumber);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ exports.default = _inputNumber2.default;
+
+/***/ },
+/* 108 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(109)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\input-number\\input-number.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(110)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-c12ba9f6/input-number.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 109 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-input-number';
+ var iconPrefixCls = 'ivu-icon';
+
+ function isValueNumber(value) {
+ return (/(^-?[0-9]+\.{1}\d+$)|(^-?[1-9][0-9]*$)/.test(value + '')
+ );
+ }
+ function addNum(num1, num2) {
+ var sq1, sq2, m;
+ try {
+ sq1 = num1.toString().split(".")[1].length;
+ } catch (e) {
+ sq1 = 0;
+ }
+ try {
+ sq2 = num2.toString().split(".")[1].length;
+ } catch (e) {
+ sq2 = 0;
+ }
+
+ m = Math.pow(10, Math.max(sq1, sq2));
+ return (num1 * m + num2 * m) / m;
+ }
+
+ exports.default = {
+ props: {
+ max: {
+ type: Number,
+ default: Infinity
+ },
+ min: {
+ type: Number,
+ default: -Infinity
+ },
+ step: {
+ type: Number,
+ default: 1
+ },
+ value: {
+ type: Number,
+ default: 1
+ },
+ size: {
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['small', 'large']);
+ }
+ },
+ disabled: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data: function data() {
+ return {
+ focused: false,
+ upDisabled: false,
+ downDisabled: false
+ };
+ },
+
+ computed: {
+ wrapClasses: function wrapClasses() {
+ var _ref;
+
+ return ['' + prefixCls, (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-' + this.size, !!this.size), (0, _defineProperty3.default)(_ref, prefixCls + '-disabled', this.disabled), (0, _defineProperty3.default)(_ref, prefixCls + '-focused', this.focused), _ref)];
+ },
+ handlerClasses: function handlerClasses() {
+ return prefixCls + '-handler-wrap';
+ },
+ upClasses: function upClasses() {
+ return [prefixCls + '-handler', prefixCls + '-handler-up', (0, _defineProperty3.default)({}, prefixCls + '-handler-up-disabled', this.upDisabled)];
+ },
+ innerUpClasses: function innerUpClasses() {
+ return prefixCls + '-handler-up-inner ' + iconPrefixCls + ' ' + iconPrefixCls + '-ios-arrow-up';
+ },
+ downClasses: function downClasses() {
+ return [prefixCls + '-handler', prefixCls + '-handler-down', (0, _defineProperty3.default)({}, prefixCls + '-handler-down-disabled', this.downDisabled)];
+ },
+ innerDownClasses: function innerDownClasses() {
+ return prefixCls + '-handler-down-inner ' + iconPrefixCls + ' ' + iconPrefixCls + '-ios-arrow-down';
+ },
+ inputWrapClasses: function inputWrapClasses() {
+ return prefixCls + '-input-wrap';
+ },
+ inputClasses: function inputClasses() {
+ return prefixCls + '-input';
+ }
+ },
+ methods: {
+ preventDefault: function preventDefault(e) {
+ e.preventDefault();
+ },
+ up: function up() {
+ if (this.upDisabled) {
+ return false;
+ }
+ this.changeStep('up');
+ },
+ down: function down() {
+ if (this.downDisabled) {
+ return false;
+ }
+ this.changeStep('down');
+ },
+ changeStep: function changeStep(type) {
+ if (this.disabled) {
+ return false;
+ }
+
+ var val = Number(this.value);
+ var step = Number(this.step);
+ if (isNaN(val)) {
+ return false;
+ }
+
+ if (type == 'up') {
+ val = addNum(val, step);
+ } else if (type == 'down') {
+ val = addNum(val, -step);
+ }
+ this.setValue(val);
+ },
+ setValue: function setValue(val) {
+ var _this = this;
+
+ this.$nextTick(function () {
+ _this.value = val;
+ });
+
+ this.$emit('on-change', val);
+ },
+ focus: function focus() {
+ this.focused = true;
+ },
+ blur: function blur() {
+ this.focused = false;
+ },
+ keyDown: function keyDown(e) {
+ if (e.keyCode === 38) {
+ e.preventDefault();
+ this.up();
+ } else if (e.keyCode === 40) {
+ e.preventDefault();
+ this.down();
+ }
+ },
+ change: function change(event) {
+ var val = event.target.value.trim();
+
+ var max = this.max;
+ var min = this.min;
+
+ if (isValueNumber(val)) {
+ val = Number(val);
+ this.value = val;
+
+ if (val > max) {
+ this.setValue(max);
+ } else if (val < min) {
+ this.setValue(min);
+ } else {
+ this.setValue(val);
+ }
+ } else {
+ event.target.value = this.value;
+ }
+ },
+ changeVal: function changeVal(val) {
+ if (isValueNumber(val) || val === 0) {
+ val = Number(val);
+ var step = this.step;
+
+ this.upDisabled = val + step > this.max;
+ this.downDisabled = val - step < this.min;
+ } else {
+ this.upDisabled = true;
+ this.downDisabled = true;
+ }
+ }
+ },
+ ready: function ready() {
+ this.changeVal(this.value);
+ },
+
+ watch: {
+ value: function value(val) {
+ this.changeVal(val);
+ }
+ }
+ };
+
+/***/ },
+/* 110 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 111 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _loadingBar = __webpack_require__(112);
+
+ var _loadingBar2 = _interopRequireDefault(_loadingBar);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var loadingBarInstance = void 0;
+ var color = 'primary';
+ var failedColor = 'error';
+ var height = 2;
+ var timer = void 0;
+
+ function getLoadingBarInstance() {
+ loadingBarInstance = loadingBarInstance || _loadingBar2.default.newInstance({
+ color: color,
+ failedColor: failedColor,
+ height: height
+ });
+
+ return loadingBarInstance;
+ }
+
+ function _update(options) {
+ var instance = getLoadingBarInstance();
+
+ instance.update(options);
+ }
+
+ function hide() {
+ setTimeout(function () {
+ _update({
+ show: false
+ });
+ setTimeout(function () {
+ _update({
+ percent: 0
+ });
+ }, 200);
+ }, 800);
+ }
+
+ function clearTimer() {
+ if (timer) {
+ clearInterval(timer);
+ timer = null;
+ }
+ }
+
+ exports.default = {
+ start: function start() {
+ var percent = 0;
+
+ _update({
+ percent: percent,
+ status: 'success',
+ show: true
+ });
+
+ timer = setInterval(function () {
+ percent += Math.floor(Math.random() * 3 + 5);
+ if (percent > 95) {
+ clearTimer();
+ }
+ _update({
+ percent: percent,
+ status: 'success',
+ show: true
+ });
+ }, 200);
+ },
+ update: function update(percent) {
+ clearTimer();
+ _update({
+ percent: percent,
+ status: 'success',
+ show: true
+ });
+ },
+ finish: function finish() {
+ clearTimer();
+ _update({
+ percent: 100,
+ status: 'success',
+ show: true
+ });
+ hide();
+ },
+ error: function error() {
+ clearTimer();
+ _update({
+ percent: 100,
+ status: 'error',
+ show: true
+ });
+ hide();
+ },
+ config: function config(options) {
+ if (options.color) {
+ color = options.color;
+ }
+ if (options.failedColor) {
+ failedColor = options.failedColor;
+ }
+ if (options.height) {
+ height = options.height;
+ }
+ },
+ destroy: function destroy() {
+ clearTimer();
+ var instance = getLoadingBarInstance();
+ loadingBarInstance = null;
+ instance.destroy();
+ }
+ };
+
+/***/ },
+/* 112 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _keys = __webpack_require__(38);
+
+ var _keys2 = _interopRequireDefault(_keys);
+
+ var _loadingBar = __webpack_require__(113);
+
+ var _loadingBar2 = _interopRequireDefault(_loadingBar);
+
+ var _vue = __webpack_require__(116);
+
+ var _vue2 = _interopRequireDefault(_vue);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ _loadingBar2.default.newInstance = function (properties) {
+ var _props = properties || {};
+
+ var props = '';
+ (0, _keys2.default)(_props).forEach(function (prop) {
+ props += ' :' + (0, _assist.camelcaseToHyphen)(prop) + '=' + prop;
+ });
+
+ var div = document.createElement('div');
+ div.innerHTML = '';
+ document.body.appendChild(div);
+
+ var loading_bar = new _vue2.default({
+ el: div,
+ data: _props,
+ components: { LoadingBar: _loadingBar2.default }
+ }).$children[0];
+
+ return {
+ update: function update(options) {
+ if ('percent' in options) {
+ loading_bar.percent = options.percent;
+ }
+ if (options.status) {
+ loading_bar.status = options.status;
+ }
+ if ('show' in options) {
+ loading_bar.show = options.show;
+ }
+ },
+
+ component: loading_bar,
+ destroy: function destroy() {
+ document.body.removeChild(div);
+ }
+ };
+ };
+
+ exports.default = _loadingBar2.default;
+
+/***/ },
+/* 113 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var __vue_script__, __vue_template__
+ var __vue_styles__ = {}
+ __vue_script__ = __webpack_require__(114)
+ if (__vue_script__ &&
+ __vue_script__.__esModule &&
+ Object.keys(__vue_script__).length > 1) {
+ console.warn("[vue-loader] src\\components\\loading-bar\\loading-bar.vue: named exports in *.vue files are ignored.")}
+ __vue_template__ = __webpack_require__(115)
+ module.exports = __vue_script__ || {}
+ if (module.exports.__esModule) module.exports = module.exports.default
+ var __vue_options__ = typeof module.exports === "function" ? (module.exports.options || (module.exports.options = {})) : module.exports
+ if (__vue_template__) {
+ __vue_options__.template = __vue_template__
+ }
+ if (!__vue_options__.computed) __vue_options__.computed = {}
+ Object.keys(__vue_styles__).forEach(function (key) {
+ var module = __vue_styles__[key]
+ __vue_options__.computed[key] = function () { return module }
+ })
+ if (false) {(function () { module.hot.accept()
+ var hotAPI = require("vue-hot-reload-api")
+ hotAPI.install(require("vue"), false)
+ if (!hotAPI.compatible) return
+ var id = "_v-f209aade/loading-bar.vue"
+ if (!module.hot.data) {
+ hotAPI.createRecord(id, module.exports)
+ } else {
+ hotAPI.update(id, module.exports, __vue_template__)
+ }
+ })()}
+
+/***/ },
+/* 114 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ var _defineProperty2 = __webpack_require__(45);
+
+ var _defineProperty3 = _interopRequireDefault(_defineProperty2);
+
+ var _assist = __webpack_require__(57);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ var prefixCls = 'ivu-loading-bar';
+
+ exports.default = {
+ props: {
+ percent: {
+ type: Number,
+ default: 0
+ },
+ color: {
+ type: String,
+ default: 'primary'
+ },
+ failedColor: {
+ type: String,
+ default: 'error'
+ },
+ height: {
+ type: Number,
+ default: 2
+ },
+ status: {
+ type: String,
+ validator: function validator(value) {
+ return (0, _assist.oneOf)(value, ['success', 'error']);
+ },
+
+ default: 'success'
+ },
+ show: {
+ type: Boolean,
+ default: false
+ }
+ },
+ computed: {
+ classes: function classes() {
+ return '' + prefixCls;
+ },
+ innerClasses: function innerClasses() {
+ var _ref;
+
+ return [prefixCls + '-inner', (_ref = {}, (0, _defineProperty3.default)(_ref, prefixCls + '-inner-color-primary', this.color === 'primary' && this.status === 'success'), (0, _defineProperty3.default)(_ref, prefixCls + '-inner-failed-color-error', this.failedColor === 'error' && this.status === 'error'), _ref)];
+ },
+ outerStyles: function outerStyles() {
+ return {
+ height: this.height + 'px'
+ };
+ },
+ styles: function styles() {
+ var style = {
+ width: this.percent + '%',
+ height: this.height + 'px'
+ };
+
+ if (this.color !== 'primary' && this.status === 'success') {
+ style.backgroundColor = this.color;
+ }
+
+ if (this.failedColor !== 'error' && this.status === 'error') {
+ style.backgroundColor = this.failedColor;
+ }
+
+ return style;
+ }
+ }
+ };
+
+/***/ },
+/* 115 */
+/***/ function(module, exports) {
+
+ module.exports = "\n\n";
+
+/***/ },
+/* 116 */
+/***/ function(module, exports, __webpack_require__) {
+
+ /*!
+ * Vue.js v1.0.28
+ * (c) 2016 Evan You
+ * Released under the MIT License.
+ */
+ 'use strict';
+
+ function set(obj, key, val) {
+ if (hasOwn(obj, key)) {
+ obj[key] = val;
+ return;
+ }
+ if (obj._isVue) {
+ set(obj._data, key, val);
+ return;
+ }
+ var ob = obj.__ob__;
+ if (!ob) {
+ obj[key] = val;
+ return;
+ }
+ ob.convert(key, val);
+ ob.dep.notify();
+ if (ob.vms) {
+ var i = ob.vms.length;
+ while (i--) {
+ var vm = ob.vms[i];
+ vm._proxy(key);
+ vm._digest();
+ }
+ }
+ return val;
+ }
+
+ /**
+ * Delete a property and trigger change if necessary.
+ *
+ * @param {Object} obj
+ * @param {String} key
+ */
+
+ function del(obj, key) {
+ if (!hasOwn(obj, key)) {
+ return;
+ }
+ delete obj[key];
+ var ob = obj.__ob__;
+ if (!ob) {
+ if (obj._isVue) {
+ delete obj._data[key];
+ obj._digest();
+ }
+ return;
+ }
+ ob.dep.notify();
+ if (ob.vms) {
+ var i = ob.vms.length;
+ while (i--) {
+ var vm = ob.vms[i];
+ vm._unproxy(key);
+ vm._digest();
+ }
+ }
+ }
+
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
+ /**
+ * Check whether the object has the property.
+ *
+ * @param {Object} obj
+ * @param {String} key
+ * @return {Boolean}
+ */
+
+ function hasOwn(obj, key) {
+ return hasOwnProperty.call(obj, key);
+ }
+
+ /**
+ * Check if an expression is a literal value.
+ *
+ * @param {String} exp
+ * @return {Boolean}
+ */
+
+ var literalValueRE = /^\s?(true|false|-?[\d\.]+|'[^']*'|"[^"]*")\s?$/;
+
+ function isLiteral(exp) {
+ return literalValueRE.test(exp);
+ }
+
+ /**
+ * Check if a string starts with $ or _
+ *
+ * @param {String} str
+ * @return {Boolean}
+ */
+
+ function isReserved(str) {
+ var c = (str + '').charCodeAt(0);
+ return c === 0x24 || c === 0x5F;
+ }
+
+ /**
+ * Guard text output, make sure undefined outputs
+ * empty string
+ *
+ * @param {*} value
+ * @return {String}
+ */
+
+ function _toString(value) {
+ return value == null ? '' : value.toString();
+ }
+
+ /**
+ * Check and convert possible numeric strings to numbers
+ * before setting back to data
+ *
+ * @param {*} value
+ * @return {*|Number}
+ */
+
+ function toNumber(value) {
+ if (typeof value !== 'string') {
+ return value;
+ } else {
+ var parsed = Number(value);
+ return isNaN(parsed) ? value : parsed;
+ }
+ }
+
+ /**
+ * Convert string boolean literals into real booleans.
+ *
+ * @param {*} value
+ * @return {*|Boolean}
+ */
+
+ function toBoolean(value) {
+ return value === 'true' ? true : value === 'false' ? false : value;
+ }
+
+ /**
+ * Strip quotes from a string
+ *
+ * @param {String} str
+ * @return {String | false}
+ */
+
+ function stripQuotes(str) {
+ var a = str.charCodeAt(0);
+ var b = str.charCodeAt(str.length - 1);
+ return a === b && (a === 0x22 || a === 0x27) ? str.slice(1, -1) : str;
+ }
+
+ /**
+ * Camelize a hyphen-delimited string.
+ *
+ * @param {String} str
+ * @return {String}
+ */
+
+ var camelizeRE = /-(\w)/g;
+
+ function camelize(str) {
+ return str.replace(camelizeRE, toUpper);
+ }
+
+ function toUpper(_, c) {
+ return c ? c.toUpperCase() : '';
+ }
+
+ /**
+ * Hyphenate a camelCase string.
+ *
+ * @param {String} str
+ * @return {String}
+ */
+
+ var hyphenateRE = /([^-])([A-Z])/g;
+
+ function hyphenate(str) {
+ return str.replace(hyphenateRE, '$1-$2').replace(hyphenateRE, '$1-$2').toLowerCase();
+ }
+
+ /**
+ * Converts hyphen/underscore/slash delimitered names into
+ * camelized classNames.
+ *
+ * e.g. my-component => MyComponent
+ * some_else => SomeElse
+ * some/comp => SomeComp
+ *
+ * @param {String} str
+ * @return {String}
+ */
+
+ var classifyRE = /(?:^|[-_\/])(\w)/g;
+
+ function classify(str) {
+ return str.replace(classifyRE, toUpper);
+ }
+
+ /**
+ * Simple bind, faster than native
+ *
+ * @param {Function} fn
+ * @param {Object} ctx
+ * @return {Function}
+ */
+
+ function bind(fn, ctx) {
+ return function (a) {
+ var l = arguments.length;
+ return l ? l > 1 ? fn.apply(ctx, arguments) : fn.call(ctx, a) : fn.call(ctx);
+ };
+ }
+
+ /**
+ * Convert an Array-like object to a real Array.
+ *
+ * @param {Array-like} list
+ * @param {Number} [start] - start index
+ * @return {Array}
+ */
+
+ function toArray(list, start) {
+ start = start || 0;
+ var i = list.length - start;
+ var ret = new Array(i);
+ while (i--) {
+ ret[i] = list[i + start];
+ }
+ return ret;
+ }
+
+ /**
+ * Mix properties into target object.
+ *
+ * @param {Object} to
+ * @param {Object} from
+ */
+
+ function extend(to, from) {
+ var keys = Object.keys(from);
+ var i = keys.length;
+ while (i--) {
+ to[keys[i]] = from[keys[i]];
+ }
+ return to;
+ }
+
+ /**
+ * Quick object check - this is primarily used to tell
+ * Objects from primitive values when we know the value
+ * is a JSON-compliant type.
+ *
+ * @param {*} obj
+ * @return {Boolean}
+ */
+
+ function isObject(obj) {
+ return obj !== null && typeof obj === 'object';
+ }
+
+ /**
+ * Strict object type check. Only returns true
+ * for plain JavaScript objects.
+ *
+ * @param {*} obj
+ * @return {Boolean}
+ */
+
+ var toString = Object.prototype.toString;
+ var OBJECT_STRING = '[object Object]';
+
+ function isPlainObject(obj) {
+ return toString.call(obj) === OBJECT_STRING;
+ }
+
+ /**
+ * Array type check.
+ *
+ * @param {*} obj
+ * @return {Boolean}
+ */
+
+ var isArray = Array.isArray;
+
+ /**
+ * Define a property.
+ *
+ * @param {Object} obj
+ * @param {String} key
+ * @param {*} val
+ * @param {Boolean} [enumerable]
+ */
+
+ function def(obj, key, val, enumerable) {
+ Object.defineProperty(obj, key, {
+ value: val,
+ enumerable: !!enumerable,
+ writable: true,
+ configurable: true
+ });
+ }
+
+ /**
+ * Debounce a function so it only gets called after the
+ * input stops arriving after the given wait period.
+ *
+ * @param {Function} func
+ * @param {Number} wait
+ * @return {Function} - the debounced function
+ */
+
+ function _debounce(func, wait) {
+ var timeout, args, context, timestamp, result;
+ var later = function later() {
+ var last = Date.now() - timestamp;
+ if (last < wait && last >= 0) {
+ timeout = setTimeout(later, wait - last);
+ } else {
+ timeout = null;
+ result = func.apply(context, args);
+ if (!timeout) context = args = null;
+ }
+ };
+ return function () {
+ context = this;
+ args = arguments;
+ timestamp = Date.now();
+ if (!timeout) {
+ timeout = setTimeout(later, wait);
+ }
+ return result;
+ };
+ }
+
+ /**
+ * Manual indexOf because it's slightly faster than
+ * native.
+ *
+ * @param {Array} arr
+ * @param {*} obj
+ */
+
+ function indexOf(arr, obj) {
+ var i = arr.length;
+ while (i--) {
+ if (arr[i] === obj) return i;
+ }
+ return -1;
+ }
+
+ /**
+ * Make a cancellable version of an async callback.
+ *
+ * @param {Function} fn
+ * @return {Function}
+ */
+
+ function cancellable(fn) {
+ var cb = function cb() {
+ if (!cb.cancelled) {
+ return fn.apply(this, arguments);
+ }
+ };
+ cb.cancel = function () {
+ cb.cancelled = true;
+ };
+ return cb;
+ }
+
+ /**
+ * Check if two values are loosely equal - that is,
+ * if they are plain objects, do they have the same shape?
+ *
+ * @param {*} a
+ * @param {*} b
+ * @return {Boolean}
+ */
+
+ function looseEqual(a, b) {
+ /* eslint-disable eqeqeq */
+ return a == b || (isObject(a) && isObject(b) ? JSON.stringify(a) === JSON.stringify(b) : false);
+ /* eslint-enable eqeqeq */
+ }
+
+ var hasProto = ('__proto__' in {});
+
+ // Browser environment sniffing
+ var inBrowser = typeof window !== 'undefined' && Object.prototype.toString.call(window) !== '[object Object]';
+
+ // detect devtools
+ var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;
+
+ // UA sniffing for working around browser-specific quirks
+ var UA = inBrowser && window.navigator.userAgent.toLowerCase();
+ var isIE = UA && UA.indexOf('trident') > 0;
+ var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
+ var isAndroid = UA && UA.indexOf('android') > 0;
+ var isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);
+
+ var transitionProp = undefined;
+ var transitionEndEvent = undefined;
+ var animationProp = undefined;
+ var animationEndEvent = undefined;
+
+ // Transition property/event sniffing
+ if (inBrowser && !isIE9) {
+ var isWebkitTrans = window.ontransitionend === undefined && window.onwebkittransitionend !== undefined;
+ var isWebkitAnim = window.onanimationend === undefined && window.onwebkitanimationend !== undefined;
+ transitionProp = isWebkitTrans ? 'WebkitTransition' : 'transition';
+ transitionEndEvent = isWebkitTrans ? 'webkitTransitionEnd' : 'transitionend';
+ animationProp = isWebkitAnim ? 'WebkitAnimation' : 'animation';
+ animationEndEvent = isWebkitAnim ? 'webkitAnimationEnd' : 'animationend';
+ }
+
+ /* istanbul ignore next */
+ function isNative(Ctor) {
+ return (/native code/.test(Ctor.toString())
+ );
+ }
+
+ /**
+ * Defer a task to execute it asynchronously. Ideally this
+ * should be executed as a microtask, so we leverage
+ * MutationObserver if it's available, and fallback to
+ * setTimeout(0).
+ *
+ * @param {Function} cb
+ * @param {Object} ctx
+ */
+
+ var nextTick = (function () {
+ var callbacks = [];
+ var pending = false;
+ var timerFunc = undefined;
+
+ function nextTickHandler() {
+ pending = false;
+ var copies = callbacks.slice(0);
+ callbacks.length = 0;
+ for (var i = 0; i < copies.length; i++) {
+ copies[i]();
+ }
+ }
+
+ // the nextTick behavior leverages the microtask queue, which can be accessed
+ // via either native Promise.then or MutationObserver.
+ // MutationObserver has wider support, however it is seriously bugged in
+ // UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
+ // completely stops working after triggering a few times... so, if native
+ // Promise is available, we will use it:
+ /* istanbul ignore if */
+ if (typeof Promise !== 'undefined' && isNative(Promise)) {
+ var p = Promise.resolve();
+ var noop = function noop() {};
+ timerFunc = function () {
+ p.then(nextTickHandler);
+ // in problematic UIWebViews, Promise.then doesn't completely break, but
+ // it can get stuck in a weird state where callbacks are pushed into the
+ // microtask queue but the queue isn't being flushed, until the browser
+ // needs to do some other work, e.g. handle a timer. Therefore we can
+ // "force" the microtask queue to be flushed by adding an empty timer.
+ if (isIOS) setTimeout(noop);
+ };
+ } else if (typeof MutationObserver !== 'undefined') {
+ // use MutationObserver where native Promise is not available,
+ // e.g. IE11, iOS7, Android 4.4
+ var counter = 1;
+ var observer = new MutationObserver(nextTickHandler);
+ var textNode = document.createTextNode(String(counter));
+ observer.observe(textNode, {
+ characterData: true
+ });
+ timerFunc = function () {
+ counter = (counter + 1) % 2;
+ textNode.data = String(counter);
+ };
+ } else {
+ // fallback to setTimeout
+ /* istanbul ignore next */
+ timerFunc = setTimeout;
+ }
+
+ return function (cb, ctx) {
+ var func = ctx ? function () {
+ cb.call(ctx);
+ } : cb;
+ callbacks.push(func);
+ if (pending) return;
+ pending = true;
+ timerFunc(nextTickHandler, 0);
+ };
+ })();
+
+ var _Set = undefined;
+ /* istanbul ignore if */
+ if (typeof Set !== 'undefined' && isNative(Set)) {
+ // use native Set when available.
+ _Set = Set;
+ } else {
+ // a non-standard Set polyfill that only works with primitive keys.
+ _Set = function () {
+ this.set = Object.create(null);
+ };
+ _Set.prototype.has = function (key) {
+ return this.set[key] !== undefined;
+ };
+ _Set.prototype.add = function (key) {
+ this.set[key] = 1;
+ };
+ _Set.prototype.clear = function () {
+ this.set = Object.create(null);
+ };
+ }
+
+ function Cache(limit) {
+ this.size = 0;
+ this.limit = limit;
+ this.head = this.tail = undefined;
+ this._keymap = Object.create(null);
+ }
+
+ var p = Cache.prototype;
+
+ /**
+ * Put into the cache associated with .
+ * Returns the entry which was removed to make room for
+ * the new entry. Otherwise undefined is returned.
+ * (i.e. if there was enough room already).
+ *
+ * @param {String} key
+ * @param {*} value
+ * @return {Entry|undefined}
+ */
+
+ p.put = function (key, value) {
+ var removed;
+
+ var entry = this.get(key, true);
+ if (!entry) {
+ if (this.size === this.limit) {
+ removed = this.shift();
+ }
+ entry = {
+ key: key
+ };
+ this._keymap[key] = entry;
+ if (this.tail) {
+ this.tail.newer = entry;
+ entry.older = this.tail;
+ } else {
+ this.head = entry;
+ }
+ this.tail = entry;
+ this.size++;
+ }
+ entry.value = value;
+
+ return removed;
+ };
+
+ /**
+ * Purge the least recently used (oldest) entry from the
+ * cache. Returns the removed entry or undefined if the
+ * cache was empty.
+ */
+
+ p.shift = function () {
+ var entry = this.head;
+ if (entry) {
+ this.head = this.head.newer;
+ this.head.older = undefined;
+ entry.newer = entry.older = undefined;
+ this._keymap[entry.key] = undefined;
+ this.size--;
+ }
+ return entry;
+ };
+
+ /**
+ * Get and register recent use of . Returns the value
+ * associated with or undefined if not in cache.
+ *
+ * @param {String} key
+ * @param {Boolean} returnEntry
+ * @return {Entry|*}
+ */
+
+ p.get = function (key, returnEntry) {
+ var entry = this._keymap[key];
+ if (entry === undefined) return;
+ if (entry === this.tail) {
+ return returnEntry ? entry : entry.value;
+ }
+ // HEAD--------------TAIL
+ // <.older .newer>
+ // <--- add direction --
+ // A B C E
+ if (entry.newer) {
+ if (entry === this.head) {
+ this.head = entry.newer;
+ }
+ entry.newer.older = entry.older; // C <-- E.
+ }
+ if (entry.older) {
+ entry.older.newer = entry.newer; // C. --> E
+ }
+ entry.newer = undefined; // D --x
+ entry.older = this.tail; // D. --> E
+ if (this.tail) {
+ this.tail.newer = entry; // E. <-- D
+ }
+ this.tail = entry;
+ return returnEntry ? entry : entry.value;
+ };
+
+ var cache$1 = new Cache(1000);
+ var reservedArgRE = /^in$|^-?\d+/;
+
+ /**
+ * Parser state
+ */
+
+ var str;
+ var dir;
+ var len;
+ var index;
+ var chr;
+ var state;
+ var startState = 0;
+ var filterState = 1;
+ var filterNameState = 2;
+ var filterArgState = 3;
+
+ var doubleChr = 0x22;
+ var singleChr = 0x27;
+ var pipeChr = 0x7C;
+ var escapeChr = 0x5C;
+ var spaceChr = 0x20;
+
+ var expStartChr = { 0x5B: 1, 0x7B: 1, 0x28: 1 };
+ var expChrPair = { 0x5B: 0x5D, 0x7B: 0x7D, 0x28: 0x29 };
+
+ function peek() {
+ return str.charCodeAt(index + 1);
+ }
+
+ function next() {
+ return str.charCodeAt(++index);
+ }
+
+ function eof() {
+ return index >= len;
+ }
+
+ function eatSpace() {
+ while (peek() === spaceChr) {
+ next();
+ }
+ }
+
+ function isStringStart(chr) {
+ return chr === doubleChr || chr === singleChr;
+ }
+
+ function isExpStart(chr) {
+ return expStartChr[chr];
+ }
+
+ function isExpEnd(start, chr) {
+ return expChrPair[start] === chr;
+ }
+
+ function parseString() {
+ var stringQuote = next();
+ var chr;
+ while (!eof()) {
+ chr = next();
+ // escape char
+ if (chr === escapeChr) {
+ next();
+ } else if (chr === stringQuote) {
+ break;
+ }
+ }
+ }
+
+ function parseSpecialExp(chr) {
+ var inExp = 0;
+ var startChr = chr;
+
+ while (!eof()) {
+ chr = peek();
+ if (isStringStart(chr)) {
+ parseString();
+ continue;
+ }
+
+ if (startChr === chr) {
+ inExp++;
+ }
+ if (isExpEnd(startChr, chr)) {
+ inExp--;
+ }
+
+ next();
+
+ if (inExp === 0) {
+ break;
+ }
+ }
+ }
+
+ /**
+ * syntax:
+ * expression | filterName [arg arg [| filterName arg arg]]
+ */
+
+ function parseExpression() {
+ var start = index;
+ while (!eof()) {
+ chr = peek();
+ if (isStringStart(chr)) {
+ parseString();
+ } else if (isExpStart(chr)) {
+ parseSpecialExp(chr);
+ } else if (chr === pipeChr) {
+ next();
+ chr = peek();
+ if (chr === pipeChr) {
+ next();
+ } else {
+ if (state === startState || state === filterArgState) {
+ state = filterState;
+ }
+ break;
+ }
+ } else if (chr === spaceChr && (state === filterNameState || state === filterArgState)) {
+ eatSpace();
+ break;
+ } else {
+ if (state === filterState) {
+ state = filterNameState;
+ }
+ next();
+ }
+ }
+
+ return str.slice(start + 1, index) || null;
+ }
+
+ function parseFilterList() {
+ var filters = [];
+ while (!eof()) {
+ filters.push(parseFilter());
+ }
+ return filters;
+ }
+
+ function parseFilter() {
+ var filter = {};
+ var args;
+
+ state = filterState;
+ filter.name = parseExpression().trim();
+
+ state = filterArgState;
+ args = parseFilterArguments();
+
+ if (args.length) {
+ filter.args = args;
+ }
+ return filter;
+ }
+
+ function parseFilterArguments() {
+ var args = [];
+ while (!eof() && state !== filterState) {
+ var arg = parseExpression();
+ if (!arg) {
+ break;
+ }
+ args.push(processFilterArg(arg));
+ }
+
+ return args;
+ }
+
+ /**
+ * Check if an argument is dynamic and strip quotes.
+ *
+ * @param {String} arg
+ * @return {Object}
+ */
+
+ function processFilterArg(arg) {
+ if (reservedArgRE.test(arg)) {
+ return {
+ value: toNumber(arg),
+ dynamic: false
+ };
+ } else {
+ var stripped = stripQuotes(arg);
+ var dynamic = stripped === arg;
+ return {
+ value: dynamic ? arg : stripped,
+ dynamic: dynamic
+ };
+ }
+ }
+
+ /**
+ * Parse a directive value and extract the expression
+ * and its filters into a descriptor.
+ *
+ * Example:
+ *
+ * "a + 1 | uppercase" will yield:
+ * {
+ * expression: 'a + 1',
+ * filters: [
+ * { name: 'uppercase', args: null }
+ * ]
+ * }
+ *
+ * @param {String} s
+ * @return {Object}
+ */
+
+ function parseDirective(s) {
+ var hit = cache$1.get(s);
+ if (hit) {
+ return hit;
+ }
+
+ // reset parser state
+ str = s;
+ dir = {};
+ len = str.length;
+ index = -1;
+ chr = '';
+ state = startState;
+
+ var filters;
+
+ if (str.indexOf('|') < 0) {
+ dir.expression = str.trim();
+ } else {
+ dir.expression = parseExpression().trim();
+ filters = parseFilterList();
+ if (filters.length) {
+ dir.filters = filters;
+ }
+ }
+
+ cache$1.put(s, dir);
+ return dir;
+ }
+
+ var directive = Object.freeze({
+ parseDirective: parseDirective
+ });
+
+ var regexEscapeRE = /[-.*+?^${}()|[\]\/\\]/g;
+ var cache = undefined;
+ var tagRE = undefined;
+ var htmlRE = undefined;
+ /**
+ * Escape a string so it can be used in a RegExp
+ * constructor.
+ *
+ * @param {String} str
+ */
+
+ function escapeRegex(str) {
+ return str.replace(regexEscapeRE, '\\$&');
+ }
+
+ function compileRegex() {
+ var open = escapeRegex(config.delimiters[0]);
+ var close = escapeRegex(config.delimiters[1]);
+ var unsafeOpen = escapeRegex(config.unsafeDelimiters[0]);
+ var unsafeClose = escapeRegex(config.unsafeDelimiters[1]);
+ tagRE = new RegExp(unsafeOpen + '((?:.|\\n)+?)' + unsafeClose + '|' + open + '((?:.|\\n)+?)' + close, 'g');
+ htmlRE = new RegExp('^' + unsafeOpen + '((?:.|\\n)+?)' + unsafeClose + '$');
+ // reset cache
+ cache = new Cache(1000);
+ }
+
+ /**
+ * Parse a template text string into an array of tokens.
+ *
+ * @param {String} text
+ * @return {Array