You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by cx...@apache.org on 2017/03/27 07:42:20 UTC

[14/18] incubator-weex git commit: Merge branch 'v0.10.0-playground' into 0.11-dev

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/geolocation.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/geolocation.js b/android/playground/app/src/main/assets/geolocation.js
new file mode 100644
index 0000000..09b72b4
--- /dev/null
+++ b/android/playground/app/src/main/assets/geolocation.js
@@ -0,0 +1,183 @@
+/******/ (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 __weex_template__ = __webpack_require__(187)
+	var __weex_script__ = __webpack_require__(188)
+
+	__weex_define__('@weex-component/c1022e7ee9ce09ed1eadcf7bffe1b341', [], function(__weex_require__, __weex_exports__, __weex_module__) {
+
+	    __weex_script__(__weex_module__, __weex_exports__, __weex_require__)
+	    if (__weex_exports__.__esModule && __weex_exports__.default) {
+	      __weex_module__.exports = __weex_exports__.default
+	    }
+
+	    __weex_module__.exports.template = __weex_template__
+
+	})
+
+	__weex_bootstrap__('@weex-component/c1022e7ee9ce09ed1eadcf7bffe1b341',undefined,undefined)
+
+/***/ },
+
+/***/ 34:
+/***/ function(module, exports) {
+
+	var core = module.exports = {version: '2.4.0'};
+	if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+
+/***/ },
+
+/***/ 187:
+/***/ function(module, exports) {
+
+	module.exports = {
+	  "type": "scroller",
+	  "children": [
+	    {
+	      "type": "div",
+	      "style": {
+	        "alignItems": "center"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "style": {
+	            "fontSize": 30,
+	            "color": "#000000"
+	          },
+	          "attr": {
+	            "value": function () {return this.location}
+	          }
+	        },
+	        {
+	          "type": "text",
+	          "style": {
+	            "fontSize": 35,
+	            "color": "#FFA07A"
+	          },
+	          "attr": {
+	            "value": function () {return this.watchlocation}
+	          }
+	        }
+	      ]
+	    }
+	  ]
+	}
+
+/***/ },
+
+/***/ 188:
+/***/ function(module, exports, __webpack_require__) {
+
+	module.exports = function(module, exports, __weex_require__){"use strict";
+
+	var _stringify = __webpack_require__(189);
+
+	var _stringify2 = _interopRequireDefault(_stringify);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	module.exports = {
+	    data: function () {return {
+	        location: "\u7b49\u5f85\u5b9a\u4f4d\u6570\u636e",
+	        watchlocation: "watch location",
+	        i: 0
+	    }},
+	    created: function created() {
+	        var geolocation = __weex_require__('@weex-module/geolocation');
+	        geolocation.getCurrentPosition(function (result) {
+	            console.log("into--[getCurrentPosition success] result:" + (0, _stringify2.default)(result));
+	            this.location = (0, _stringify2.default)(result);
+	        }.bind(this), function (result) {
+	            console.log("into--[getCurrentPosition error] result:" + (0, _stringify2.default)(result));
+	            this.location = (0, _stringify2.default)(result);
+	        }.bind(this), { enableHighAcuracy: false, address: true });
+
+	        geolocation.watchPosition(function (result) {
+	            console.log("into--[watchPosition success] result:" + (0, _stringify2.default)(result));
+	            var str = this.watchlocation + '\n' + (0, _stringify2.default)(result);
+	            this.watchlocation = str;
+	            this.i += 1;
+
+	            if (this.i == 2) {
+	                geolocation.clearWatch(result.registerId);
+	                __weex_require__('@weex-module/modal').toast({
+	                    'message': "[clear watch] id:" + result.registerId,
+	                    'duration': 1
+	                });
+	            }
+	        }.bind(this), function (result) {
+	            console.log("into--[watchPosition success] result:" + (0, _stringify2.default)(result));
+	            this.watchlocation = (0, _stringify2.default)(result);
+	        }.bind(this), { enableHighAcuracy: false, address: true });
+	    },
+	    methods: {}
+	};}
+	/* generated by weex-loader */
+
+
+/***/ },
+
+/***/ 189:
+/***/ function(module, exports, __webpack_require__) {
+
+	module.exports = { "default": __webpack_require__(190), __esModule: true };
+
+/***/ },
+
+/***/ 190:
+/***/ function(module, exports, __webpack_require__) {
+
+	var core  = __webpack_require__(34)
+	  , $JSON = core.JSON || (core.JSON = {stringify: JSON.stringify});
+	module.exports = function stringify(it){ // eslint-disable-line no-unused-vars
+	  return $JSON.stringify.apply($JSON, arguments);
+	};
+
+/***/ }
+
+/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/hello_weex.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/hello_weex.js b/android/playground/app/src/main/assets/hello_weex.js
deleted file mode 100644
index fddcc12..0000000
--- a/android/playground/app/src/main/assets/hello_weex.js
+++ /dev/null
@@ -1,28 +0,0 @@
-define('@weex-component/037a188b382be8b4caa073b6cf436427', function(require, exports, module) {
-
-    ;
-
-    ;
-    module.exports.style = {}
-
-    ;
-    module.exports.template = {
-        "type": "div",
-        "children": [{
-            "type": "text",
-            "style": {
-                "fontSize": 100
-            },
-            "attr": {
-                "value": "Hello World."
-            }
-        }]
-    }
-
-    ;
-})
-
-// require module
-bootstrap('@weex-component/037a188b382be8b4caa073b6cf436427', {
-    "transformerVersion": "0.3.1"
-})
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/index.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/index.js b/android/playground/app/src/main/assets/index.js
index df12bd1..1264d6b 100644
--- a/android/playground/app/src/main/assets/index.js
+++ b/android/playground/app/src/main/assets/index.js
@@ -2958,7 +2958,7 @@
 	module.exports = {
 	  data: function () {return {
 	    root: 'examples',
-	    items: [{ name: 'hello', title: 'Hello World' }, { name: 'style/index', title: 'Common Style' }, { name: 'animation', title: 'Animation' }, { name: 'component/text-demo', title: 'Text' }, { name: 'component/image-demo', title: 'Image' }, { name: 'component/input-demo', title: 'Input' }, { name: 'component/scroller-demo', title: 'Scroller' }, { name: 'component/list/list-basic', title: 'List (Basic)' }, { name: 'component/list/list-demo', title: 'List (Advanced)' }, { name: 'component/slider/index', title: 'Slider' }, { name: 'component/a-demo', title: 'A' }, { name: 'component/video-demo', title: 'Video' }, { name: 'component/countdown-demo', title: 'Countdown' }, { name: 'component/marquee-demo', title: 'Marquee' }, { name: 'component/web-demo', title: 'Web' }, { name: 'component/navigator-demo', title: 'Navigator' }, { name: 'component/tabbar/tabbar-demo', title: 'Tabbar' }, { name: 'component/process-bar-demo', title: 'ProcessBar' }, { name: 'module/instance-api', title: 'In
 stance API' }, { name: 'module/modal', title: 'Modal' }, { name: 'module/stream-demo', title: 'Stream' }, { name: 'module/storage-demo', title: 'Storage' }, { name: 'module/picker-demo', title: 'Picker' }, { name: 'module/componentRect', title: 'componentRect' }, { name: 'module/clipboard', title: 'Clipboard' }, { name: 'showcase/new-fashion/index', title: 'Activity' }, { name: 'showcase/calculator', title: 'Calculator' }, { name: 'showcase/minesweeper', title: 'Minesweeper' }, { name: 'showcase/ui', title: 'UI Gallery' }, { name: 'showcase/dropdown/dropdown-demo', title: 'Dropdown' }]
+	    items: [{ name: 'hello', title: 'Hello World' }, { name: 'style/index', title: 'Common Style' }, { name: 'animation', title: 'Animation' }, { name: 'linear-gradient', title: 'Gradient Color' }, { name: 'component/text-demo', title: 'Text' }, { name: 'component/image-demo', title: 'Image' }, { name: 'component/input-demo', title: 'Input' }, { name: 'component/scroller-demo', title: 'Scroller' }, { name: 'component/list/list-basic', title: 'List (Basic)' }, { name: 'component/list/list-demo', title: 'List (Advanced)' }, { name: 'component/slider/index', title: 'Slider' }, { name: 'component/slider-neighbor/index', title: 'Slider Neighbor' }, { name: 'component/a-demo', title: 'A' }, { name: 'component/video-demo', title: 'Video' }, { name: 'component/countdown-demo', title: 'Countdown' }, { name: 'component/marquee-demo', title: 'Marquee' }, { name: 'component/web-demo', title: 'Web' }, { name: 'component/navigator-demo', title: 'Navigator' }, { name: 'component/tabbar/tabbar-dem
 o', title: 'Tabbar' }, { name: 'component/process-bar-demo', title: 'ProcessBar' }, { name: 'module/instance-api', title: 'Instance API' }, { name: 'module/modal', title: 'Modal' }, { name: 'module/stream-demo', title: 'Stream' }, { name: 'module/websocket-demo', title: 'WebSocket' }, { name: 'module/storage-demo', title: 'Storage' }, { name: 'module/picker-demo', title: 'Picker' }, { name: 'module/componentRect', title: 'componentRect' }, { name: 'module/clipboard', title: 'Clipboard' }, { name: 'showcase/new-fashion/index', title: 'Activity' }, { name: 'showcase/calculator', title: 'Calculator' }, { name: 'showcase/minesweeper', title: 'Minesweeper' }, { name: 'showcase/ui', title: 'UI Gallery' }, { name: 'showcase/dropdown/dropdown-demo', title: 'Dropdown' }, { name: 'showcase/pseudo-class', title: 'PseudoClass' }]
 	  }}
 	};}
 	/* generated by weex-loader */

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/linear-gradient.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/linear-gradient.js b/android/playground/app/src/main/assets/linear-gradient.js
new file mode 100644
index 0000000..3866ce5
--- /dev/null
+++ b/android/playground/app/src/main/assets/linear-gradient.js
@@ -0,0 +1,367 @@
+/******/ (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 __weex_template__ = __webpack_require__(205)
+	var __weex_style__ = __webpack_require__(206)
+
+	__weex_define__('@weex-component/695f94322dfa977e2812d2616f20e495', [], function(__weex_require__, __weex_exports__, __weex_module__) {
+
+	    __weex_module__.exports.template = __weex_template__
+
+	    __weex_module__.exports.style = __weex_style__
+
+	})
+
+	__weex_bootstrap__('@weex-component/695f94322dfa977e2812d2616f20e495',undefined,undefined)
+
+/***/ },
+
+/***/ 205:
+/***/ function(module, exports) {
+
+	module.exports = {
+	  "type": "scroller",
+	  "style": {
+	    "backgroundColor": "#3a3a3a"
+	  },
+	  "children": [
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to right,#43C6AC,#F8FFAE)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to right"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to left,#DCE35B,#45B649)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to left"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to bottom,#3494E6,#EC6EAD)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to bottom"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to top,#ee0979,#ff6a00)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to top"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "style": {
+	        "flexDirection": "row",
+	        "alignItems": "center",
+	        "justifyContent": "center"
+	      },
+	      "children": [
+	        {
+	          "type": "div",
+	          "classList": [
+	            "container2"
+	          ],
+	          "style": {
+	            "backgroundImage": "linear-gradient(to bottom right,#00c3ff,#ffff1c)"
+	          },
+	          "children": [
+	            {
+	              "type": "text",
+	              "classList": [
+	                "direction"
+	              ],
+	              "attr": {
+	                "value": "to bottom right"
+	              }
+	            }
+	          ]
+	        },
+	        {
+	          "type": "div",
+	          "classList": [
+	            "container2"
+	          ],
+	          "style": {
+	            "backgroundImage": "linear-gradient(to top left,#ff00cc,#333399)"
+	          },
+	          "children": [
+	            {
+	              "type": "text",
+	              "classList": [
+	                "direction"
+	              ],
+	              "attr": {
+	                "value": "to top left"
+	              }
+	            }
+	          ]
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to right,#a80077,#66ff00)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to right"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to left,#a80077,#66ff00)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to left"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to bottom,#a80077,#66ff00)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to bottom"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "classList": [
+	        "container1"
+	      ],
+	      "style": {
+	        "backgroundImage": "linear-gradient(to top,#a80077,#66ff00)"
+	      },
+	      "children": [
+	        {
+	          "type": "text",
+	          "classList": [
+	            "direction"
+	          ],
+	          "attr": {
+	            "value": "to top"
+	          }
+	        }
+	      ]
+	    },
+	    {
+	      "type": "div",
+	      "style": {
+	        "flexDirection": "row",
+	        "alignItems": "center",
+	        "justifyContent": "center"
+	      },
+	      "children": [
+	        {
+	          "type": "div",
+	          "classList": [
+	            "container2"
+	          ],
+	          "style": {
+	            "backgroundImage": "linear-gradient(to bottom right,#a80077,#66ff00)"
+	          },
+	          "children": [
+	            {
+	              "type": "text",
+	              "classList": [
+	                "direction"
+	              ],
+	              "attr": {
+	                "value": "to bottom right"
+	              }
+	            }
+	          ]
+	        },
+	        {
+	          "type": "div",
+	          "classList": [
+	            "container2"
+	          ],
+	          "style": {
+	            "backgroundImage": "linear-gradient(to top left,#a80077,#66ff00)"
+	          },
+	          "children": [
+	            {
+	              "type": "text",
+	              "classList": [
+	                "direction"
+	              ],
+	              "attr": {
+	                "value": "to top left"
+	              }
+	            }
+	          ]
+	        }
+	      ]
+	    }
+	  ]
+	}
+
+/***/ },
+
+/***/ 206:
+/***/ function(module, exports) {
+
+	module.exports = {
+	  "container1": {
+	    "margin": 10,
+	    "width": 730,
+	    "height": 200,
+	    "alignItems": "center",
+	    "justifyContent": "center",
+	    "border": "solid",
+	    "borderRadius": 10
+	  },
+	  "container2": {
+	    "margin": 10,
+	    "width": 300,
+	    "height": 300,
+	    "alignItems": "center",
+	    "justifyContent": "center",
+	    "border": "solid",
+	    "borderRadius": 10
+	  },
+	  "direction": {
+	    "fontSize": 40,
+	    "color": "#FFFFFF"
+	  }
+	}
+
+/***/ }
+
+/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/clipboard.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/clipboard.js b/android/playground/app/src/main/assets/module/clipboard.js
index 52eb12e..227c758 100644
--- a/android/playground/app/src/main/assets/module/clipboard.js
+++ b/android/playground/app/src/main/assets/module/clipboard.js
@@ -44,8 +44,8 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(205)
-	var __weex_script__ = __webpack_require__(206)
+	var __weex_template__ = __webpack_require__(207)
+	var __weex_script__ = __webpack_require__(208)
 
 	__weex_define__('@weex-component/e93e729eb05598f04027627a24c804bf', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2158,7 +2158,9 @@
 /* 202 */,
 /* 203 */,
 /* 204 */,
-/* 205 */
+/* 205 */,
+/* 206 */,
+/* 207 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2252,7 +2254,7 @@
 	}
 
 /***/ },
-/* 206 */
+/* 208 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';
@@ -2281,22 +2283,23 @@
 	    },
 
 	    doCopy: function doCopy() {
-	      textToCopy = "autoGenerateTextToCopy" + Math.random();
+	      var self = this;
+	      var textToCopy = "autoGenerateTextToCopy" + Math.random();
 
-	      var $clipboard = __weex_require__('@weex-module/clipboard');
-	      $clipboard.setString(textToCopy);
+	      var clipboard = __weex_require__('@weex-module/clipboard');
+	      clipboard.setString(textToCopy);
 
-	      this.textToCopy = textToCopy;
-	      this.tips = "copy done. Now system clipboard has string of '" + textToCopy + "', try PASTE button, or paste in another app.";
+	      self.textToCopy = textToCopy;
+	      self.tips = "copy done. Now system clipboard has string of '" + textToCopy + "', try PASTE button, or paste in another app.";
 	    },
 
 	    doPaste: function doPaste() {
-	      var $clipboard = __weex_require__('@weex-module/clipboard');
+	      var clipboard = __weex_require__('@weex-module/clipboard');
 	      var me = this;
-	      $clipboard.getString(function (ret) {
+	      clipboard.getString(function (ret) {
 	        console.log("paste result is " + (0, _stringify2.default)(ret));
 
-	        me.textFromPaste = ret.data;
+	        me.textFromPaste = (0, _stringify2.default)(ret);
 	        me.tips = "Paste done. Only support native(Android/iOS) NOW. according to security reason, paste in html5 is not supported.";
 	      });
 	    }

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/componentRect.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/componentRect.js b/android/playground/app/src/main/assets/module/componentRect.js
index 10bb3ce..f8e1d32 100644
--- a/android/playground/app/src/main/assets/module/componentRect.js
+++ b/android/playground/app/src/main/assets/module/componentRect.js
@@ -45,9 +45,10 @@
 /***/ 0:
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(207)
-	var __weex_style__ = __webpack_require__(208)
-	var __weex_script__ = __webpack_require__(209)
+	__webpack_require__(209)
+	var __weex_template__ = __webpack_require__(213)
+	var __weex_style__ = __webpack_require__(214)
+	var __weex_script__ = __webpack_require__(215)
 
 	__weex_define__('@weex-component/3cccb00caad47f9888c7597d009c670e', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -66,7 +67,101 @@
 
 /***/ },
 
-/***/ 207:
+/***/ 209:
+/***/ function(module, exports, __webpack_require__) {
+
+	var __weex_template__ = __webpack_require__(210)
+	var __weex_style__ = __webpack_require__(211)
+	var __weex_script__ = __webpack_require__(212)
+
+	__weex_define__('@weex-component/multi-text', [], function(__weex_require__, __weex_exports__, __weex_module__) {
+
+	    __weex_script__(__weex_module__, __weex_exports__, __weex_require__)
+	    if (__weex_exports__.__esModule && __weex_exports__.default) {
+	      __weex_module__.exports = __weex_exports__.default
+	    }
+
+	    __weex_module__.exports.template = __weex_template__
+
+	    __weex_module__.exports.style = __weex_style__
+
+	})
+
+
+/***/ },
+
+/***/ 210:
+/***/ function(module, exports) {
+
+	module.exports = {
+	  "type": "div",
+	  "style": {
+	    "flexDirection": "row"
+	  },
+	  "children": [
+	    {
+	      "type": "text",
+	      "classList": [
+	        "text-style",
+	        "text-descript"
+	      ],
+	      "attr": {
+	        "value": function () {return this.descript}
+	      }
+	    },
+	    {
+	      "type": "text",
+	      "classList": [
+	        "text-style",
+	        "text-detail"
+	      ],
+	      "attr": {
+	        "value": function () {return this.detail}
+	      }
+	    }
+	  ]
+	}
+
+/***/ },
+
+/***/ 211:
+/***/ function(module, exports) {
+
+	module.exports = {
+	  "text-style": {
+	    "fontSize": 30,
+	    "marginTop": 15,
+	    "marginLeft": 15,
+	    "marginBottom": 15
+	  },
+	  "text-descript": {
+	    "fontWeight": "bold",
+	    "flex": 1
+	  },
+	  "text-detail": {
+	    "flex": 1
+	  }
+	}
+
+/***/ },
+
+/***/ 212:
+/***/ function(module, exports) {
+
+	module.exports = function(module, exports, __weex_require__){'use strict';
+
+	module.exports = {
+	  data: function () {return {
+	    descript: '',
+	    detail: ''
+	  }}
+	};}
+	/* generated by weex-loader */
+
+
+/***/ },
+
+/***/ 213:
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -335,7 +430,7 @@
 
 /***/ },
 
-/***/ 208:
+/***/ 214:
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -412,7 +507,7 @@
 
 /***/ },
 
