You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/04/21 09:42:58 UTC

[02/50] incubator-weex git commit: Merge branch '0.12-dev' into android-feature-20170307-jsc

Merge branch '0.12-dev' into android-feature-20170307-jsc

* 0.12-dev: (246 commits)
  * [android] fix setSize when defaultHeight is use screen height
  * [jsfm] update vue framework to 2.2.2-weex.1
  * [test] Closes #141: invalid/pullrequest
  * [test] Closes #141: invalid/pullrequest
  * [test] fix CI
  * [android] update imageView
  * [android] avoid remove-readd view when fixed component view already moved
  * [android] avoid remove-readd view when fixed component view already moved
  * [html5] clear log.
  + [ios] change to color
  * [ios] fix box shadow  shadowColor get method circularly called
  * [ios] add default value
  * [ios] refactor gradient-color method
  * [html5] update build & test config.
  * [html5] fix soucemap with flow.
  * [test] update test
  * [html5] fix dangerfile.
  * [html5] remove unused dependencies.
  + [html5] test for vue-render.
  * [test] fix CI
  ...

# Conflicts:
#	android/playground/app/src/main/java/com/alibaba/weex/WXPageActivity.java
#	android/sdk/libs/armeabi/libweexv8.so


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/9f1cd6bc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/9f1cd6bc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/9f1cd6bc

Branch: refs/heads/dev
Commit: 9f1cd6bcbce7ccc11e33779219daf9dcef4e97dd
Parents: eee81bc aee3388
Author: zshshr <zh...@gmail.com>
Authored: Thu Apr 6 11:38:35 2017 +0800
Committer: zshshr <zh...@gmail.com>
Committed: Thu Apr 6 11:38:35 2017 +0800

