http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue-web/vue/components/list.js
----------------------------------------------------------------------
diff --git 
a/android/playground/app/src/main/assets/vue-web/vue/components/list.js 
b/android/playground/app/src/main/assets/vue-web/vue/components/list.js
deleted file mode 100644
index e1e9797..0000000
--- a/android/playground/app/src/main/assets/vue-web/vue/components/list.js
+++ /dev/null
@@ -1,705 +0,0 @@
-// NOTE: for vue2.0 and platform:web only.
-
-/******/ (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 = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var App = __webpack_require__(48)
-       App.el = '#root'
-       new Vue(App)
-
-
-/***/ }),
-
-/***/ 4:
-/***/ (function(module, exports) {
-
-       /*
-               MIT License http://www.opensource.org/licenses/mit-license.php
-               Author Tobias Koppers @sokra
-       */
-       // css base code, injected by the css-loader
-       module.exports = function() {
-               var list = [];
-
-               // return the list of modules as css string
-               list.toString = function toString() {
-                       var result = [];
-                       for(var i = 0; i < this.length; i++) {
-                               var item = this[i];
-                               if(item[2]) {
-                                       result.push("@media " + item[2] + "{" + 
item[1] + "}");
-                               } else {
-                                       result.push(item[1]);
-                               }
-                       }
-                       return result.join("");
-               };
-
-               // import a list of modules into the list
-               list.i = function(modules, mediaQuery) {
-                       if(typeof modules === "string")
-                               modules = [[null, modules, ""]];
-                       var alreadyImportedModules = {};
-                       for(var i = 0; i < this.length; i++) {
-                               var id = this[i][0];
-                               if(typeof id === "number")
-                                       alreadyImportedModules[id] = true;
-                       }
-                       for(i = 0; i < modules.length; i++) {
-                               var item = modules[i];
-                               // skip already imported module
-                               // this implementation is not 100% perfect for 
weird media query combinations
-                               //  when a module is imported multiple times 
with different media queries.
-                               //  I hope this will never occur (Hey this way 
we have smaller bundles)
-                               if(typeof item[0] !== "number" || 
!alreadyImportedModules[item[0]]) {
-                                       if(mediaQuery && !item[2]) {
-                                               item[2] = mediaQuery;
-                                       } else if(mediaQuery) {
-                                               item[2] = "(" + item[2] + ") 
and (" + mediaQuery + ")";
-                                       }
-                                       list.push(item);
-                               }
-                       }
-               };
-               return list;
-       };
-
-
-/***/ }),
-
-/***/ 5:
-/***/ (function(module, exports, __webpack_require__) {
-
-       /*
-         MIT License http://www.opensource.org/licenses/mit-license.php
-         Author Tobias Koppers @sokra
-         Modified by Evan You @yyx990803
-       */
-
-       var hasDocument = typeof document !== 'undefined'
-
-       if (false) {
-         if (!hasDocument) {
-           throw new Error(
-           'vue-style-loader cannot be used in a non-browser environment. ' +
-           "Use { target: 'node' } in your Webpack config to indicate a 
server-rendering environment."
-         ) }
-       }
-
-       var listToStyles = __webpack_require__(6)
-
-       /*
-       type StyleObject = {
-         id: number;
-         parts: Array<StyleObjectPart>
-       }
-
-       type StyleObjectPart = {
-         css: string;
-         media: string;
-         sourceMap: ?string
-       }
-       */
-
-       var stylesInDom = {/*
-         [id: number]: {
-           id: number,
-           refs: number,
-           parts: Array<(obj?: StyleObjectPart) => void>
-         }
-       */}
-
-       var head = hasDocument && (document.head || 
document.getElementsByTagName('head')[0])
-       var singletonElement = null
-       var singletonCounter = 0
-       var isProduction = false
-       var noop = function () {}
-
-       // Force single-tag solution on IE6-9, which has a hard limit on the # 
of <style>
-       // tags it will allow on a page
-       var isOldIE = typeof navigator !== 'undefined' && /msie 
[6-9]\b/.test(navigator.userAgent.toLowerCase())
-
-       module.exports = function (parentId, list, _isProduction) {
-         isProduction = _isProduction
-
-         var styles = listToStyles(parentId, list)
-         addStylesToDom(styles)
-
-         return function update (newList) {
-           var mayRemove = []
-           for (var i = 0; i < styles.length; i++) {
-             var item = styles[i]
-             var domStyle = stylesInDom[item.id]
-             domStyle.refs--
-             mayRemove.push(domStyle)
-           }
-           if (newList) {
-             styles = listToStyles(parentId, newList)
-             addStylesToDom(styles)
-           } else {
-             styles = []
-           }
-           for (var i = 0; i < mayRemove.length; i++) {
-             var domStyle = mayRemove[i]
-             if (domStyle.refs === 0) {
-               for (var j = 0; j < domStyle.parts.length; j++) {
-                 domStyle.parts[j]()
-               }
-               delete stylesInDom[domStyle.id]
-             }
-           }
-         }
-       }
-
-       function addStylesToDom (styles /* Array<StyleObject> */) {
-         for (var i = 0; i < styles.length; i++) {
-           var item = styles[i]
-           var domStyle = stylesInDom[item.id]
-           if (domStyle) {
-             domStyle.refs++
-             for (var j = 0; j < domStyle.parts.length; j++) {
-               domStyle.parts[j](item.parts[j])
-             }
-             for (; j < item.parts.length; j++) {
-               domStyle.parts.push(addStyle(item.parts[j]))
-             }
-             if (domStyle.parts.length > item.parts.length) {
-               domStyle.parts.length = item.parts.length
-             }
-           } else {
-             var parts = []
-             for (var j = 0; j < item.parts.length; j++) {
-               parts.push(addStyle(item.parts[j]))
-             }
-             stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
-           }
-         }
-       }
-
-       function createStyleElement () {
-         var styleElement = document.createElement('style')
-         styleElement.type = 'text/css'
-         head.appendChild(styleElement)
-         return styleElement
-       }
-
-       function addStyle (obj /* StyleObjectPart */) {
-         var update, remove
-         var styleElement = document.querySelector('style[data-vue-ssr-id~="' 
+ obj.id + '"]')
-
-         if (styleElement) {
-           if (isProduction) {
-             // has SSR styles and in production mode.
-             // simply do nothing.
-             return noop
-           } else {
-             // has SSR styles but in dev mode.
-             // for some reason Chrome can't handle source map in 
server-rendered
-             // style tags - source maps in <style> only works if the style 
tag is
-             // created and inserted dynamically. So we remove the server 
rendered
-             // styles and inject new ones.
-             styleElement.parentNode.removeChild(styleElement)
-           }
-         }
-
-         if (isOldIE) {
-           // use singleton mode for IE9.
-           var styleIndex = singletonCounter++
-           styleElement = singletonElement || (singletonElement = 
createStyleElement())
-           update = applyToSingletonTag.bind(null, styleElement, styleIndex, 
false)
-           remove = applyToSingletonTag.bind(null, styleElement, styleIndex, 
true)
-         } else {
-           // use multi-style-tag mode in all other cases
-           styleElement = createStyleElement()
-           update = applyToTag.bind(null, styleElement)
-           remove = function () {
-             styleElement.parentNode.removeChild(styleElement)
-           }
-         }
-
-         update(obj)
-
-         return function updateStyle (newObj /* StyleObjectPart */) {
-           if (newObj) {
-             if (newObj.css === obj.css &&
-                 newObj.media === obj.media &&
-                 newObj.sourceMap === obj.sourceMap) {
-               return
-             }
-             update(obj = newObj)
-           } else {
-             remove()
-           }
-         }
-       }
-
-       var replaceText = (function () {
-         var textStore = []
-
-         return function (index, replacement) {
-           textStore[index] = replacement
-           return textStore.filter(Boolean).join('\n')
-         }
-       })()
-
-       function applyToSingletonTag (styleElement, index, remove, obj) {
-         var css = remove ? '' : obj.css
-
-         if (styleElement.styleSheet) {
-           styleElement.styleSheet.cssText = replaceText(index, css)
-         } else {
-           var cssNode = document.createTextNode(css)
-           var childNodes = styleElement.childNodes
-           if (childNodes[index]) styleElement.removeChild(childNodes[index])
-           if (childNodes.length) {
-             styleElement.insertBefore(cssNode, childNodes[index])
-           } else {
-             styleElement.appendChild(cssNode)
-           }
-         }
-       }
-
-       function applyToTag (styleElement, obj) {
-         var css = obj.css
-         var media = obj.media
-         var sourceMap = obj.sourceMap
-
-         if (media) {
-           styleElement.setAttribute('media', media)
-         }
-
-         if (sourceMap) {
-           // https://developer.chrome.com/devtools/docs/javascript-debugging
-           // this makes source maps inside style tags work properly in Chrome
-           css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
-           // http://stackoverflow.com/a/26603875
-           css += '\n/*# sourceMappingURL=data:application/json;base64,' + 
btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
-         }
-
-         if (styleElement.styleSheet) {
-           styleElement.styleSheet.cssText = css
-         } else {
-           while (styleElement.firstChild) {
-             styleElement.removeChild(styleElement.firstChild)
-           }
-           styleElement.appendChild(document.createTextNode(css))
-         }
-       }
-
-
-/***/ }),
-
-/***/ 6:
-/***/ (function(module, exports) {
-
-       /**
-        * Translates the list format produced by css-loader into something
-        * easier to manipulate.
-        */
-       module.exports = function listToStyles (parentId, list) {
-         var styles = []
-         var newStyles = {}
-         for (var i = 0; i < list.length; i++) {
-           var item = list[i]
-           var id = item[0]
-           var css = item[1]
-           var media = item[2]
-           var sourceMap = item[3]
-           var part = {
-             id: parentId + ':' + i,
-             css: css,
-             media: media,
-             sourceMap: sourceMap
-           }
-           if (!newStyles[id]) {
-             styles.push(newStyles[id] = { id: id, parts: [part] })
-           } else {
-             newStyles[id].parts.push(part)
-           }
-         }
-         return styles
-       }
-
-
-/***/ }),
-
-/***/ 7:
-/***/ (function(module, exports) {
-
-       /* globals __VUE_SSR_CONTEXT__ */
-
-       // this module is a runtime utility for cleaner component module output 
and will
-       // be included in the final webpack user bundle
-
-       module.exports = function normalizeComponent (
-         rawScriptExports,
-         compiledTemplate,
-         injectStyles,
-         scopeId,
-         moduleIdentifier /* server only */
-       ) {
-         var esModule
-         var scriptExports = rawScriptExports = rawScriptExports || {}
-
-         // ES6 modules interop
-         var type = typeof rawScriptExports.default
-         if (type === 'object' || type === 'function') {
-           esModule = rawScriptExports
-           scriptExports = rawScriptExports.default
-         }
-
-         // Vue.extend constructor export interop
-         var options = typeof scriptExports === 'function'
-           ? scriptExports.options
-           : scriptExports
-
-         // render functions
-         if (compiledTemplate) {
-           options.render = compiledTemplate.render
-           options.staticRenderFns = compiledTemplate.staticRenderFns
-         }
-
-         // scopedId
-         if (scopeId) {
-           options._scopeId = scopeId
-         }
-
-         var hook
-         if (moduleIdentifier) { // server build
-           hook = function (context) {
-             // 2.3 injection
-             context =
-               context || // cached call
-               (this.$vnode && this.$vnode.ssrContext) || // stateful
-               (this.parent && this.parent.$vnode && 
this.parent.$vnode.ssrContext) // functional
-             // 2.2 with runInNewContext: true
-             if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
-               context = __VUE_SSR_CONTEXT__
-             }
-             // inject component styles
-             if (injectStyles) {
-               injectStyles.call(this, context)
-             }
-             // register component module identifier for async chunk inferrence
-             if (context && context._registeredComponents) {
-               context._registeredComponents.add(moduleIdentifier)
-             }
-           }
-           // used by ssr in case component is cached and beforeCreate
-           // never gets called
-           options._ssrRegister = hook
-         } else if (injectStyles) {
-           hook = injectStyles
-         }
-
-         if (hook) {
-           var functional = options.functional
-           var existing = functional
-             ? options.render
-             : options.beforeCreate
-           if (!functional) {
-             // inject component registration as beforeCreate hook
-             options.beforeCreate = existing
-               ? [].concat(existing, hook)
-               : [hook]
-           } else {
-             // register for functioal component in vue file
-             options.render = function renderWithStyleInjection (h, context) {
-               hook.call(context)
-               return existing(h, context)
-             }
-           }
-         }
-
-         return {
-           esModule: esModule,
-           exports: scriptExports,
-           options: options
-         }
-       }
-
-
-/***/ }),
-
-/***/ 48:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var disposed = false
-       function injectStyle (ssrContext) {
-         if (disposed) return
-         __webpack_require__(49)
-       }
-       var Component = __webpack_require__(7)(
-         /* script */
-         __webpack_require__(51),
-         /* template */
-         __webpack_require__(52),
-         /* styles */
-         injectStyle,
-         /* scopeId */
-         "data-v-c84ace68",
-         /* moduleIdentifier (server only) */
-         null
-       )
-       Component.options.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/list.vue"
-       if (Component.esModule && Object.keys(Component.esModule).some(function 
(key) {return key !== "default" && key.substr(0, 2) !== "__"})) 
{console.error("named exports are not supported in *.vue files.")}
-       if (Component.options.functional) {console.error("[vue-loader] 
list.vue: functional components are not supported with templates, they should 
use render functions.")}
-
-       /* hot reload */
-       if (false) {(function () {
-         var hotAPI = require("vue-hot-reload-api")
-         hotAPI.install(require("vue"), false)
-         if (!hotAPI.compatible) return
-         module.hot.accept()
-         if (!module.hot.data) {
-           hotAPI.createRecord("data-v-c84ace68", Component.options)
-         } else {
-           hotAPI.reload("data-v-c84ace68", Component.options)
-         }
-         module.hot.dispose(function (data) {
-           disposed = true
-         })
-       })()}
-
-       module.exports = Component.exports
-
-
-/***/ }),
-
-/***/ 49:
-/***/ (function(module, exports, __webpack_require__) {
-
-       // style-loader: Adds some css to the DOM by adding a <style> tag
-
-       // load the styles
-       var content = __webpack_require__(50);
-       if(typeof content === 'string') content = [[module.id, content, '']];
-       if(content.locals) module.exports = content.locals;
-       // add the styles to the DOM
-       var update = __webpack_require__(5)("415fe453", content, false);
-       // Hot Module Replacement
-       if(false) {
-        // When the styles change, update the <style> tags
-        if(!content.locals) {
-          
module.hot.accept("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c84ace68\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./list.vue",
 function() {
-            var newContent = 
require("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c84ace68\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./list.vue");
-            if(typeof newContent === 'string') newContent = [[module.id, 
newContent, '']];
-            update(newContent);
-          });
-        }
-        // When the module is disposed, remove the <style> tags
-        module.hot.dispose(function() { update(); });
-       }
-
-/***/ }),
-
-/***/ 50:
-/***/ (function(module, exports, __webpack_require__) {
-
-       exports = module.exports = __webpack_require__(4)();
-       // imports
-
-
-       // module
-       exports.push([module.id, "\n.list[data-v-c84ace68] {\n  
height:850px\n}\n.count[data-v-c84ace68] {\n  font-size: 48px;\n  
margin:10px;\n}\n.indicator[data-v-c84ace68] {\n  height: 40px;\n  width: 
40px;\n  color:#45b5f0;\n}\n.row[data-v-c84ace68] {\n  width: 
750px;\n}\n.item[data-v-c84ace68] {\n  justify-content: center;\n  
border-bottom-width: 2px;\n  border-bottom-color: #c0c0c0;\n  height: 100px;\n  
padding:20px;\n}\n.item[data-v-c84ace68]:active {\n   background-color: 
#00BDFF;\n}\n.item-title[data-v-c84ace68] {\n}\n", ""]);
-
-       // exports
-
-
-/***/ }),
-
-/***/ 51:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         methods: {
-           onappear: function onappear(idx, e) {
-             var appearId = this.rows[idx].id;
-             console.log('+++++', appearId);
-             var appearIds = this.appearIds;
-             appearIds.push(appearId);
-             this.getMinAndMaxIds(appearIds);
-           },
-           ondisappear: function ondisappear(idx, e) {
-             var disAppearId = this.rows[idx].id;
-             console.log('+++++', disAppearId);
-             var appearIds = this.appearIds;
-             var index = appearIds.indexOf(disAppearId);
-             if (index > -1) {
-               appearIds.splice(index, 1);
-             }
-             this.getMinAndMaxIds(appearIds);
-           },
-           getMinAndMaxIds: function getMinAndMaxIds(appearIds) {
-             appearIds.sort(function (a, b) {
-               return a - b;
-             });
-             this.appearIds = appearIds;
-             this.appearMax = appearIds[appearIds.length - 1];
-             this.appearMin = appearIds[0];
-           }
-         },
-         data: function data() {
-           return {
-             appearMin: 1,
-             appearMax: 1,
-             appearIds: [],
-             rows: [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }, { id: 5 }, { 
id: 6 }, { id: 7 }, { id: 8 }, { id: 9 }, { id: 10 }, { id: 11 }, { id: 12 }, { 
id: 13 }, { id: 14 }, { id: 15 }, { id: 16 }, { id: 17 }, { id: 18 }, { id: 19 
}, { id: 20 }, { id: 21 }, { id: 22 }, { id: 23 }, { id: 24 }, { id: 25 }, { 
id: 26 }, { id: 27 }, { id: 28 }, { id: 29 }]
-           };
-         }
-       };
-
-/***/ }),
-
-/***/ 52:
-/***/ (function(module, exports, __webpack_require__) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', [_c('list', {
-           staticClass: "list",
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle(undefined))
-         }, _vm._l((_vm.rows), function(v, i) {
-           return _c('cell', {
-             key: i,
-             staticClass: "row",
-             staticStyle: _vm.$processStyle(undefined),
-             style: (_vm.$processStyle(undefined)),
-             attrs: {
-               "append": "tree",
-               "index": i
-             },
-             on: {
-               "appear": function($event) {
-                 _vm.onappear(i, $event)
-               },
-               "disappear": function($event) {
-                 _vm.ondisappear(i, $event)
-               }
-             }
-           }, [_c('div', {
-             staticClass: "item",
-             staticStyle: _vm.$processStyle(undefined),
-             style: (_vm.$processStyle(undefined))
-           }, [_c('text', {
-             staticClass: "item-title",
-             staticStyle: _vm.$processStyle(undefined),
-             style: (_vm.$processStyle(undefined))
-           }, [_vm._v("row " + _vm._s(v.id))])])])
-         })), _vm._v(" "), _c('text', {
-           staticClass: "count",
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle(undefined)),
-           attrs: {
-             "value": 'Appear items: ' + _vm.appearMin + ' ~ ' + _vm.appearMax
-           }
-         })], 1)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-       if (false) {
-         module.hot.accept()
-         if (module.hot.data) {
-            require("vue-hot-reload-api").rerender("data-v-c84ace68", 
module.exports)
-         }
-       }
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue-web/vue/components/marquee.js
----------------------------------------------------------------------
diff --git 
a/android/playground/app/src/main/assets/vue-web/vue/components/marquee.js 
b/android/playground/app/src/main/assets/vue-web/vue/components/marquee.js
deleted file mode 100644
index 13bc55b..0000000
--- a/android/playground/app/src/main/assets/vue-web/vue/components/marquee.js
+++ /dev/null
@@ -1,1034 +0,0 @@
-// NOTE: for vue2.0 and platform:web only.
-
-/******/ (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 = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       var App = __webpack_require__(53)
-       App.el = '#root'
-       new Vue(App)
-
-
-/***/ }),
-/* 1 */,
-/* 2 */,
-/* 3 */,
-/* 4 */
-/***/ (function(module, exports) {
-
-       /*
-               MIT License http://www.opensource.org/licenses/mit-license.php
-               Author Tobias Koppers @sokra
-       */
-       // css base code, injected by the css-loader
-       module.exports = function() {
-               var list = [];
-
-               // return the list of modules as css string
-               list.toString = function toString() {
-                       var result = [];
-                       for(var i = 0; i < this.length; i++) {
-                               var item = this[i];
-                               if(item[2]) {
-                                       result.push("@media " + item[2] + "{" + 
item[1] + "}");
-                               } else {
-                                       result.push(item[1]);
-                               }
-                       }
-                       return result.join("");
-               };
-
-               // import a list of modules into the list
-               list.i = function(modules, mediaQuery) {
-                       if(typeof modules === "string")
-                               modules = [[null, modules, ""]];
-                       var alreadyImportedModules = {};
-                       for(var i = 0; i < this.length; i++) {
-                               var id = this[i][0];
-                               if(typeof id === "number")
-                                       alreadyImportedModules[id] = true;
-                       }
-                       for(i = 0; i < modules.length; i++) {
-                               var item = modules[i];
-                               // skip already imported module
-                               // this implementation is not 100% perfect for 
weird media query combinations
-                               //  when a module is imported multiple times 
with different media queries.
-                               //  I hope this will never occur (Hey this way 
we have smaller bundles)
-                               if(typeof item[0] !== "number" || 
!alreadyImportedModules[item[0]]) {
-                                       if(mediaQuery && !item[2]) {
-                                               item[2] = mediaQuery;
-                                       } else if(mediaQuery) {
-                                               item[2] = "(" + item[2] + ") 
and (" + mediaQuery + ")";
-                                       }
-                                       list.push(item);
-                               }
-                       }
-               };
-               return list;
-       };
-
-
-/***/ }),
-/* 5 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       /*
-         MIT License http://www.opensource.org/licenses/mit-license.php
-         Author Tobias Koppers @sokra
-         Modified by Evan You @yyx990803
-       */
-
-       var hasDocument = typeof document !== 'undefined'
-
-       if (false) {
-         if (!hasDocument) {
-           throw new Error(
-           'vue-style-loader cannot be used in a non-browser environment. ' +
-           "Use { target: 'node' } in your Webpack config to indicate a 
server-rendering environment."
-         ) }
-       }
-
-       var listToStyles = __webpack_require__(6)
-
-       /*
-       type StyleObject = {
-         id: number;
-         parts: Array<StyleObjectPart>
-       }
-
-       type StyleObjectPart = {
-         css: string;
-         media: string;
-         sourceMap: ?string
-       }
-       */
-
-       var stylesInDom = {/*
-         [id: number]: {
-           id: number,
-           refs: number,
-           parts: Array<(obj?: StyleObjectPart) => void>
-         }
-       */}
-
-       var head = hasDocument && (document.head || 
document.getElementsByTagName('head')[0])
-       var singletonElement = null
-       var singletonCounter = 0
-       var isProduction = false
-       var noop = function () {}
-
-       // Force single-tag solution on IE6-9, which has a hard limit on the # 
of <style>
-       // tags it will allow on a page
-       var isOldIE = typeof navigator !== 'undefined' && /msie 
[6-9]\b/.test(navigator.userAgent.toLowerCase())
-
-       module.exports = function (parentId, list, _isProduction) {
-         isProduction = _isProduction
-
-         var styles = listToStyles(parentId, list)
-         addStylesToDom(styles)
-
-         return function update (newList) {
-           var mayRemove = []
-           for (var i = 0; i < styles.length; i++) {
-             var item = styles[i]
-             var domStyle = stylesInDom[item.id]
-             domStyle.refs--
-             mayRemove.push(domStyle)
-           }
-           if (newList) {
-             styles = listToStyles(parentId, newList)
-             addStylesToDom(styles)
-           } else {
-             styles = []
-           }
-           for (var i = 0; i < mayRemove.length; i++) {
-             var domStyle = mayRemove[i]
-             if (domStyle.refs === 0) {
-               for (var j = 0; j < domStyle.parts.length; j++) {
-                 domStyle.parts[j]()
-               }
-               delete stylesInDom[domStyle.id]
-             }
-           }
-         }
-       }
-
-       function addStylesToDom (styles /* Array<StyleObject> */) {
-         for (var i = 0; i < styles.length; i++) {
-           var item = styles[i]
-           var domStyle = stylesInDom[item.id]
-           if (domStyle) {
-             domStyle.refs++
-             for (var j = 0; j < domStyle.parts.length; j++) {
-               domStyle.parts[j](item.parts[j])
-             }
-             for (; j < item.parts.length; j++) {
-               domStyle.parts.push(addStyle(item.parts[j]))
-             }
-             if (domStyle.parts.length > item.parts.length) {
-               domStyle.parts.length = item.parts.length
-             }
-           } else {
-             var parts = []
-             for (var j = 0; j < item.parts.length; j++) {
-               parts.push(addStyle(item.parts[j]))
-             }
-             stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
-           }
-         }
-       }
-
-       function createStyleElement () {
-         var styleElement = document.createElement('style')
-         styleElement.type = 'text/css'
-         head.appendChild(styleElement)
-         return styleElement
-       }
-
-       function addStyle (obj /* StyleObjectPart */) {
-         var update, remove
-         var styleElement = document.querySelector('style[data-vue-ssr-id~="' 
+ obj.id + '"]')
-
-         if (styleElement) {
-           if (isProduction) {
-             // has SSR styles and in production mode.
-             // simply do nothing.
-             return noop
-           } else {
-             // has SSR styles but in dev mode.
-             // for some reason Chrome can't handle source map in 
server-rendered
-             // style tags - source maps in <style> only works if the style 
tag is
-             // created and inserted dynamically. So we remove the server 
rendered
-             // styles and inject new ones.
-             styleElement.parentNode.removeChild(styleElement)
-           }
-         }
-
-         if (isOldIE) {
-           // use singleton mode for IE9.
-           var styleIndex = singletonCounter++
-           styleElement = singletonElement || (singletonElement = 
createStyleElement())
-           update = applyToSingletonTag.bind(null, styleElement, styleIndex, 
false)
-           remove = applyToSingletonTag.bind(null, styleElement, styleIndex, 
true)
-         } else {
-           // use multi-style-tag mode in all other cases
-           styleElement = createStyleElement()
-           update = applyToTag.bind(null, styleElement)
-           remove = function () {
-             styleElement.parentNode.removeChild(styleElement)
-           }
-         }
-
-         update(obj)
-
-         return function updateStyle (newObj /* StyleObjectPart */) {
-           if (newObj) {
-             if (newObj.css === obj.css &&
-                 newObj.media === obj.media &&
-                 newObj.sourceMap === obj.sourceMap) {
-               return
-             }
-             update(obj = newObj)
-           } else {
-             remove()
-           }
-         }
-       }
-
-       var replaceText = (function () {
-         var textStore = []
-
-         return function (index, replacement) {
-           textStore[index] = replacement
-           return textStore.filter(Boolean).join('\n')
-         }
-       })()
-
-       function applyToSingletonTag (styleElement, index, remove, obj) {
-         var css = remove ? '' : obj.css
-
-         if (styleElement.styleSheet) {
-           styleElement.styleSheet.cssText = replaceText(index, css)
-         } else {
-           var cssNode = document.createTextNode(css)
-           var childNodes = styleElement.childNodes
-           if (childNodes[index]) styleElement.removeChild(childNodes[index])
-           if (childNodes.length) {
-             styleElement.insertBefore(cssNode, childNodes[index])
-           } else {
-             styleElement.appendChild(cssNode)
-           }
-         }
-       }
-
-       function applyToTag (styleElement, obj) {
-         var css = obj.css
-         var media = obj.media
-         var sourceMap = obj.sourceMap
-
-         if (media) {
-           styleElement.setAttribute('media', media)
-         }
-
-         if (sourceMap) {
-           // https://developer.chrome.com/devtools/docs/javascript-debugging
-           // this makes source maps inside style tags work properly in Chrome
-           css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
-           // http://stackoverflow.com/a/26603875
-           css += '\n/*# sourceMappingURL=data:application/json;base64,' + 
btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
-         }
-
-         if (styleElement.styleSheet) {
-           styleElement.styleSheet.cssText = css
-         } else {
-           while (styleElement.firstChild) {
-             styleElement.removeChild(styleElement.firstChild)
-           }
-           styleElement.appendChild(document.createTextNode(css))
-         }
-       }
-
-
-/***/ }),
-/* 6 */
-/***/ (function(module, exports) {
-
-       /**
-        * Translates the list format produced by css-loader into something
-        * easier to manipulate.
-        */
-       module.exports = function listToStyles (parentId, list) {
-         var styles = []
-         var newStyles = {}
-         for (var i = 0; i < list.length; i++) {
-           var item = list[i]
-           var id = item[0]
-           var css = item[1]
-           var media = item[2]
-           var sourceMap = item[3]
-           var part = {
-             id: parentId + ':' + i,
-             css: css,
-             media: media,
-             sourceMap: sourceMap
-           }
-           if (!newStyles[id]) {
-             styles.push(newStyles[id] = { id: id, parts: [part] })
-           } else {
-             newStyles[id].parts.push(part)
-           }
-         }
-         return styles
-       }
-
-
-/***/ }),
-/* 7 */
-/***/ (function(module, exports) {
-
-       /* globals __VUE_SSR_CONTEXT__ */
-
-       // this module is a runtime utility for cleaner component module output 
and will
-       // be included in the final webpack user bundle
-
-       module.exports = function normalizeComponent (
-         rawScriptExports,
-         compiledTemplate,
-         injectStyles,
-         scopeId,
-         moduleIdentifier /* server only */
-       ) {
-         var esModule
-         var scriptExports = rawScriptExports = rawScriptExports || {}
-
-         // ES6 modules interop
-         var type = typeof rawScriptExports.default
-         if (type === 'object' || type === 'function') {
-           esModule = rawScriptExports
-           scriptExports = rawScriptExports.default
-         }
-
-         // Vue.extend constructor export interop
-         var options = typeof scriptExports === 'function'
-           ? scriptExports.options
-           : scriptExports
-
-         // render functions
-         if (compiledTemplate) {
-           options.render = compiledTemplate.render
-           options.staticRenderFns = compiledTemplate.staticRenderFns
-         }
-
-         // scopedId
-         if (scopeId) {
-           options._scopeId = scopeId
-         }
-
-         var hook
-         if (moduleIdentifier) { // server build
-           hook = function (context) {
-             // 2.3 injection
-             context =
-               context || // cached call
-               (this.$vnode && this.$vnode.ssrContext) || // stateful
-               (this.parent && this.parent.$vnode && 
this.parent.$vnode.ssrContext) // functional
-             // 2.2 with runInNewContext: true
-             if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
-               context = __VUE_SSR_CONTEXT__
-             }
-             // inject component styles
-             if (injectStyles) {
-               injectStyles.call(this, context)
-             }
-             // register component module identifier for async chunk inferrence
-             if (context && context._registeredComponents) {
-               context._registeredComponents.add(moduleIdentifier)
-             }
-           }
-           // used by ssr in case component is cached and beforeCreate
-           // never gets called
-           options._ssrRegister = hook
-         } else if (injectStyles) {
-           hook = injectStyles
-         }
-
-         if (hook) {
-           var functional = options.functional
-           var existing = functional
-             ? options.render
-             : options.beforeCreate
-           if (!functional) {
-             // inject component registration as beforeCreate hook
-             options.beforeCreate = existing
-               ? [].concat(existing, hook)
-               : [hook]
-           } else {
-             // register for functioal component in vue file
-             options.render = function renderWithStyleInjection (h, context) {
-               hook.call(context)
-               return existing(h, context)
-             }
-           }
-         }
-
-         return {
-           esModule: esModule,
-           exports: scriptExports,
-           options: options
-         }
-       }
-
-
-/***/ }),
-/* 8 */,
-/* 9 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       var disposed = false
-       function injectStyle (ssrContext) {
-         if (disposed) return
-         __webpack_require__(10)
-       }
-       var Component = __webpack_require__(7)(
-         /* script */
-         __webpack_require__(12),
-         /* template */
-         __webpack_require__(13),
-         /* styles */
-         injectStyle,
-         /* scopeId */
-         "data-v-66798af2",
-         /* moduleIdentifier (server only) */
-         null
-       )
-       Component.options.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/panel.vue"
-       if (Component.esModule && Object.keys(Component.esModule).some(function 
(key) {return key !== "default" && key.substr(0, 2) !== "__"})) 
{console.error("named exports are not supported in *.vue files.")}
-       if (Component.options.functional) {console.error("[vue-loader] 
panel.vue: functional components are not supported with templates, they should 
use render functions.")}
-
-       /* hot reload */
-       if (false) {(function () {
-         var hotAPI = require("vue-hot-reload-api")
-         hotAPI.install(require("vue"), false)
-         if (!hotAPI.compatible) return
-         module.hot.accept()
-         if (!module.hot.data) {
-           hotAPI.createRecord("data-v-66798af2", Component.options)
-         } else {
-           hotAPI.reload("data-v-66798af2", Component.options)
-         }
-         module.hot.dispose(function (data) {
-           disposed = true
-         })
-       })()}
-
-       module.exports = Component.exports
-
-
-/***/ }),
-/* 10 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       // style-loader: Adds some css to the DOM by adding a <style> tag
-
-       // load the styles
-       var content = __webpack_require__(11);
-       if(typeof content === 'string') content = [[module.id, content, '']];
-       if(content.locals) module.exports = content.locals;
-       // add the styles to the DOM
-       var update = __webpack_require__(5)("392aaf4e", content, false);
-       // Hot Module Replacement
-       if(false) {
-        // When the styles change, update the <style> tags
-        if(!content.locals) {
-          
module.hot.accept("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-66798af2\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./panel.vue",
 function() {
-            var newContent = 
require("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-66798af2\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./panel.vue");
-            if(typeof newContent === 'string') newContent = [[module.id, 
newContent, '']];
-            update(newContent);
-          });
-        }
-        // When the module is disposed, remove the <style> tags
-        module.hot.dispose(function() { update(); });
-       }
-
-/***/ }),
-/* 11 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       exports = module.exports = __webpack_require__(4)();
-       // imports
-
-
-       // module
-       exports.push([module.id, "\n.panel[data-v-66798af2] {\n  margin-bottom: 
20px;\n  background-color: #fff;\n  /*border: 1px solid transparent;*/\n  
/*border-radius: 10px;*/\n  /*-webkit-box-shadow: 0 1px 1px 
rgba(0,0,0,.05);*/\n  /*box-shadow: 0 1px 1px rgba(0,0,0,.05);*/\n  
border-color: #dddddd;\n  border-width: 
1px;\n}\n.panel-default[data-v-66798af2] {\n}\n.panel-primary[data-v-66798af2] 
{\n  border-color: rgb(40, 96, 144);\n}\n.panel-success[data-v-66798af2] {\n  
border-color: rgb(76, 174, 76);\n}\n.panel-info[data-v-66798af2] {\n  
border-color: rgb(70, 184, 218);\n}\n.panel-warning[data-v-66798af2] {\n  
border-color: rgb(238, 162, 54);\n}\n.panel-danger[data-v-66798af2] {\n  
border-color: rgb(212, 63, 58);\n}\n.panel-header[data-v-66798af2] {\n  
background-color: #f5f5f5;\n  font-size: 40px;\n  /*padding-left: 12px;*/\n  
/*padding-right: 12px;*/\n  /*padding-top: 20px;*/\n  /*padding-bottom: 
20px;*/\n  color: #333;\n}\n.panel-header-default[data-v-66798af2] 
{\n}\n.panel-header-
 primary[data-v-66798af2] {\n  background-color: rgb(40, 96, 144);\n  color: 
#ffffff;\n}\n.panel-header-success[data-v-66798af2] {\n  background-color: 
rgb(92, 184, 92);\n  color: #ffffff;\n}\n.panel-header-info[data-v-66798af2] 
{\n  background-color: rgb(91, 192, 222);\n  color: 
#ffffff;\n}\n.panel-header-warning[data-v-66798af2] {\n  background-color: 
rgb(240, 173, 78);\n  color: #ffffff;\n}\n.panel-header-danger[data-v-66798af2] 
{\n  background-color: rgb(217, 83, 79);\n  color: 
#ffffff;\n}\n.panel-body[data-v-66798af2] {\n  padding-left: 12px;\n  
padding-right: 12px;\n  padding-top: 20px;\n  padding-bottom: 
20px;\n}\n.panel-body-default[data-v-66798af2] 
{\n}\n.panel-body-primary[data-v-66798af2] 
{\n}\n.panel-body-success[data-v-66798af2] 
{\n}\n.panel-body-info[data-v-66798af2] 
{\n}\n.panel-body-warning[data-v-66798af2] 
{\n}\n.panel-body-danger[data-v-66798af2] {\n}\n", ""]);
-
-       // exports
-
-
-/***/ }),
-/* 12 */
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           type: { default: 'default' },
-           title: { default: '' },
-           paddingBody: { default: 20 },
-           paddingHead: { default: 20 },
-           dataClass: { default: '' }, // FIXME transfer class
-           border: { default: 0 }
-         }
-       };
-
-/***/ }),
-/* 13 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           class: ['panel', 'panel-' + _vm.type],
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle({
-             borderWidth: _vm.border
-           }))
-         }, [_c('text', {
-           class: ['panel-header', 'panel-header-' + _vm.type],
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle({
-             paddingTop: _vm.paddingHead,
-             paddingBottom: _vm.paddingHead,
-             paddingLeft: _vm.paddingHead * 1.5,
-             paddingRight: _vm.paddingHead * 1.5
-           }))
-         }, [_vm._v(_vm._s(_vm.title))]), _vm._v(" "), _c('div', {
-           class: ['panel-body', 'panel-body-' + _vm.type],
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle({
-             paddingTop: _vm.paddingBody,
-             paddingBottom: _vm.paddingBody,
-             paddingLeft: _vm.paddingBody * 1.5,
-             paddingRight: _vm.paddingBody * 1.5
-           }))
-         }, [_vm._t("default")], 2)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-       if (false) {
-         module.hot.accept()
-         if (module.hot.data) {
-            require("vue-hot-reload-api").rerender("data-v-66798af2", 
module.exports)
-         }
-       }
-
-/***/ }),
-/* 14 */,
-/* 15 */,
-/* 16 */,
-/* 17 */,
-/* 18 */,
-/* 19 */,
-/* 20 */,
-/* 21 */,
-/* 22 */,
-/* 23 */,
-/* 24 */,
-/* 25 */,
-/* 26 */,
-/* 27 */,
-/* 28 */,
-/* 29 */,
-/* 30 */,
-/* 31 */,
-/* 32 */,
-/* 33 */,
-/* 34 */,
-/* 35 */,
-/* 36 */,
-/* 37 */,
-/* 38 */,
-/* 39 */,
-/* 40 */,
-/* 41 */,
-/* 42 */,
-/* 43 */,
-/* 44 */,
-/* 45 */,
-/* 46 */,
-/* 47 */,
-/* 48 */,
-/* 49 */,
-/* 50 */,
-/* 51 */,
-/* 52 */,
-/* 53 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       var disposed = false
-       var Component = __webpack_require__(7)(
-         /* script */
-         __webpack_require__(54),
-         /* template */
-         __webpack_require__(60),
-         /* styles */
-         null,
-         /* scopeId */
-         null,
-         /* moduleIdentifier (server only) */
-         null
-       )
-       Component.options.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/marquee.vue"
-       if (Component.esModule && Object.keys(Component.esModule).some(function 
(key) {return key !== "default" && key.substr(0, 2) !== "__"})) 
{console.error("named exports are not supported in *.vue files.")}
-       if (Component.options.functional) {console.error("[vue-loader] 
marquee.vue: functional components are not supported with templates, they 
should use render functions.")}
-
-       /* hot reload */
-       if (false) {(function () {
-         var hotAPI = require("vue-hot-reload-api")
-         hotAPI.install(require("vue"), false)
-         if (!hotAPI.compatible) return
-         module.hot.accept()
-         if (!module.hot.data) {
-           hotAPI.createRecord("data-v-d0289538", Component.options)
-         } else {
-           hotAPI.reload("data-v-d0289538", Component.options)
-         }
-         module.hot.dispose(function (data) {
-           disposed = true
-         })
-       })()}
-
-       module.exports = Component.exports
-
-
-/***/ }),
-/* 54 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         data: function data() {
-           return {
-             marquee: {
-               height: 30,
-               duration: 1500,
-               interval: 2000,
-               list: [{ text: 'Introducing Bots on Messenger' }, { text: 
'Capturing 3D 360-Stereo VR Video' }, { text: 'The Future of Video on Facebook' 
}, { text: 'Announcing Vue.js 2.0' }, { text: 'Not Your Average Virtual-DOM' }, 
{ text: 'Templates, JSX, or Hyperscript?' }]
-             }
-           };
-         },
-         components: {
-           panel: __webpack_require__(9),
-           marquee: __webpack_require__(55)
-         },
-         methods: {
-           marqueeChange: function marqueeChange(e) {
-             console.log(e);
-           }
-         }
-       };
-
-/***/ }),
-/* 55 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       var disposed = false
-       function injectStyle (ssrContext) {
-         if (disposed) return
-         __webpack_require__(56)
-       }
-       var Component = __webpack_require__(7)(
-         /* script */
-         __webpack_require__(58),
-         /* template */
-         __webpack_require__(59),
-         /* styles */
-         injectStyle,
-         /* scopeId */
-         "data-v-58176c90",
-         /* moduleIdentifier (server only) */
-         null
-       )
-       Component.options.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/marquee.vue"
-       if (Component.esModule && Object.keys(Component.esModule).some(function 
(key) {return key !== "default" && key.substr(0, 2) !== "__"})) 
{console.error("named exports are not supported in *.vue files.")}
-       if (Component.options.functional) {console.error("[vue-loader] 
marquee.vue: functional components are not supported with templates, they 
should use render functions.")}
-
-       /* hot reload */
-       if (false) {(function () {
-         var hotAPI = require("vue-hot-reload-api")
-         hotAPI.install(require("vue"), false)
-         if (!hotAPI.compatible) return
-         module.hot.accept()
-         if (!module.hot.data) {
-           hotAPI.createRecord("data-v-58176c90", Component.options)
-         } else {
-           hotAPI.reload("data-v-58176c90", Component.options)
-         }
-         module.hot.dispose(function (data) {
-           disposed = true
-         })
-       })()}
-
-       module.exports = Component.exports
-
-
-/***/ }),
-/* 56 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       // style-loader: Adds some css to the DOM by adding a <style> tag
-
-       // load the styles
-       var content = __webpack_require__(57);
-       if(typeof content === 'string') content = [[module.id, content, '']];
-       if(content.locals) module.exports = content.locals;
-       // add the styles to the DOM
-       var update = __webpack_require__(5)("5521c87a", content, false);
-       // Hot Module Replacement
-       if(false) {
-        // When the styles change, update the <style> tags
-        if(!content.locals) {
-          
module.hot.accept("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-58176c90\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./marquee.vue",
 function() {
-            var newContent = 
require("!!../../../node_modules/css-loader/index.js!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-58176c90\",\"scoped\":true,\"hasInlineConfig\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./marquee.vue");
-            if(typeof newContent === 'string') newContent = [[module.id, 
newContent, '']];
-            update(newContent);
-          });
-        }
-        // When the module is disposed, remove the <style> tags
-        module.hot.dispose(function() { update(); });
-       }
-
-/***/ }),
-/* 57 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       exports = module.exports = __webpack_require__(4)();
-       // imports
-
-
-       // module
-       exports.push([module.id, "\n.wrap[data-v-58176c90] {\n  overflow: 
hidden;\n  position: relative;\n}\n.anim[data-v-58176c90] {\n  flex-direction: 
column;\n  position: absolute;\n  transform: translateY(0) 
translateZ(0);\n}\n", ""]);
-
-       // exports
-
-
-/***/ }),
-/* 58 */
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       var _animation = weex.requireModule('animation');
-
-       module.exports = {
-         props: {
-           step: { default: 0 },
-           count: { default: 0 },
-           index: { default: 1 },
-           duration: { default: 0 },
-           interval: { default: 0 },
-           outofview: { default: false }
-         },
-         created: function created() {
-           if (this.interval > 0 && this.step > 0 && this.duration > 0) {
-             this.run();
-           }
-         },
-         methods: {
-           run: function run() {
-             if (this.outofview) {
-               setTimeout(this.run.bind(this), this.interval);
-             } else {
-               setTimeout(function () {
-                 this.animation(this.run.bind(this));
-               }.bind(this), this.interval);
-             }
-           },
-           animation: function animation(cb) {
-             var offset = -this.step * this.index;
-             _animation.transition(this.$refs.anim, {
-               styles: {
-                 transform: 'translateY(' + offset + 'px) translateZ(0)'
-               },
-               timingFunction: 'ease',
-               duration: this.duration
-             }, function () {
-               this.index = (this.index + 1) % this.count;
-               this.$emit('change', {
-                 index: this.index,
-                 count: this.count
-               });
-               cb && cb();
-             }.bind(this));
-           },
-           appeared: function appeared() {
-             this.outofview = false;
-           },
-           disappeared: function disappeared() {
-             this.outofview = true;
-           }
-         }
-       };
-
-/***/ }),
-/* 59 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           staticClass: "wrap",
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle(undefined)),
-           on: {
-             "appear": _vm.appeared,
-             "disappear": _vm.disappeared
-           }
-         }, [_c('div', {
-           ref: "anim",
-           staticClass: "anim",
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle(undefined))
-         }, [_vm._t("default")], 2)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-       if (false) {
-         module.hot.accept()
-         if (module.hot.data) {
-            require("vue-hot-reload-api").rerender("data-v-58176c90", 
module.exports)
-         }
-       }
-
-/***/ }),
-/* 60 */
-/***/ (function(module, exports, __webpack_require__) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('scroller', [_c('panel', {
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle(undefined)),
-           attrs: {
-             "title": "Marquee",
-             "type": "primary"
-           }
-         }, [_c('marquee', {
-           staticStyle: _vm.$processStyle(undefined),
-           style: (_vm.$processStyle({
-             width: 700,
-             height: _vm.marquee.height * 2,
-             backgroundColor: 'rgb(223, 240, 216)',
-             borderRadius: 8,
-             paddingLeft: 10,
-             paddingRight: 10
-           })),
-           attrs: {
-             "step": _vm.marquee.height * 2,
-             "count": _vm.marquee.list.length,
-             "interval": _vm.marquee.interval,
-             "duration": _vm.marquee.duration
-           },
-           on: {
-             "change": _vm.marqueeChange
-           }
-         }, _vm._l((_vm.marquee.list), function(item, i) {
-           return _c('div', {
-             key: i,
-             staticStyle: _vm.$processStyle(undefined),
-             style: (_vm.$processStyle({
-               height: _vm.marquee.height * _vm.marquee.length,
-               paddingTop: _vm.marquee.height * 0.5,
-               paddingBottom: _vm.marquee.height * 0.5,
-               overflow: 'hidden'
-             }))
-           }, [_c('text', {
-             staticStyle: _vm.$processStyle(undefined),
-             style: (_vm.$processStyle({
-               height: _vm.marquee.height,
-               color: 'rgb(60, 118, 61)',
-               fontSize: 28
-             }))
-           }, [_vm._v(_vm._s(item.text))])])
-         }))], 1)], 1)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-       if (false) {
-         module.hot.accept()
-         if (module.hot.data) {
-            require("vue-hot-reload-api").rerender("data-v-d0289538", 
module.exports)
-         }
-       }
-
-/***/ })
-/******/ ]);
\ No newline at end of file

Reply via email to