-/***/ 209:
+/***/ 215:
 /***/ function(module, exports) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/instance-api.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/instance-api.js b/android/playground/app/src/main/assets/module/instance-api.js
index 94234d3..512d721 100644
--- a/android/playground/app/src/main/assets/module/instance-api.js
+++ b/android/playground/app/src/main/assets/module/instance-api.js
@@ -44,8 +44,8 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(210)
-	var __weex_script__ = __webpack_require__(211)
+	var __weex_template__ = __webpack_require__(216)
+	var __weex_script__ = __webpack_require__(217)
 
 	__weex_define__('@weex-component/2c1f438ffab50b73880065c54d5a1b0c', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2163,7 +2163,13 @@
 /* 207 */,
 /* 208 */,
 /* 209 */,
-/* 210 */
+/* 210 */,
+/* 211 */,
+/* 212 */,
+/* 213 */,
+/* 214 */,
+/* 215 */,
+/* 216 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2188,7 +2194,7 @@
 	}
 
 /***/ },
-/* 211 */
+/* 217 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/modal.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/modal.js b/android/playground/app/src/main/assets/module/modal.js
index d541347..a98d0d0 100644
--- a/android/playground/app/src/main/assets/module/modal.js
+++ b/android/playground/app/src/main/assets/module/modal.js
@@ -44,9 +44,9 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(212)
-	var __weex_style__ = __webpack_require__(213)
-	var __weex_script__ = __webpack_require__(214)
+	var __weex_template__ = __webpack_require__(218)
+	var __weex_style__ = __webpack_require__(219)
+	var __weex_script__ = __webpack_require__(220)
 
 	__weex_define__('@weex-component/3e30f1e2562a57b329ab7ebd1387f07b', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2154,7 +2154,13 @@
 /* 209 */,
 /* 210 */,
 /* 211 */,