----------------------------------------------------------------------
 .eslintrc                                       |   13 +-
 .flowconfig                                     |   16 +
 CHANGELOG.md                                    |    7 +
 README.md                                       |   50 +-
 .../app/src/main/assets/component/image-demo.js |    2 +-
 .../assets/component/slider-neighbor/index.js   |  113 +-
 .../slider-neighbor/silder-neighbor.js          |  287 -
 .../app/src/main/assets/component/text-demo.js  |  108 +
 android/playground/app/src/main/assets/error.js |   11 +-
 .../app/src/main/assets/geolocation.js          |    8 -
 android/playground/app/src/main/assets/index.js |   17 +-
 .../app/src/main/assets/linear-gradient.js      |  367 +
 .../app/src/main/assets/module/clipboard.js     |   10 +-
 .../app/src/main/assets/module/componentRect.js |   36 +-
 .../app/src/main/assets/module/instance-api.js  |   21 +-
 .../app/src/main/assets/module/modal.js         |   25 +-
 .../app/src/main/assets/module/picker-demo.js   |   25 +-
 .../app/src/main/assets/module/storage-demo.js  |   21 +-
 .../app/src/main/assets/module/stream-demo.js   |   21 +-
 .../src/main/assets/module/websocket-demo.js    |   25 +-
 .../app/src/main/assets/showcase/calculator.js  |   25 +-
 .../assets/showcase/dropdown/dropdown-demo.js   |   38 +-
 .../assets/showcase/dropdown/we-dropdown.js     |   20 +-
 .../app/src/main/assets/showcase/minesweeper.js |   20 +-
 .../main/assets/showcase/new-fashion/banner.js  |   16 +-
 .../main/assets/showcase/new-fashion/banners.js |   28 +-
 .../main/assets/showcase/new-fashion/brand.js   |   44 +-
 .../assets/showcase/new-fashion/category.js     |   32 +-
 .../main/assets/showcase/new-fashion/coupon.js  |   20 +-
 .../main/assets/showcase/new-fashion/fashion.js |   46 +-
 .../main/assets/showcase/new-fashion/goods.js   |   32 +-
 .../assets/showcase/new-fashion/headlines.js    |   56 +-
 .../main/assets/showcase/new-fashion/index.js   |   29 +-
 .../main/assets/showcase/new-fashion/link.js    |   16 +-
 .../main/assets/showcase/new-fashion/main.js    |  209 +-
 .../main/assets/showcase/new-fashion/match.js   |   32 +-
 .../assets/showcase/new-fashion/resource.js     |   46 +-
 .../main/assets/showcase/new-fashion/scene.js   |   32 +-
 .../src/main/assets/showcase/pseudo-class.js    | 2425 +++++
 .../app/src/main/assets/showcase/ui.js          |   28 +-
 .../app/src/main/assets/style/index.js          |   80 +-
 .../app/src/main/assets/style/style-box.js      |   44 +-
 .../app/src/main/assets/style/style-flex.js     |   52 +-
 .../app/src/main/assets/style/style-item.js     |   20 +-
 .../app/src/main/assets/syntax/hello-world-1.js |   12 +-
 .../app/src/main/assets/syntax/hello-world-2.js |   12 +-
 .../app/src/main/assets/syntax/hello-world-3.js |   16 +-
 .../app/src/main/assets/syntax/hello-world-4.js |   20 +-
 .../app/src/main/assets/syntax/hello-world-5.js |   20 +-
 .../app/src/main/assets/syntax/hello-world.js   |   20 +-
 .../app/src/main/assets/syntax/index.js         |   28 +-
 .../src/main/assets/syntax/script-component.js  |   32 +-
 .../app/src/main/assets/syntax/script-data.js   |   20 +-
 .../app/src/main/assets/syntax/script-events.js |   20 +-
 .../src/main/assets/syntax/script-instance.js   |   20 +-
 .../src/main/assets/syntax/script-lifecycle.js  |   20 +-
 .../app/src/main/assets/syntax/script-module.js |   20 +-
 .../src/main/assets/syntax/script-options.js    |   20 +-
 .../src/main/assets/syntax/template-class.js    |   20 +-
 .../src/main/assets/syntax/template-content.js  |   28 +-
 .../src/main/assets/syntax/template-event.js    |   20 +-
 .../app/src/main/assets/syntax/template-if.js   |   20 +-
 .../assets/syntax/template-repeat-update.js     |   20 +-
 .../src/main/assets/syntax/template-repeat.js   |   20 +-
 .../src/main/assets/syntax/template-style.js    |   16 +-
 .../playground/app/src/main/assets/template.js  |   23 +-
 android/playground/app/src/main/assets/test.js  |   16 +-
 .../app/src/main/assets/vue/animation.js        |  709 ++
 .../app/src/main/assets/vue/components/a.js     |  438 +
 .../src/main/assets/vue/components/countdown.js |  640 ++
 .../app/src/main/assets/vue/components/image.js |  641 ++
 .../app/src/main/assets/vue/components/input.js |  364 +
 .../app/src/main/assets/vue/components/list.js  |  246 +
 .../src/main/assets/vue/components/marquee.js   |  534 +
 .../src/main/assets/vue/components/navigator.js | 1059 ++
 .../src/main/assets/vue/components/scroller.js  |  304 +
 .../src/main/assets/vue/components/slider.js    |  898 ++
 .../src/main/assets/vue/components/tabbar.js    |  599 ++
 .../app/src/main/assets/vue/components/text.js  |  513 +
 .../app/src/main/assets/vue/components/video.js |  396 +
 .../app/src/main/assets/vue/components/web.js   |  459 +
 .../playground/app/src/main/assets/vue/hello.js |   99 +
 .../app/src/main/assets/vue/iconfont.js         |  204 +
 .../playground/app/src/main/assets/vue/index.js |  496 +
 .../src/main/assets/vue/modules/clipboard.js    |  691 ++
 .../src/main/assets/vue/modules/instance-api.js |  304 +
 .../app/src/main/assets/vue/modules/modal.js    |  581 ++
 .../app/src/main/assets/vue/modules/storage.js  |  381 +
 .../app/src/main/assets/vue/modules/stream.js   |  477 +
 .../src/main/assets/vue/showcase/calculator.js  |  340 +
 .../src/main/assets/vue/showcase/itemlist.js    | 1062 ++
 .../src/main/assets/vue/showcase/new-fashion.js | 3302 ++++++
 .../src/main/assets/vue/showcase/progress.js    |  336 +
 .../app/src/main/assets/vue/style/index.js      | 1566 +++
 .../app/src/main/assets/vue/style/style-box.js  |  780 ++
 .../app/src/main/assets/vue/style/style-flex.js |  919 ++
 .../app/src/main/assets/vue/style/style-item.js |  155 +
 .../src/main/assets/vue/syntax/hello-world-1.js |   95 +
 .../src/main/assets/vue/syntax/hello-world-2.js |  112 +
 .../src/main/assets/vue/syntax/hello-world-3.js |  127 +
 .../src/main/assets/vue/syntax/hello-world-4.js |  167 +
 .../src/main/assets/vue/syntax/hello-world-5.js |  173 +
 .../src/main/assets/vue/syntax/hello-world.js   |  183 +
 .../main/assets/vue/syntax/script-component.js  |  224 +
 .../src/main/assets/vue/syntax/script-data.js   |  214 +
 .../src/main/assets/vue/syntax/script-events.js |  161 +
 .../main/assets/vue/syntax/script-instance.js   |  196 +
 .../main/assets/vue/syntax/script-lifecycle.js  |  155 +
 .../src/main/assets/vue/syntax/script-module.js |  156 +
 .../main/assets/vue/syntax/script-options.js    |  182 +
 .../main/assets/vue/syntax/template-class.js    |  161 +
 .../main/assets/vue/syntax/template-content.js  |  189 +
 .../main/assets/vue/syntax/template-event.js    |  197 +
 .../src/main/assets/vue/syntax/template-if.js   |  165 +
 .../assets/vue/syntax/template-repeat-update.js |  195 +
 .../main/assets/vue/syntax/template-repeat.js   |  170 +
 .../main/assets/vue/syntax/template-style.js    |  144 +
 .../app/src/main/assets/vue/template.js         |  796 ++
 .../playground/app/src/main/ic_launcher-web.png |  Bin 0 -> 19935 bytes
 .../java/com/alibaba/weex/IndexActivity.java    |    3 +-
 .../src/main/java/com/alibaba/weex/Utility.java |  277 +
 .../java/com/alibaba/weex/WXApplication.java    |    5 +
 .../java/com/alibaba/weex/WXPageActivity.java   |   52 +
 .../alibaba/weex/extend/component/WXMask.java   |  167 +
 .../extend/component/dom/WXMaskDomObject.java   |  231 +
 .../alibaba/weex/extend/view/WXMaskView.java    |  220 +
 .../app/src/main/res/layout/id_stub.xml         |   57 +
 .../src/main/res/mipmap-hdpi/ic_launcher.png    |  Bin 5248 -> 1755 bytes
 .../src/main/res/mipmap-mdpi/ic_launcher.png    |  Bin 4303 -> 1221 bytes
 .../src/main/res/mipmap-xhdpi/ic_launcher.png   |  Bin 6354 -> 2451 bytes
 .../src/main/res/mipmap-xxhdpi/ic_launcher.png  |  Bin 7930 -> 3939 bytes
 .../src/main/res/mipmap-xxxhdpi/ic_launcher.png |  Bin 10633 -> 5608 bytes
 android/sdk/libs/x86/libweexv8.so               |  Bin 4336768 -> 4545544 bytes
 .../main/java/com/taobao/weex/WXSDKEngine.java  |    1 -
 .../java/com/taobao/weex/WXSDKInstance.java     |   23 +-
 .../main/java/com/taobao/weex/WXSDKManager.java |   17 +-
 .../taobao/weex/adapter/DefaultUriAdapter.java  |    8 +-
 .../com/taobao/weex/bridge/WXBridgeManager.java |    3 +-
 .../java/com/taobao/weex/common/Constants.java  |    2 +
 .../com/taobao/weex/dom/ApplyStyleConsumer.java |  245 +
 .../java/com/taobao/weex/dom/DOMAction.java     |  216 +
 .../com/taobao/weex/dom/DOMActionContext.java   |  255 +
 .../taobao/weex/dom/DOMActionContextImpl.java   |  620 ++
 .../java/com/taobao/weex/dom/RenderAction.java  |  215 +
 .../taobao/weex/dom/RenderActionContext.java    |  218 +
 .../com/taobao/weex/dom/RenderActionTask.java   |  227 +
 .../java/com/taobao/weex/dom/WXDomHandler.java  |   82 +-
 .../java/com/taobao/weex/dom/WXDomManager.java  |  300 +-
 .../java/com/taobao/weex/dom/WXDomModule.java   |  439 +-
 .../java/com/taobao/weex/dom/WXDomObject.java   |    4 +-
 .../com/taobao/weex/dom/WXDomStatement.java     | 1272 ---
 .../taobao/weex/dom/WXRecyclerDomObject.java    |    4 +-
 .../dom/action/AbstractAddElementAction.java    |  313 +
 .../dom/action/AbstractLayoutFinishAction.java  |  240 +
 .../java/com/taobao/weex/dom/action/Action.java |  212 +
 .../com/taobao/weex/dom/action/Actions.java     |  350 +
 .../weex/dom/action/AddElementAction.java       |  295 +
 .../taobao/weex/dom/action/AddEventAction.java  |  262 +
 .../taobao/weex/dom/action/AddRuleAction.java   |  254 +
 .../taobao/weex/dom/action/AnimationAction.java |  463 +
 .../weex/dom/action/CreateBodyAction.java       |  302 +
 .../weex/dom/action/CreateFinishAction.java     |  224 +
 .../weex/dom/action/GetComponentRectAction.java |  299 +
 .../weex/dom/action/InvokeMethodAction.java     |  236 +
 .../weex/dom/action/MoveElementAction.java      |  281 +
 .../weex/dom/action/RefreshFinishAction.java    |  221 +
 .../weex/dom/action/RemoveElementAction.java    |  286 +
 .../weex/dom/action/RemoveEventAction.java      |  264 +
 .../weex/dom/action/ScrollToElementAction.java  |  257 +
 .../weex/dom/action/UpdateAttributeAction.java  |  263 +
 .../weex/dom/action/UpdateFinishAction.java     |  237 +
 .../weex/dom/action/UpdateStyleAction.java      |  298 +
 .../taobao/weex/ui/IExternalMoudleGetter.java   |  215 +
 .../taobao/weex/ui/RenderActionContextImpl.java |  299 +
 .../com/taobao/weex/ui/WXRenderManager.java     |  191 +-
 .../com/taobao/weex/ui/WXRenderStatement.java   |  556 --
 .../ui/animation/DimensionUpdateListener.java   |    6 +-
 .../weex/ui/animation/WXAnimationBean.java      |    5 +-
 .../weex/ui/animation/WXAnimationModule.java    |  199 +-
 .../weex/ui/component/NestedContainer.java      |    2 +
 .../taobao/weex/ui/component/WXComponent.java   |   42 +-
 .../com/taobao/weex/ui/component/WXEmbed.java   |    6 +
 .../com/taobao/weex/ui/component/WXImage.java   |    6 +
 .../com/taobao/weex/ui/component/WXText.java    |    8 +
 .../com/taobao/weex/ui/view/WXTextView.java     |   18 +-
 .../java/com/taobao/weex/WXSDKManagerTest.java  |    2 +-
 .../com/taobao/weex/dom/WXDomStatementTest.java |  119 +-
 .../com/taobao/weex/dom/action/TestActions.java |   59 +
 .../taobao/weex/ui/WXRenderStatementTest.java   |    4 +-
 .../ui/animation/WXAnimationModuleTest.java     |   18 +-
 bin/dist-vue.sh                                 |   42 +
 build/config.js                                 |   13 +-
 build/karma.vue.conf.js                         |   69 +-
 build/webpack.ci.config.js                      |   53 +
 build/webpack.ci.web.config.js                  |   68 +
 build/webpack.deprecatedmacacatest.config.js    |   53 +
 build/webpack.examples.web.config.js            |   24 +-
 build/webpack.macacatest.config.js              |   57 -
 circle.yml                                      |   37 -
 dangerfile.js                                   |   30 +
 examples/accessibilitySupport.we                |   57 +
 examples/component/image-demo.we                |    2 +-
 examples/component/input-demo.we                |  253 +-
 examples/component/list/list-basic.we           |   79 +-
 examples/component/scroller-demo.we             |   64 +-
 examples/component/slider-tab.we                |  100 +
 examples/include/example-list-item.we           |   30 +-
 examples/index.we                               |    4 +-
 examples/linear-gradient.we                     |    3 +
 examples/module/chatroom-demo.we                |  227 +
 examples/module/websocket-demo.we               |   50 +-
 examples/showcase/boxshadow.we                  |   46 +
 examples/vue/animation.vue                      |    4 +-
 examples/vue/components/countdown.vue           |    2 +-
 examples/vue/components/image.vue               |    2 +-
 examples/vue/components/input.vue               |  203 +-
 examples/vue/components/list.vue                |   22 +-
 examples/vue/components/marquee.vue             |    3 +-
 examples/vue/components/navigator.vue           |    7 +-
 examples/vue/components/scroller.vue            |   34 +-
 examples/vue/components/slider.vue              |   22 +-
 examples/vue/components/text.vue                |    2 +-
 examples/vue/components/textarea.vue            |   57 +
 examples/vue/components/video.vue               |    2 +-
 examples/vue/components/web.vue                 |    2 +-
 examples/vue/iconfont.vue                       |    2 +-
 examples/vue/include/base-url.js                |    4 +-
 examples/vue/include/button.vue                 |    2 +-
 examples/vue/include/countdown.vue              |    2 +-
 examples/vue/include/example-list-item.vue      |    2 +-
 examples/vue/include/example-list.vue           |    2 +-
 examples/vue/include/h1.vue                     |    2 +-
 examples/vue/include/h2.vue                     |    2 +-
 examples/vue/include/h3.vue                     |    2 +-
 examples/vue/include/hn.vue                     |    2 +-
 examples/vue/include/list-item.vue              |    2 +-
 examples/vue/include/marquee.vue                |    4 +-
 examples/vue/include/navbar.vue                 |    2 +-
 examples/vue/include/navpage.vue                |    2 +-
 examples/vue/include/panel.vue                  |   10 +-
 examples/vue/include/slider-item.vue            |    2 +-
 examples/vue/include/slider-page.vue            |    5 +-
 examples/vue/include/tabbar.vue                 |    6 +-
 examples/vue/include/tabitem.vue                |    2 +-
 examples/vue/include/tip.vue                    |    2 +-
 examples/vue/include/wxc-list-item.vue          |    2 +-
 examples/vue/index.vue                          |    1 +
 examples/vue/modules/stream.vue                 |    2 +-
 examples/vue/showcase/boxshadow.vue             |   39 +
 examples/vue/showcase/calculator.vue            |    2 +-
 examples/vue/showcase/include/banners.vue       |    4 +-
 examples/vue/showcase/include/brand.vue         |    2 +-
 examples/vue/showcase/include/category.vue      |    8 +-
 examples/vue/showcase/include/coupon.vue        |    2 +-
 examples/vue/showcase/include/goods.vue         |    4 +-
 examples/vue/showcase/include/headlines.vue     |    2 +-
 examples/vue/showcase/include/match.vue         |    4 +-
 examples/vue/showcase/include/resource.vue      |    2 +-
 examples/vue/showcase/include/scene.vue         |    4 +-
 examples/vue/showcase/itemlist.vue              |  246 +-
 examples/vue/showcase/new-fashion.vue           |    2 +-
 examples/vue/style/index.vue                    |    2 +-
 examples/vue/style/style-box.vue                |    2 +-
 examples/vue/style/style-flex.vue               |    2 +-
 examples/vue/style/style-item.vue               |    2 +-
 examples/vue/syntax/hello-world-3.vue           |    4 +-
 examples/vue/syntax/hello-world-4.vue           |    4 +-
 examples/vue/syntax/hello-world-5.vue           |    4 +-
 examples/vue/syntax/hello-world.vue             |    4 +-
 examples/vue/syntax/include/btn.vue             |    2 +-
 examples/vue/syntax/include/sub.vue             |    2 +-
 examples/vue/syntax/script-component.vue        |    2 +-
 examples/vue/syntax/script-data.vue             |    2 +-
 examples/vue/syntax/script-events.vue           |    4 +-
 examples/vue/syntax/script-instance.vue         |    2 +-
 examples/vue/syntax/script-lifecycle.vue        |    4 +-
 examples/vue/syntax/script-module.vue           |    2 +-
 examples/vue/syntax/script-options.vue          |    2 +-
 examples/vue/syntax/template-class.vue          |    2 +-
 examples/vue/syntax/template-event.vue          |    2 +-
 examples/vue/syntax/template-if.vue             |    2 +-
 examples/vue/syntax/template-repeat-update.vue  |    2 +-
 examples/vue/syntax/template-repeat.vue         |    8 +-
 flow-typed/npm/animationjs_vx.x.x.js            |   60 +
 flow-typed/npm/babel-core_vx.x.x.js             |  227 +
 flow-typed/npm/babel-eslint_vx.x.x.js           |   73 +
 flow-typed/npm/babel-istanbul_vx.x.x.js         |  353 +
 flow-typed/npm/babel-loader_vx.x.x.js           |   67 +
 flow-typed/npm/babel-plugin-coverage_vx.x.x.js  |   32 +
 flow-typed/npm/babel-preset-es2015_vx.x.x.js    |   32 +
 flow-typed/npm/babel-runtime_vx.x.x.js          | 1691 ++++
 flow-typed/npm/chai_v3.5.x.js                   |  212 +
 flow-typed/npm/chromedriver_vx.x.x.js           |   46 +
 flow-typed/npm/core-js_vx.x.x.js                | 9390 ++++++++++++++++++
 flow-typed/npm/cross-spawn_vx.x.x.js            |   59 +
 flow-typed/npm/css-loader_vx.x.x.js             |   87 +
 flow-typed/npm/cubicbezier_vx.x.x.js            |  109 +
 flow-typed/npm/danger_vx.x.x.js                 |  284 +
 flow-typed/npm/envd_vx.x.x.js                   |  109 +
 flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js |  319 +
 flow-typed/npm/eslint_vx.x.x.js                 | 1978 ++++
 flow-typed/npm/flow-bin_v0.x.x.js               |    6 +
 flow-typed/npm/fs-extra_vx.x.x.js               |  221 +
 flow-typed/npm/http-server_vx.x.x.js            |   39 +
 flow-typed/npm/httpurl_vx.x.x.js                |   67 +
 flow-typed/npm/inline-style-prefixer_vx.x.x.js  |  347 +
 flow-typed/npm/json-loader_vx.x.x.js            |   33 +
 flow-typed/npm/karma-coverage_vx.x.x.js         |   81 +
 flow-typed/npm/karma-mocha-reporter_vx.x.x.js   |   38 +
 flow-typed/npm/karma-mocha_vx.x.x.js            |   53 +
 .../npm/karma-phantomjs-launcher_vx.x.x.js      |   59 +
 flow-typed/npm/karma-sourcemap-loader_vx.x.x.js |   33 +
 flow-typed/npm/karma-webpack_vx.x.x.js          |   45 +
 flow-typed/npm/karma_vx.x.x.js                  |  445 +
 flow-typed/npm/lazyimg_vx.x.x.js                |   32 +
 flow-typed/npm/macaca-cli_vx.x.x.js             |  123 +
 flow-typed/npm/macaca-utils_vx.x.x.js           |   39 +
 flow-typed/npm/mocha_v2.4.x.js                  |   25 +
 flow-typed/npm/modals_vx.x.x.js                 |   81 +
 flow-typed/npm/nightwatch_vx.x.x.js             |  633 ++
 flow-typed/npm/phantomjs-prebuilt_vx.x.x.js     |  389 +
 flow-typed/npm/query-string_vx.x.x.js           |   33 +
 flow-typed/npm/reify_vx.x.x.js                  |   95 +
 flow-typed/npm/rollup-plugin-buble_vx.x.x.js    |   39 +
 flow-typed/npm/rollup-plugin-commonjs_vx.x.x.js |   81 +
 flow-typed/npm/rollup-plugin-eslint_vx.x.x.js   |   39 +
 .../rollup-plugin-flow-no-whitespace_vx.x.x.js  |   33 +
 flow-typed/npm/rollup-plugin-flow_vx.x.x.js     |   33 +
 flow-typed/npm/rollup-plugin-json_vx.x.x.js     |   46 +
 .../npm/rollup-plugin-node-resolve_vx.x.x.js    |   53 +
 flow-typed/npm/rollup-plugin-postcss_vx.x.x.js  |   38 +
 flow-typed/npm/rollup-plugin-replace_vx.x.x.js  |   46 +
 flow-typed/npm/rollup-plugin-uglify_vx.x.x.js   |   32 +
 flow-typed/npm/rollup-watch_vx.x.x.js           |   67 +
 flow-typed/npm/rollup_vx.x.x.js                 |   46 +
 flow-typed/npm/scroll-to_vx.x.x.js              |   33 +
 flow-typed/npm/selenium-server_vx.x.x.js        |   39 +
 flow-typed/npm/semver_v5.1.x.js                 |   81 +
 flow-typed/npm/serve_vx.x.x.js                  |   18 +
 flow-typed/npm/sinon-chai_vx.x.x.js             |   32 +
 flow-typed/npm/sinon_vx.x.x.js                  |  263 +
 flow-typed/npm/uglify-js_vx.x.x.js              |  116 +
 flow-typed/npm/vue-loader_vx.x.x.js             |  122 +
 flow-typed/npm/vue-template-compiler_vx.x.x.js  |   38 +
 flow-typed/npm/vue_vx.x.x.js                    | 1089 ++
 flow-typed/npm/webdriver-client_vx.x.x.js       |  129 +
 flow-typed/npm/webpack_vx.x.x.js                | 1523 +++
 flow-typed/npm/weex-components_vx.x.x.js        |   33 +
 flow-typed/npm/weex-loader_vx.x.x.js            |  108 +
 flow-typed/npm/weex-picker_vx.x.x.js            |   81 +
 flow-typed/npm/weex-rax-framework_vx.x.x.js     |  165 +
 flow-typed/npm/weex-styler_vx.x.x.js            |   66 +
 flow-typed/npm/weex-vdom-tester_vx.x.x.js       |  108 +
 flow-typed/npm/weex-vue-framework_vx.x.x.js     |   33 +
 flow-typed/npm/weex-wd_vx.x.x.js                |   38 +
 flow-typed/npm/wwp_vx.x.x.js                    |   39 +
 flow-typed/npm/xml2map_vx.x.x.js                |   45 +
 html5/frameworks/legacy/app/ctrl/init.js        |   25 +-
 html5/frameworks/legacy/static/create.js        |    5 +-
 html5/render/browser/extend/api/stream.js       |    2 +-
 html5/render/browser/extend/components/input.js |   33 +
 .../browser/extend/components/textarea.js       |   32 +
 html5/render/browser/utils/index.js             |    9 +
 html5/render/vue/README.md                      |   51 +-
 html5/render/vue/components/a.js                |   18 +-
 html5/render/vue/components/div.js              |   25 +-
 html5/render/vue/components/image.js            |   81 +-
 html5/render/vue/components/index.js            |    9 +-
 html5/render/vue/components/input.js            |   31 +-
 .../render/vue/components/scrollable/header.js  |   40 +-
 .../vue/components/scrollable/list/cell.js      |   15 +-
 .../vue/components/scrollable/list/index.js     |   32 +-
 .../vue/components/scrollable/list/listMixin.js |  118 +-
 .../components/scrollable/loading-indicator.js  |    3 +-
 .../render/vue/components/scrollable/loading.js |   55 +-
 .../render/vue/components/scrollable/refresh.js |   64 +-
 .../vue/components/scrollable/scroller.js       |   30 +-
 .../render/vue/components/scrollable/shared.js  |   22 -
 html5/render/vue/components/slider/index.js     |   40 +-
 html5/render/vue/components/slider/indicator.js |  115 +-
 .../render/vue/components/slider/slideMixin.js  |  141 +-
 html5/render/vue/components/switch.js           |   11 +-
 html5/render/vue/components/text.js             |   45 +-
 html5/render/vue/components/textarea.js         |   29 +-
 html5/render/vue/components/video.js            |   14 +-
 html5/render/vue/components/web.js              |   19 +-
 html5/render/vue/env/WXEnvironment.js           |   39 -
 html5/render/vue/env/index.js                   |   17 +-
 html5/render/vue/env/viewport.js                |   56 +-
 html5/render/vue/env/weex.js                    |   30 +-
 html5/render/vue/env/wx-env.js                  |   48 +
 html5/render/vue/index.js                       |   64 +-
 html5/render/vue/mixins/base.js                 |  110 +-
 html5/render/vue/mixins/event.js                |   76 -
 html5/render/vue/mixins/index.js                |    8 +-
 html5/render/vue/mixins/input-common.js         |   47 +
 html5/render/vue/mixins/scrollable.js           |  110 +
 html5/render/vue/mixins/style.js                |  265 +-
 html5/render/vue/modules/dom.js                 |   69 +-
 html5/render/vue/modules/index.js               |   42 +-
 html5/render/vue/styles/components.css          |  225 +-
 html5/render/vue/styles/reset.css               |   44 +-
 html5/render/vue/utils/component.js             |   83 +-
 html5/render/vue/utils/event.js                 |   91 +-
 html5/render/vue/utils/func.js                  |   81 +-
 html5/render/vue/utils/index.js                 |   55 +-
 html5/render/vue/utils/lazyload.js              |  102 +
 html5/render/vue/utils/perf.js                  |  170 +
 html5/render/vue/utils/style.js                 |   21 +
 html5/render/vue/utils/type.js                  |   20 +
 html5/test/render/index.js                      |    3 -
 html5/test/render/vue/components/a.js           |   38 +
 html5/test/render/vue/components/div.js         |   29 +
 html5/test/render/vue/components/image.js       |   44 +-
 html5/test/render/vue/components/list.js        |   21 +-
 html5/test/render/vue/components/switch.js      |   35 +-
 html5/test/render/vue/components/text.js        |   42 +-
 html5/test/render/vue/components/web.js         |   14 +-
 html5/test/render/vue/examples/list-cell.js     |   16 +-
 html5/test/render/vue/helper.js                 |  157 +-
 html5/test/render/vue/utils.js                  |    1 -
 html5/test/render/vue/validator/check.js        |    1 -
 html5/test/render/vue/validator/index.js        |    1 -
 html5/test/render/vue/validator/prop.js         |    1 -
 html5/test/render/vue/validator/style.js        |    1 -
 index.html                                      |    3 +-
 ios/playground/bundlejs/component/image-demo.js |    2 +-
 ios/playground/bundlejs/component/input-demo.js | 2683 ++---
 .../bundlejs/component/lengthunitwx-demo.js     |  329 +
 .../bundlejs/component/list/list-basic.js       |  132 +-
 .../component/list/list-demo-horizon.js         |   12 +-
 .../bundlejs/component/list/list-demo.js        |   12 +-
 .../bundlejs/component/list/waterfall.js        |  877 ++
 .../bundlejs/component/marquee-demo.js          |   13 +-
 .../bundlejs/component/process-bar-demo.js      |   17 +-
 .../bundlejs/component/scroller-demo.js         |  219 +-
 .../bundlejs/component/slider-neighbor/index.js |    8 +-
 .../slider-neighbor/slider-neighbor-item.js     |   12 +-
 .../slider-neighbor/slider-neighbor-page.js     |   28 +-
 ios/playground/bundlejs/component/slider-tab.js |  633 ++
 .../bundlejs/component/slider/index.js          |   56 +-
 .../bundlejs/component/slider/slider-item.js    |   12 +-
 .../bundlejs/component/slider/slider-page.js    |   28 +-
 ios/playground/bundlejs/component/text-demo.js  |   24 +-
 ios/playground/bundlejs/component/video-demo.js |   24 +-
 ios/playground/bundlejs/component/web-demo.js   |   25 +-
 ios/playground/bundlejs/error.js                |   20 +-
 ios/playground/bundlejs/geolocation.js          |   46 +-
 ios/playground/bundlejs/hello.js                |    4 +-
 ios/playground/bundlejs/iconfont.js             |   12 +-
 ios/playground/bundlejs/index.js                |  270 +-
 ios/playground/bundlejs/linear-gradient.js      |    8 +-
 ios/playground/bundlejs/module/chatroom-demo.js |  370 +
 ios/playground/bundlejs/module/clipboard.js     |   61 +-
 ios/playground/bundlejs/module/componentRect.js |   28 +-
 ios/playground/bundlejs/module/instance-api.js  |   61 +-
 ios/playground/bundlejs/module/modal.js         |   27 +-
 ios/playground/bundlejs/module/picker-demo.js   |   27 +-
 ios/playground/bundlejs/module/storage-demo.js  |   61 +-
 ios/playground/bundlejs/module/stream-demo.js   |   61 +-
 .../bundlejs/module/websocket-demo.js           | 2661 ++---
 ios/playground/bundlejs/showcase/boxshadow.js   |  269 +
 ios/playground/bundlejs/showcase/calculator.js  |   30 +-
 .../bundlejs/showcase/dropdown/dropdown-demo.js |   38 +-
 .../bundlejs/showcase/dropdown/we-dropdown.js   |   12 +-
 ios/playground/bundlejs/showcase/minesweeper.js |   12 +-
 .../bundlejs/showcase/pseudo-class.js           |   30 +-
 ios/playground/bundlejs/showcase/ui.js          |   30 +-
 ios/playground/bundlejs/style/index.js          |   82 +-
 ios/playground/bundlejs/style/style-box.js      |   46 +-
 ios/playground/bundlejs/style/style-flex.js     |   54 +-
 ios/playground/bundlejs/style/style-item.js     |   12 +-
 ios/playground/bundlejs/syntax/hello-world-1.js |    4 +-
 ios/playground/bundlejs/syntax/hello-world-2.js |    4 +-
 ios/playground/bundlejs/syntax/hello-world-3.js |    8 +-
 ios/playground/bundlejs/syntax/hello-world-4.js |   12 +-
 ios/playground/bundlejs/syntax/hello-world-5.js |   12 +-
 ios/playground/bundlejs/syntax/hello-world.js   |   12 +-
 ios/playground/bundlejs/syntax/index.js         |  296 +-
 .../bundlejs/syntax/script-component.js         |   24 +-
 ios/playground/bundlejs/syntax/script-data.js   |   12 +-
 ios/playground/bundlejs/syntax/script-events.js |   20 +-
 .../bundlejs/syntax/script-instance.js          |   12 +-
 .../bundlejs/syntax/script-lifecycle.js         |   12 +-
 ios/playground/bundlejs/syntax/script-module.js |   12 +-
 .../bundlejs/syntax/script-options.js           |   12 +-
 .../bundlejs/syntax/template-class.js           |   12 +-
 .../bundlejs/syntax/template-content.js         |   20 +-
 .../bundlejs/syntax/template-event.js           |   12 +-
 ios/playground/bundlejs/syntax/template-if.js   |   12 +-
 .../bundlejs/syntax/template-repeat-update.js   |   12 +-
 .../bundlejs/syntax/template-repeat.js          |   12 +-
 .../bundlejs/syntax/template-style.js           |    8 +-
 ios/playground/bundlejs/template.js             |   12 +-
 ios/playground/bundlejs/test.js                 |    8 +-
 ios/playground/bundlejs/vue/animation.js        |  120 +-
 ios/playground/bundlejs/vue/components/a.js     |   97 +-
 .../bundlejs/vue/components/countdown.js        |  122 +-
 ios/playground/bundlejs/vue/components/image.js |  142 +-
 ios/playground/bundlejs/vue/components/input.js |  735 +-
 ios/playground/bundlejs/vue/components/list.js  |   44 +-
 .../bundlejs/vue/components/marquee.js          |  105 +-
 .../bundlejs/vue/components/navigator.js        |  187 +-
 .../bundlejs/vue/components/scroller.js         |   48 +-
 .../bundlejs/vue/components/slider.js           |  341 +-
 .../bundlejs/vue/components/tabbar.js           |  133 +-
 ios/playground/bundlejs/vue/components/text.js  |  132 +-
 ios/playground/bundlejs/vue/components/video.js |   72 +-
 .../bundlejs/vue/components/waterfall.js        |  877 ++
 ios/playground/bundlejs/vue/components/web.js   |   74 +-
 ios/playground/bundlejs/vue/hello.js            |   19 +-
 ios/playground/bundlejs/vue/iconfont.js         |   36 +-
 ios/playground/bundlejs/vue/index.js            |  139 +-
 .../bundlejs/vue/modules/clipboard.js           |  147 +-
 .../bundlejs/vue/modules/instance-api.js        |   59 +-
 ios/playground/bundlejs/vue/modules/modal.js    |  105 +-
 ios/playground/bundlejs/vue/modules/storage.js  |   71 +-
 ios/playground/bundlejs/vue/modules/stream.js   |   95 +-
 .../bundlejs/vue/showcase/boxshadow.js          |  244 +
 .../bundlejs/vue/showcase/calculator.js         |   72 +-
 .../bundlejs/vue/showcase/itemlist.js           |  166 +-
 .../bundlejs/vue/showcase/new-fashion.js        |  557 +-
 .../bundlejs/vue/showcase/progress.js           |   63 +-
 ios/playground/bundlejs/vue/style/index.js      |  418 +-
 ios/playground/bundlejs/vue/style/style-box.js  |  180 +-
 ios/playground/bundlejs/vue/style/style-flex.js |  238 +-
 ios/playground/bundlejs/vue/style/style-item.js |   26 +-
 .../bundlejs/vue/syntax/hello-world-1.js        |   17 +-
 .../bundlejs/vue/syntax/hello-world-2.js        |   23 +-
 .../bundlejs/vue/syntax/hello-world-3.js        |   28 +-
 .../bundlejs/vue/syntax/hello-world-4.js        |   32 +-
 .../bundlejs/vue/syntax/hello-world-5.js        |   32 +-
 .../bundlejs/vue/syntax/hello-world.js          |   32 +-
 .../bundlejs/vue/syntax/script-component.js     |   64 +-
 .../bundlejs/vue/syntax/script-data.js          |   36 +-
 .../bundlejs/vue/syntax/script-events.js        |   32 +-
 .../bundlejs/vue/syntax/script-instance.js      |   30 +-
 .../bundlejs/vue/syntax/script-lifecycle.js     |   32 +-
 .../bundlejs/vue/syntax/script-module.js        |   30 +-
 .../bundlejs/vue/syntax/script-options.js       |   28 +-
 .../bundlejs/vue/syntax/template-class.js       |   34 +-
 .../bundlejs/vue/syntax/template-content.js     |   49 +-
 .../bundlejs/vue/syntax/template-event.js       |   36 +-
 .../bundlejs/vue/syntax/template-if.js          |   32 +-
 .../vue/syntax/template-repeat-update.js        |   40 +-
 .../bundlejs/vue/syntax/template-repeat.js      |   50 +-
 .../bundlejs/vue/syntax/template-style.js       |   27 +-
 ios/playground/bundlejs/vue/template.js         |  181 +-
 ios/sdk/WeexSDK.xcodeproj/project.pbxproj       |    8 -
 .../Component/Recycler/WXMultiColumnLayout.h    |    2 +
 .../Component/Recycler/WXMultiColumnLayout.m    |    5 +-
 .../Component/Recycler/WXRecyclerComponent.m    |   45 +-
 .../Recycler/WXRecyclerDataController.h         |    4 +
 .../Recycler/WXRecyclerDataController.m         |   18 +
 .../Component/WXComponent+GradientColor.h       |   21 -
 .../Component/WXComponent+GradientColor.m       |  120 -
 .../Sources/Component/WXComponent_internal.h    |   12 +
 .../WeexSDK/Sources/Component/WXEditComponent.m |   30 +-
 .../WeexSDK/Sources/Component/WXListComponent.m |    7 +-
 .../Sources/Component/WXScrollerComponent.m     |   10 +-
 .../WeexSDK/Sources/Component/WXTextComponent.m |    5 +
 .../Sources/Display/WXComponent+BoxShadow.h     |    2 +-
 .../Sources/Display/WXComponent+BoxShadow.m     |   10 +-
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.h  |    2 +-
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.m  |    4 +-
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |    5 +-
 .../Sources/Manager/WXComponentManager.m        |    4 +-
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |   58 +-
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.h   |    2 +-
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m   |   25 +-
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.h     |    1 +
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.m     |   22 +
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.h     |   27 +
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.m     |  101 +
 .../Sources/View/WXComponent+ViewManagement.m   |    1 -
 ios/sdk/WeexSDK/Sources/WeexSDK.h               |    1 +
 package.json                                    |   37 +-
 packages/weex-vue-render/README.md              |   51 +-
 packages/weex-vue-render/package.json           |   13 +-
 test/.gitignore                                 |    2 +
 test/ci-funcs.sh                                |    3 +
 test/pages/components/recycler.vue              |  487 +
 test/pages/components/scroller-fixed.vue        |   64 +
 test/pages/components/scroller-fixed.we         |   62 -
 test/pages/components/textarea-maxlength.vue    |   50 +
 test/pages/dom-operation.vue                    |   37 +
 test/pages/dom-operation.we                     |   32 -
 test/pages/image-onload.vue                     |   21 +
 test/pages/image-onload.we                      |   19 -
 test/pages/index.vue                            |   30 +
 test/pages/index.we                             |   27 -
 test/pages/list-scroll.vue                      |   34 +
 test/pages/list-scroll.we                       |   31 -
 test/pages/scroller-scroll.vue                  |   33 +
 test/pages/scroller-scroll.we                   |   31 -
 test/run.sh                                     |   10 +-
 test/scripts/components/image-onload.test.js    |    2 +-
 test/scripts/components/recycler.test.js        |  412 +
 test/scripts/components/scroll-event.test.js    |    4 +-
 test/scripts/components/scroller-fixed.test.js  |    2 +-
 .../components/textarea-maxlength.test.js       |   36 +
 test/scripts/dom.test.js                        |   11 +-
 test/scripts/index.test.js                      |   16 +-
 test/scripts/util.js                            |   24 +
 test/serve.sh                                   |    6 +-
 vue.html                                        |   53 +-
 606 files changed, 74999 insertions(+), 13487 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/9f1cd6bc/android/playground/app/src/main/java/com/alibaba/weex/WXPageActivity.java