-/* 212 */
+/* 212 */,
+/* 213 */,
+/* 214 */,
+/* 215 */,
+/* 216 */,
+/* 217 */,
+/* 218 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2228,13 +2234,13 @@
 	}
 
 /***/ },
-/* 213 */
+/* 219 */
 /***/ function(module, exports) {
 
 	module.exports = {}
 
 /***/ },
-/* 214 */
+/* 220 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/picker-demo.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/picker-demo.js b/android/playground/app/src/main/assets/module/picker-demo.js
index d463747..2f2e1c8 100644
--- a/android/playground/app/src/main/assets/module/picker-demo.js
+++ b/android/playground/app/src/main/assets/module/picker-demo.js
@@ -44,9 +44,9 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(215)
-	var __weex_style__ = __webpack_require__(216)
-	var __weex_script__ = __webpack_require__(217)
+	var __weex_template__ = __webpack_require__(221)
+	var __weex_style__ = __webpack_require__(222)
+	var __weex_script__ = __webpack_require__(223)
 
 	__weex_define__('@weex-component/713f21e067b638ad251dbcb7d5b37be5', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2157,7 +2157,13 @@
 /* 212 */,
 /* 213 */,
 /* 214 */,
-/* 215 */
+/* 215 */,
+/* 216 */,
+/* 217 */,
+/* 218 */,
+/* 219 */,
+/* 220 */,
+/* 221 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2268,7 +2274,7 @@
 	}
 
 /***/ },
-/* 216 */
+/* 222 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2280,7 +2286,7 @@
 	}
 
 /***/ },
-/* 217 */
+/* 223 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/storage-demo.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/storage-demo.js b/android/playground/app/src/main/assets/module/storage-demo.js
index 3a8147e..5aa0088 100644
--- a/android/playground/app/src/main/assets/module/storage-demo.js
+++ b/android/playground/app/src/main/assets/module/storage-demo.js
@@ -44,8 +44,8 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(218)
-	var __weex_script__ = __webpack_require__(219)
+	var __weex_template__ = __webpack_require__(224)
+	var __weex_script__ = __webpack_require__(225)
 
 	__weex_define__('@weex-component/6f110d391fd7b90c9a19583f6ee1a7cf', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2171,7 +2171,13 @@
 /* 215 */,
 /* 216 */,
 /* 217 */,
-/* 218 */
+/* 218 */,
+/* 219 */,
+/* 220 */,
+/* 221 */,
+/* 222 */,
+/* 223 */,
+/* 224 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2260,7 +2266,7 @@
 	}
 
 /***/ },
-/* 219 */
+/* 225 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/93063f14/android/playground/app/src/main/assets/module/stream-demo.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/module/stream-demo.js b/android/playground/app/src/main/assets/module/stream-demo.js
index 565bc42..36cfffe 100644
--- a/android/playground/app/src/main/assets/module/stream-demo.js
+++ b/android/playground/app/src/main/assets/module/stream-demo.js
@@ -44,8 +44,8 @@
 /* 0 */
 /***/ function(module, exports, __webpack_require__) {
 
-	var __weex_template__ = __webpack_require__(220)
-	var __weex_script__ = __webpack_require__(221)
+	var __weex_template__ = __webpack_require__(226)
+	var __weex_script__ = __webpack_require__(227)
 
 	__weex_define__('@weex-component/2c445dcf67fa0895d197edb5ffa2f439', [], function(__weex_require__, __weex_exports__, __weex_module__) {
 
@@ -2173,7 +2173,13 @@
 /* 217 */,
 /* 218 */,
 /* 219 */,
-/* 220 */
+/* 220 */,
+/* 221 */,
+/* 222 */,
+/* 223 */,
+/* 224 */,
+/* 225 */,
+/* 226 */
 /***/ function(module, exports) {
 
 	module.exports = {
@@ -2290,7 +2296,7 @@
 	}
 
 /***/ },
-/* 221 */
+/* 227 */
 /***/ function(module, exports, __webpack_require__) {
 
 	module.exports = function(module, exports, __weex_require__){'use strict';
@@ -2359,8 +2365,8 @@
 	    stream.fetch({
 	      method: 'POST',
 	      url: POST_URL,
-	      type: 'json'
-	    }, function (ret) {
+	      type: 'json',
+	      body: (0, _stringify2.default)({ username: 'weex' }) }, function (ret) {
 	      if (!ret.ok) {
 	        me.postResult = "request failed";
 	      } else {