----------------------------------------------------------------------
diff --cc android/playground/app/src/main/java/com/alibaba/weex/WXPageActivity.java
index f8c9b96,7ce282a..fbf42af
--- a/android/playground/app/src/main/java/com/alibaba/weex/WXPageActivity.java
+++ b/android/playground/app/src/main/java/com/alibaba/weex/WXPageActivity.java
@@@ -229,6 -231,8 +231,7 @@@ import android.view.ViewGroup
  import android.widget.ProgressBar;
  import android.widget.Toast;
  
+ import com.alibaba.fastjson.JSON;
 -import com.alibaba.fastjson.JSONArray;
  import com.alibaba.weex.commons.WXAnalyzerDelegate;
  import com.alibaba.weex.commons.util.ScreenUtil;
  import com.alibaba.weex.constants.Constants;
@@@ -240,10 -244,18 +243,13 @@@ import com.taobao.weex.IWXRenderListene
  import com.taobao.weex.RenderContainer;
  import com.taobao.weex.WXSDKEngine;
  import com.taobao.weex.WXSDKInstance;
 -import com.taobao.weex.WXSDKManager;
 -import com.taobao.weex.annotation.Component;
  import com.taobao.weex.appfram.navigator.IActivityNavBarSetter;
 -import com.taobao.weex.bridge.WXValidateProcessor;
  import com.taobao.weex.common.IWXDebugProxy;
  import com.taobao.weex.common.WXRenderStrategy;
+ import com.taobao.weex.dom.ImmutableDomObject;
 -import com.taobao.weex.dom.WXDomModule;
 -import com.taobao.weex.dom.WXDomObject;
  import com.taobao.weex.ui.component.NestedContainer;
+ import com.taobao.weex.ui.component.WXComponent;
+ import com.taobao.weex.ui.component.WXVContainer;
  import com.taobao.weex.utils.WXFileUtils;
  import com.taobao.weex.utils.WXLogUtils;