Repository: incubator-weex Updated Branches: refs/heads/dev 54a000abb -> 448ab1fd8
Merge pull request #1 from alibaba/dev update from origin Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/30aa0336 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/30aa0336 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/30aa0336 Branch: refs/heads/dev Commit: 30aa0336bb47a28000790b43b9b92915b07a4c12 Parents: a2633cd 38366cc Author: Tancy <ron...@gmail.com> Authored: Thu Dec 15 15:24:06 2016 +0800 Committer: GitHub <nore...@github.com> Committed: Thu Dec 15 15:24:06 2016 +0800 ---------------------------------------------------------------------- .eslintignore | 3 + .eslintrc | 1 + .gitignore | 12 +- .wwprc | 36 + README.md | 26 +- android/commons/build.gradle | 1 + .../weex/commons/AbstractWeexActivity.java | 50 + .../weex/commons/SimpleWeexActivity.java | 4 +- .../weex/commons/WXAnalyzerDelegate.java | 379 + .../commons/adapter/FrescoImageAdapter.java | 61 +- .../commons/adapter/FrescoImageComponent.java | 231 + .../weex/commons/adapter/FrescoImageView.java | 256 + android/inspector/.gitignore | 1 - android/inspector/README.md | 74 - android/inspector/build.gradle | 66 - android/inspector/debug.json | 37 - android/inspector/gradle.properties | 4 - android/inspector/proguard-consumer.pro | 2 - android/inspector/protocol.json | 5086 ----------- android/inspector/src/main/AndroidManifest.xml | 13 - .../weex/devtools/DumperPluginsProvider.java | 21 - .../weex/devtools/InspectorModulesProvider.java | 16 - .../com/taobao/weex/devtools/WeexInspector.java | 508 -- .../weex/devtools/common/Accumulator.java | 14 - .../devtools/common/ArrayListAccumulator.java | 19 - .../weex/devtools/common/ExceptionUtil.java | 31 - .../taobao/weex/devtools/common/ListUtil.java | 253 - .../weex/devtools/common/LogRedirector.java | 121 - .../taobao/weex/devtools/common/LogUtil.java | 161 - .../taobao/weex/devtools/common/Predicate.java | 14 - .../weex/devtools/common/ProcessUtil.java | 70 - .../weex/devtools/common/ReflectionUtil.java | 52 - .../taobao/weex/devtools/common/StringUtil.java | 32 - .../weex/devtools/common/ThreadBound.java | 67 - .../weex/devtools/common/UncheckedCallable.java | 23 - .../weex/devtools/common/Utf8Charset.java | 31 - .../com/taobao/weex/devtools/common/Util.java | 157 - .../common/android/DialogFragmentAccessor.java | 17 - .../common/android/FragmentAccessor.java | 35 - .../android/FragmentActivityAccessor.java | 21 - .../devtools/common/android/FragmentCompat.java | 110 - .../common/android/FragmentCompatFramework.java | 183 - .../android/FragmentCompatSupportLib.java | 122 - .../common/android/FragmentCompatUtil.java | 127 - .../common/android/FragmentManagerAccessor.java | 19 - .../devtools/common/android/HandlerUtil.java | 150 - .../devtools/common/android/ResourcesUtil.java | 76 - .../devtools/common/android/ViewGroupUtil.java | 28 - .../weex/devtools/common/android/ViewUtil.java | 211 - .../taobao/weex/devtools/debug/DebugBridge.java | 192 - .../weex/devtools/debug/DebugServerProxy.java | 226 - .../weex/devtools/debug/DebugSocketClient.java | 148 - .../weex/devtools/debug/WXDebugConstants.java | 30 - .../weex/devtools/dumpapp/ArgsHelper.java | 36 - .../weex/devtools/dumpapp/DumpException.java | 25 - .../devtools/dumpapp/DumpUsageException.java | 19 - .../dumpapp/DumpappFramingException.java | 22 - .../dumpapp/DumpappHttpSocketLikeHandler.java | 109 - .../dumpapp/DumpappOutputBrokenException.java | 44 - .../dumpapp/DumpappSocketLikeHandler.java | 117 - .../taobao/weex/devtools/dumpapp/Dumper.java | 161 - .../weex/devtools/dumpapp/DumperContext.java | 87 - .../weex/devtools/dumpapp/DumperPlugin.java | 80 - .../taobao/weex/devtools/dumpapp/Framer.java | 258 - .../weex/devtools/dumpapp/GlobalOptions.java | 34 - .../dumpapp/UnexpectedFrameException.java | 16 - .../dumpapp/plugins/CrashDumperPlugin.java | 171 - .../dumpapp/plugins/FilesDumperPlugin.java | 231 - .../dumpapp/plugins/HprofDumperPlugin.java | 121 - .../plugins/SharedPreferencesDumperPlugin.java | 241 - .../inspector/ChromeDevtoolsServer.java | 188 - .../inspector/ChromeDiscoveryHandler.java | 189 - .../inspector/DevtoolsSocketHandler.java | 53 - .../inspector/MessageHandlingException.java | 20 - .../devtools/inspector/MethodDispatcher.java | 164 - .../inspector/MismatchedResponseException.java | 23 - .../weex/devtools/inspector/console/CLog.java | 51 - .../inspector/console/ConsolePeerManager.java | 35 - .../devtools/inspector/console/RuntimeRepl.java | 14 - .../inspector/console/RuntimeReplFactory.java | 23 - .../database/ContentProviderDatabaseDriver.java | 95 - .../database/ContentProviderSchema.java | 99 - .../database/DatabaseFilesProvider.java | 25 - .../database/DefaultDatabaseFilesProvider.java | 37 - .../database/SqliteDatabaseDriver.java | 213 - .../domstorage/DOMStoragePeerManager.java | 173 - .../domstorage/SharedPreferencesHelper.java | 106 - .../elements/AbstractChainedDescriptor.java | 158 - .../elements/AttributeAccumulator.java | 14 - .../inspector/elements/ChainedDescriptor.java | 58 - .../devtools/inspector/elements/Descriptor.java | 119 - .../inspector/elements/DescriptorMap.java | 100 - .../devtools/inspector/elements/Document.java | 714 -- .../inspector/elements/DocumentProvider.java | 40 - .../elements/DocumentProviderFactory.java | 20 - .../elements/DocumentProviderListener.java | 26 - .../inspector/elements/DocumentView.java | 16 - .../inspector/elements/ElementInfo.java | 49 - .../inspector/elements/NodeDescriptor.java | 38 - .../devtools/inspector/elements/NodeType.java | 33 - .../inspector/elements/ObjectDescriptor.java | 58 - .../devtools/inspector/elements/Origin.java | 30 - .../inspector/elements/ShadowDocument.java | 375 - .../inspector/elements/StyleAccumulator.java | 14 - .../elements/android/ActivityDescriptor.java | 86 - .../elements/android/ActivityTracker.java | 200 - .../elements/android/AndroidDescriptorHost.java | 21 - .../android/AndroidDocumentConstants.java | 21 - .../android/AndroidDocumentProvider.java | 337 - .../android/AndroidDocumentProviderFactory.java | 70 - .../elements/android/AndroidDocumentRoot.java | 42 - .../elements/android/ApplicationDescriptor.java | 94 - .../elements/android/DialogDescriptor.java | 43 - .../android/DialogFragmentDescriptor.java | 133 - .../elements/android/DocumentHiddenView.java | 19 - .../elements/android/FragmentDescriptor.java | 79 - .../android/HighlightableDescriptor.java | 19 - .../elements/android/MethodInvoker.java | 131 - .../elements/android/TextViewDescriptor.java | 82 - .../elements/android/ViewDescriptor.java | 473 - .../elements/android/ViewGroupDescriptor.java | 93 - .../elements/android/ViewHighlightOverlays.java | 268 - .../elements/android/ViewHighlighter.java | 114 - .../elements/android/WindowDescriptor.java | 36 - .../inspector/helper/ChromePeerManager.java | 149 - .../inspector/helper/IntegerFormatter.java | 54 - .../inspector/helper/ObjectIdMapper.java | 138 - .../helper/PeerRegistrationListener.java | 17 - .../helper/PeersRegisteredListener.java | 40 - .../inspector/helper/ThreadBoundProxy.java | 56 - .../inspector/jsonrpc/DisconnectReceiver.java | 20 - .../inspector/jsonrpc/JsonRpcException.java | 26 - .../devtools/inspector/jsonrpc/JsonRpcPeer.java | 98 - .../inspector/jsonrpc/JsonRpcResult.java | 19 - .../inspector/jsonrpc/PendingRequest.java | 28 - .../jsonrpc/PendingRequestCallback.java | 16 - .../inspector/jsonrpc/protocol/EmptyResult.java | 15 - .../jsonrpc/protocol/JsonRpcError.java | 59 - .../jsonrpc/protocol/JsonRpcEvent.java | 35 - .../jsonrpc/protocol/JsonRpcRequest.java | 40 - .../jsonrpc/protocol/JsonRpcResponse.java | 28 - .../inspector/network/AsyncPrettyPrinter.java | 39 - .../AsyncPrettyPrinterExecutorHolder.java | 42 - .../network/AsyncPrettyPrinterFactory.java | 27 - .../network/AsyncPrettyPrinterInitializer.java | 27 - .../network/AsyncPrettyPrinterRegistry.java | 35 - .../inspector/network/CountingOutputStream.java | 43 - .../inspector/network/DecompressionHelper.java | 66 - .../network/DefaultResponseHandler.java | 58 - .../DownloadingAsyncPrettyPrinterFactory.java | 176 - .../network/GunzippingOutputStream.java | 106 - .../devtools/inspector/network/MimeMatcher.java | 84 - .../inspector/network/NetworkEventReporter.java | 224 - .../network/NetworkEventReporterImpl.java | 360 - .../inspector/network/NetworkPeerManager.java | 78 - .../inspector/network/OkHttpInterceptor.java | 291 - .../network/PrettyPrinterDisplayType.java | 32 - .../inspector/network/RequestBodyHelper.java | 80 - .../inspector/network/ResourceTypeHelper.java | 51 - .../inspector/network/ResponseBodyData.java | 19 - .../network/ResponseBodyFileManager.java | 172 - .../inspector/network/ResponseHandler.java | 48 - .../network/ResponseHandlingInputStream.java | 279 - .../protocol/ChromeDevtoolsDomain.java | 16 - .../protocol/ChromeDevtoolsMethod.java | 17 - .../devtools/inspector/protocol/module/CSS.java | 381 - .../inspector/protocol/module/Console.java | 121 - .../devtools/inspector/protocol/module/DOM.java | 712 -- .../inspector/protocol/module/DOMStorage.java | 237 - .../inspector/protocol/module/Database.java | 364 - .../protocol/module/DatabaseConstants.java | 20 - .../inspector/protocol/module/Debugger.java | 39 - .../inspector/protocol/module/HeapProfiler.java | 46 - .../inspector/protocol/module/Inspector.java | 29 - .../inspector/protocol/module/Network.java | 314 - .../inspector/protocol/module/Page.java | 402 - .../inspector/protocol/module/Profiler.java | 61 - .../inspector/protocol/module/Runtime.java | 592 -- .../protocol/module/SimpleBooleanResult.java | 25 - .../inspector/protocol/module/Worker.java | 27 - .../inspector/protocol/module/WxDebug.java | 108 - .../RhinoDetectingRuntimeReplFactory.java | 86 - .../screencast/ScreencastDispatcher.java | 155 - .../taobao/weex/devtools/json/ObjectMapper.java | 354 - .../devtools/json/annotation/JsonProperty.java | 21 - .../devtools/json/annotation/JsonValue.java | 18 - .../weex/devtools/server/AddressNameHelper.java | 24 - .../devtools/server/CompositeInputStream.java | 115 - .../weex/devtools/server/LazySocketHandler.java | 46 - .../server/LeakyBufferedInputStream.java | 77 - .../weex/devtools/server/LocalSocketServer.java | 179 - .../server/PeerAuthorizationException.java | 16 - .../server/ProtocolDetectingSocketHandler.java | 103 - .../devtools/server/SecureSocketHandler.java | 60 - .../weex/devtools/server/ServerManager.java | 47 - .../weex/devtools/server/SocketHandler.java | 26 - .../devtools/server/SocketHandlerFactory.java | 15 - .../taobao/weex/devtools/server/SocketLike.java | 44 - .../weex/devtools/server/SocketLikeHandler.java | 26 - .../devtools/server/http/ExactPathMatcher.java | 23 - .../devtools/server/http/HandlerRegistry.java | 46 - .../weex/devtools/server/http/HttpHandler.java | 22 - .../weex/devtools/server/http/HttpHeaders.java | 15 - .../weex/devtools/server/http/HttpStatus.java | 18 - .../devtools/server/http/LightHttpBody.java | 47 - .../devtools/server/http/LightHttpMessage.java | 39 - .../devtools/server/http/LightHttpRequest.java | 26 - .../devtools/server/http/LightHttpResponse.java | 31 - .../devtools/server/http/LightHttpServer.java | 285 - .../weex/devtools/server/http/PathMatcher.java | 14 - .../devtools/server/http/RegexpPathMatcher.java | 25 - .../weex/devtools/websocket/CloseCodes.java | 20 - .../taobao/weex/devtools/websocket/Frame.java | 155 - .../weex/devtools/websocket/FrameHelper.java | 60 - .../weex/devtools/websocket/MaskingHelper.java | 19 - .../weex/devtools/websocket/ReadCallback.java | 14 - .../weex/devtools/websocket/ReadHandler.java | 49 - .../weex/devtools/websocket/SimpleEndpoint.java | 62 - .../weex/devtools/websocket/SimpleSession.java | 28 - .../devtools/websocket/WebSocketHandler.java | 136 - .../devtools/websocket/WebSocketSession.java | 195 - .../weex/devtools/websocket/WriteCallback.java | 17 - .../weex/devtools/websocket/WriteHandler.java | 35 - .../database/DatabasePeerManagerTest.java | 38 - .../elements/android/MethodInvokerTest.java | 68 - .../elements/android/ViewDescriptorTest.java | 60 - .../AsyncPrettyPrintResponseBodyTest.java | 236 - .../network/GunzippingOutputStreamTest.java | 36 - .../ResponseHandlingInputStreamTest.java | 187 - .../weex/devtools/json/ObjectMapperTest.java | 302 - android/playground/app/build.gradle | 19 +- .../WeexPerTestCaseListPerfWithAppendTree.java | 205 - .../TC_AHref/WeexUiTestCaseTCAHrefEvent.java | 56 +- .../TC_AHref/WeexUiTestCaseTCAHrefStyle.java | 55 +- .../TC_AHref/WeexUiTestCaseTCAHrefUpdate.java | 54 +- .../TC_Color/WeexUiTestCaseTcColorType.java | 18 +- .../TC_Color/WeexUiTestCaseTcColorUpdate.java | 13 + .../WeexUiTestCaseTcDowngradeAppVFalse.java | 14 + .../WeexUiTestCaseTcDowngradeAppVTrue.java | 14 + .../WeexUiTestCaseTcDowngradeDevMFalse.java | 14 + .../WeexUiTestCaseTcDowngradeDevMTrue.java | 14 + .../WeexUiTestCaseTcDowngradeOSVFalse.java | 14 + .../WeexUiTestCaseTcDowngradeOSVTrue.java | 14 + .../WeexUiTestCaseTcDowngradeWeexVFalse.java | 14 + .../WeexUiTestCaseTcDowngradeWeexVTrue.java | 14 + .../uitest/TC_Image/TC_image_update_Resize.java | 31 - .../TC_Image/WeexUiTestCaseTcImageUpdate.java | 14 + .../TC_Input/WeexUiTestCaseTcInputEvent.java | 14 + .../WeexUiTestCaseTcInputPlaceholder.java | 14 + .../TC_Input/WeexUiTestCaseTcInputStyle.java | 14 + .../TC_Input/WeexUiTestCaseTcInputType.java | 14 + .../TC_Slider/WeexUiTestCaseTcSlider.java | 14 + .../WeexUiTestCaseTcTextStyleColumn.java | 13 + .../TC_Text/WeexUiTestCaseTcTextStyleOwn.java | 13 + .../TC_Text/WeexUiTestCaseTcTextStyleRow.java | 13 + .../TC_Text/WeexUiTestCaseTcTextType.java | 13 + .../weex/uitest/WeexUiTestCaseTcElementOpt.java | 13 + .../java/com/alibaba/weex/util/ScreenShot.java | 55 +- .../java/com/alibaba/weex/util/TestFlow.java | 113 +- .../java/com/alibaba/weex/util/ViewUtil.java | 9 + .../playground/app/src/main/AndroidManifest.xml | 2 + .../src/main/assets/component/list/list-demo.js | 2443 +++--- .../java/com/alibaba/weex/IndexActivity.java | 8 +- .../java/com/alibaba/weex/WXApplication.java | 18 + .../java/com/alibaba/weex/WXPageActivity.java | 76 +- .../com/alibaba/weex/constants/Constants.java | 2 +- .../alibaba/weex/extend/component/RichText.java | 5 +- .../weex/extend/module/GeolocationModule.java | 141 + .../extend/module/location/DefaultLocation.java | 342 + .../weex/extend/module/location/ILocatable.java | 76 + .../extend/module/location/LocationFactory.java | 12 + android/playground/build.gradle | 2 +- android/playground/gradle.properties | 4 +- .../gradle/wrapper/gradle-wrapper.properties | 4 +- android/playground/settings.gradle | 3 - android/sdk/README.md | 7 + android/sdk/assets/main.js | 8150 +----------------- android/sdk/build.gradle | 50 +- android/sdk/config/quality/checkstyle.xml | 233 + .../gradle/wrapper/gradle-wrapper.properties | 2 +- android/sdk/libs/armeabi/libweexv8.so | Bin 3559244 -> 3579724 bytes android/sdk/libs/x86/libweexv8.so | Bin 4304032 -> 4328576 bytes .../java/com/taobao/weex/WXEnvironment.java | 8 +- .../com/taobao/weex/WXGlobalEventModule.java | 135 + .../main/java/com/taobao/weex/WXSDKEngine.java | 40 +- .../java/com/taobao/weex/WXSDKInstance.java | 163 +- .../main/java/com/taobao/weex/WXSDKManager.java | 25 +- .../weex/adapter/IWXUserTrackAdapter.java | 13 + .../appfram/clipboard/WXClipboardModule.java | 3 - .../appfram/navigator/WXNavigatorModule.java | 43 +- .../weex/appfram/storage/DefaultWXStorage.java | 179 +- .../taobao/weex/appfram/storage/IWXStorage.java | 2 +- .../weex/appfram/storage/IWXStorageAdapter.java | 2 + .../appfram/storage/WXSQLiteOpenHelper.java | 145 +- .../weex/appfram/storage/WXStorageModule.java | 26 +- .../com/taobao/weex/bridge/MethodInvoker.java | 7 +- .../java/com/taobao/weex/bridge/WXBridge.java | 74 +- .../com/taobao/weex/bridge/WXBridgeManager.java | 275 +- .../com/taobao/weex/bridge/WXModuleManager.java | 15 +- .../java/com/taobao/weex/common/Constants.java | 383 + .../java/com/taobao/weex/common/IWXBridge.java | 6 + .../taobao/weex/common/TypeModuleFactory.java | 7 +- .../taobao/weex/common/WXDomPropConstant.java | 368 - .../com/taobao/weex/common/WXErrorCode.java | 20 +- .../java/com/taobao/weex/common/WXModule.java | 8 + .../com/taobao/weex/common/WXPerformance.java | 11 + .../java/com/taobao/weex/common/WXThread.java | 77 +- .../taobao/weex/dom/BasicEditTextDomObject.java | 23 +- .../taobao/weex/dom/CSSTransformFromStyle.java | 47 - .../weex/dom/SafePutConcurrentHashMap.java | 237 + .../weex/dom/TextAreaEditTextDomObject.java | 33 +- .../main/java/com/taobao/weex/dom/WXAttr.java | 53 +- .../java/com/taobao/weex/dom/WXDomManager.java | 34 +- .../java/com/taobao/weex/dom/WXDomModule.java | 85 +- .../java/com/taobao/weex/dom/WXDomObject.java | 186 +- .../com/taobao/weex/dom/WXDomObjectFactory.java | 3 +- .../com/taobao/weex/dom/WXDomStatement.java | 241 +- .../com/taobao/weex/dom/WXLineHeightSpan.java | 7 +- .../com/taobao/weex/dom/WXListDomObject.java | 25 +- .../taobao/weex/dom/WXScrollerDomObject.java | 23 +- .../main/java/com/taobao/weex/dom/WXStyle.java | 135 +- .../com/taobao/weex/dom/WXSwitchDomObject.java | 3 - .../com/taobao/weex/dom/WXTextDomObject.java | 82 +- .../weex/ui/ExternalLoaderComponentHolder.java | 274 + .../weex/ui/IExternalComponentGetter.java | 214 + .../taobao/weex/ui/SimpleComponentHolder.java | 38 +- .../com/taobao/weex/ui/WXComponentRegistry.java | 21 +- .../com/taobao/weex/ui/WXRenderManager.java | 11 +- .../com/taobao/weex/ui/WXRenderStatement.java | 24 +- .../ui/animation/DimensionUpdateListener.java | 256 + .../weex/ui/animation/WXAnimationBean.java | 9 +- .../weex/ui/animation/WXAnimationModule.java | 74 +- .../ui/component/AbstractEditComponent.java | 158 +- .../weex/ui/component/AppearanceHelper.java | 287 + .../weex/ui/component/IWXUpdateComponent.java | 212 - .../weex/ui/component/NestedContainer.java | 235 + .../taobao/weex/ui/component/Scrollable.java | 31 +- .../com/taobao/weex/ui/component/Textarea.java | 8 +- .../java/com/taobao/weex/ui/component/WXA.java | 36 +- .../taobao/weex/ui/component/WXBaseRefresh.java | 6 +- .../weex/ui/component/WXBasicComponentType.java | 1 + .../com/taobao/weex/ui/component/WXBorder.java | 311 - .../taobao/weex/ui/component/WXComponent.java | 438 +- .../weex/ui/component/WXComponentFactory.java | 8 +- .../com/taobao/weex/ui/component/WXDiv.java | 3 +- .../com/taobao/weex/ui/component/WXEmbed.java | 265 +- .../taobao/weex/ui/component/WXEventType.java | 240 - .../com/taobao/weex/ui/component/WXHeader.java | 4 +- .../com/taobao/weex/ui/component/WXImage.java | 91 +- .../taobao/weex/ui/component/WXIndicator.java | 39 +- .../com/taobao/weex/ui/component/WXInput.java | 26 +- .../com/taobao/weex/ui/component/WXLoading.java | 18 +- .../weex/ui/component/WXLoadingIndicator.java | 12 +- .../com/taobao/weex/ui/component/WXRefresh.java | 21 +- .../taobao/weex/ui/component/WXScroller.java | 256 +- .../com/taobao/weex/ui/component/WXSlider.java | 136 +- .../weex/ui/component/WXSliderNeighbor.java | 456 + .../com/taobao/weex/ui/component/WXSwitch.java | 18 +- .../com/taobao/weex/ui/component/WXText.java | 59 +- .../taobao/weex/ui/component/WXVContainer.java | 26 +- .../com/taobao/weex/ui/component/WXVideo.java | 184 +- .../com/taobao/weex/ui/component/WXWeb.java | 38 +- .../component/list/HorizontalListComponent.java | 6 +- .../taobao/weex/ui/component/list/WXCell.java | 8 +- .../weex/ui/component/list/WXListComponent.java | 282 +- .../taobao/weex/ui/module/WXModalUIModule.java | 79 +- .../weex/ui/view/WXBackgroundDrawable.java | 487 -- .../weex/ui/view/WXCirclePageAdapter.java | 4 + .../taobao/weex/ui/view/WXCircleViewPager.java | 11 +- .../com/taobao/weex/ui/view/WXEditText.java | 18 + .../weex/ui/view/WXHorizontalScrollView.java | 6 + .../com/taobao/weex/ui/view/WXImageView.java | 151 +- .../com/taobao/weex/ui/view/WXScrollView.java | 6 +- .../com/taobao/weex/ui/view/WXShapeFeature.java | 462 - .../com/taobao/weex/ui/view/WXVideoView.java | 203 + .../java/com/taobao/weex/ui/view/WXWebView.java | 12 +- .../weex/ui/view/border/BorderCorner.java | 318 + .../weex/ui/view/border/BorderDrawable.java | 653 ++ .../taobao/weex/ui/view/border/BorderEdge.java | 296 + .../taobao/weex/ui/view/border/BorderStyle.java | 252 + .../weex/ui/view/border/BottomLeftCorner.java | 276 + .../weex/ui/view/border/BottomRightCorner.java | 276 + .../weex/ui/view/border/TopLeftCorner.java | 273 + .../weex/ui/view/border/TopRightCorner.java | 276 + .../taobao/weex/ui/view/gesture/WXGesture.java | 25 +- .../weex/ui/view/listview/WXRecyclerView.java | 6 + .../ui/view/refresh/core/WXRefreshView.java | 6 + .../ui/view/refresh/core/WXSwipeLayout.java | 40 +- .../ui/view/refresh/wrapper/BaseBounceView.java | 56 +- .../refresh/wrapper/BounceRecyclerView.java | 6 + .../refresh/wrapper/BounceScrollerView.java | 8 +- .../main/java/com/taobao/weex/utils/FontDO.java | 13 +- .../com/taobao/weex/utils/FunctionParser.java | 4 +- .../java/com/taobao/weex/utils/LogLevel.java | 12 +- .../taobao/weex/utils/SingleFunctionParser.java | 250 + .../com/taobao/weex/utils/TypefaceUtil.java | 24 +- .../java/com/taobao/weex/utils/WXConst.java | 254 - .../java/com/taobao/weex/utils/WXJsonUtils.java | 23 + .../java/com/taobao/weex/utils/WXLogUtils.java | 188 +- .../taobao/weex/utils/WXReflectionUtils.java | 29 +- .../taobao/weex/utils/WXSoInstallMgrSdk.java | 9 +- .../java/com/taobao/weex/utils/WXUtils.java | 19 +- .../java/com/taobao/weex/utils/WXViewUtils.java | 45 + .../taobao/weex/utils/batch/BactchExecutor.java | 214 + .../weex/utils/batch/BatchOperationHelper.java | 256 + .../taobao/weex/utils/batch/Interceptor.java | 212 + .../java/com/taobao/weex/WXSDKEngineTest.java | 11 +- .../java/com/taobao/weex/WXSDKInstanceTest.java | 73 +- .../java/com/taobao/weex/WXSDKManagerTest.java | 231 + .../appfram/storage/DefaultWXStorageTest.java | 14 +- .../appfram/storage/WXStorageModuleTest.java | 13 +- .../taobao/weex/bridge/WXBridgeManagerTest.java | 226 +- .../taobao/weex/bridge/WXModuleManagerTest.java | 291 + .../java/com/taobao/weex/common/TestModule.java | 12 + .../java/com/taobao/weex/dom/TestDomObject.java | 23 + .../java/com/taobao/weex/dom/WXAttrTest.java | 300 + .../com/taobao/weex/dom/WXDomManagerTest.java | 255 + .../com/taobao/weex/dom/WXDomModuleTest.java | 68 +- .../com/taobao/weex/dom/WXDomObjectTest.java | 294 + .../com/taobao/weex/dom/WXDomStatementTest.java | 427 + .../com/taobao/weex/ui/ComponentHolderTest.java | 245 + .../taobao/weex/ui/WXRenderStatementTest.java | 1 - .../ui/animation/WXAnimationModuleTest.java | 1 - .../taobao/weex/ui/component/ComponentTest.java | 266 + .../weex/ui/component/EditComponentTest.java | 314 + .../taobao/weex/ui/component/TestComponent.java | 5 +- .../taobao/weex/ui/component/TestConstants.java | 222 + .../taobao/weex/ui/component/TextareaTest.java | 255 + .../weex/ui/component/WXComponentTest.java | 85 +- .../com/taobao/weex/ui/component/WXDivTest.java | 32 +- .../taobao/weex/ui/component/WXHeaderTest.java | 225 + .../taobao/weex/ui/component/WXImageTest.java | 235 + .../weex/ui/component/WXScrollerTest.java | 270 + .../taobao/weex/ui/component/WXSliderTest.java | 319 + .../taobao/weex/ui/component/WXTextTest.java | 16 +- .../taobao/weex/ui/component/WXVideoTest.java | 270 + .../ui/component/list/WXListComponentTest.java | 289 + .../weex/ui/view/WXCirclePageAdapterTest.java | 283 + .../taobao/weex/ui/view/WXScrollViewTest.java | 273 + .../com/taobao/weex/ui/view/WXWebViewTest.java | 297 + .../weex/ui/view/border/BorderCornerTest.java | 506 ++ .../weex/ui/view/border/BorderDrawableTest.java | 532 ++ .../com/taobao/weex/utils/WXFileUtilsTest.java | 6 +- .../com/taobao/weex/utils/WXJsonUtilsTest.java | 32 + .../weex/utils/WXReflectionUtilsTest.java | 68 +- .../taobao/weex/bridge/WXWebsocketBridge.java | 12 +- bin/commit-msg.sh | 4 +- bin/dist-js-framework.sh | 2 +- build/build.js | 180 + build/config.frameworks.js | 51 - build/rollup.browser.common.config.js | 35 + build/rollup.browser.config.js | 38 + build/rollup.config.js | 34 + build/webpack.browser.config.js | 43 - build/webpack.common.config.js | 50 - build/webpack.examples.config.js | 21 +- build/webpack.native.config.js | 42 - circle.yml | 12 +- dist/weex-js-framework/index.js | 2 +- dist/weex-js-framework/package.json | 7 +- doc/README.md | 10 +- doc/SUMMARY.md | 4 + doc/_layouts/header.html | 24 +- doc/advanced/extend-to-android.md | 5 +- doc/advanced/extend-to-html5.md | 1 - doc/advanced/extend-to-ios.md | 9 +- doc/advanced/how-data-binding-works.md | 1 - doc/advanced/how-it-works.md | 5 +- doc/advanced/integrate-to-android.md | 9 +- doc/advanced/integrate-to-html5.md | 1 - doc/advanced/integrate-to-ios.md | 5 +- doc/ali_addition/weex_doc.css | 8 +- doc/components/a.md | 8 +- doc/components/cell.md | 1 - doc/components/div.md | 1 - doc/components/image.md | 1 - doc/components/indicator.md | 1 - doc/components/input.md | 1 - doc/components/list.md | 1 - doc/components/scroller.md | 1 - doc/components/slider.md | 3 +- doc/components/special-element.md | 3 +- doc/components/switch.md | 1 - doc/components/text.md | 7 +- doc/components/textarea.md | 74 + doc/components/video.md | 1 - doc/components/web.md | 3 +- doc/components/wxc-navpage.md | 13 +- doc/components/wxc-tabbar.md | 3 +- doc/demo/animation.md | 2 +- doc/demo/hello-world.md | 2 +- doc/demo/list.md | 2 +- doc/demo/modal.md | 2 +- doc/demo/slider.md | 4 +- doc/faq.md | 24 +- doc/how-to/customize-a-native-component.md | 3 +- doc/how-to/cuszomize-native-apis.md | 1 - doc/how-to/debug-with-html5.md | 5 +- doc/how-to/debug-with-native.md | 3 - doc/how-to/maintain-your-component-code.md | 3 - doc/how-to/manage-data-with-a-high-level-cms.md | 3 - doc/how-to/manage-your-file-structure.md | 3 - doc/how-to/preview-in-browser.md | 3 +- doc/how-to/preview-in-playground-app.md | 7 +- doc/how-to/require-3rd-party-libs.md | 1 - doc/how-to/transform-code-into-js-bundle.md | 3 +- doc/modules/animation.md | 14 +- doc/modules/clipboard.md | 3 +- doc/modules/dom.md | 1 - doc/modules/globalevent.md | 76 + doc/modules/main.md | 3 +- doc/modules/modal.md | 1 - doc/modules/navigator.md | 1 - doc/modules/storage.md | 3 +- doc/modules/stream.md | 3 +- doc/modules/webview.md | 1 - doc/references/api.md | 5 +- doc/references/bootstrap.md | 1 - doc/references/cheatsheet.md | 2 +- doc/references/color-names.md | 1 - doc/references/common-attrs.md | 1 - doc/references/common-event.md | 1 - doc/references/common-style.md | 4 +- doc/references/component-defs.md | 1 - doc/references/styles/units/color.md | 6 +- doc/references/text-style.md | 3 +- doc/specs/js-framework-apis.md | 1 - doc/specs/virtual-dom-apis.md | 5 +- doc/syntax/comm.md | 7 +- doc/syntax/composed-component.md | 1 - doc/syntax/config-n-data.md | 27 +- doc/syntax/data-binding.md | 27 +- doc/syntax/display-logic.md | 7 +- doc/syntax/events.md | 1 - doc/syntax/id.md | 1 - doc/syntax/main.md | 3 +- doc/syntax/render-logic.md | 3 +- doc/syntax/style-n-class.md | 1 - doc/tools/devtools-android.md | 15 +- doc/tools/devtools-ios.md | 3 +- doc/tools/devtools.md | 10 +- doc/tools/how-to-debug.md | 6 +- doc/tools/playground-app.md | 8 +- doc/tutorial.md | 7 +- examples/component/input-demo.we | 30 + examples/component/list/list-basic.we | 100 +- examples/component/scroller-demo.we | 44 +- .../slider-neighbor/silder-neighbor.we | 206 + .../slider-neighbor/slider-neighbor-item.we | 34 + .../slider-neighbor/slider-neighbor-page.we | 32 + examples/component/video-demo.we | 4 - examples/error.we | 24 + examples/geolocation.we | 49 + examples/iconfont.we | 16 +- examples/index.we | 4 +- examples/module/clipboard.we | 17 +- examples/module/storage-demo.we | 6 +- examples/module/stream-demo.we | 2 +- examples/syntax/hello-world-2.we | 2 +- examples/syntax/hello-world-3.we | 2 +- examples/syntax/hello-world-4.we | 2 +- examples/syntax/hello-world-5.we | 2 +- examples/syntax/hello-world.we | 2 +- examples/test.we | 25 + examples/vanilla/index.js | 25 + examples/vue/animation.vue | 147 + examples/vue/components/a.vue | 22 + examples/vue/components/countdown.vue | 86 + examples/vue/components/image.vue | 55 + examples/vue/components/input.vue | 47 + examples/vue/components/list.vue | 112 + examples/vue/components/marquee.vue | 65 + examples/vue/components/navigator.vue | 71 + examples/vue/components/scroller.vue | 161 + examples/vue/components/slider.vue | 262 + examples/vue/components/tabbar.vue | 61 + examples/vue/components/text.vue | 60 + examples/vue/components/video.vue | 56 + examples/vue/components/web.vue | 74 + examples/vue/hello.vue | 5 + examples/vue/iconfont.vue | 59 + examples/vue/include/base-url.js | 30 + examples/vue/include/example-list-item.vue | 30 + examples/vue/include/example-list.vue | 35 + examples/vue/include/foo.vue | 12 + examples/vue/include/h1.vue | 13 + examples/vue/include/h2.vue | 13 + examples/vue/include/h3.vue | 13 + examples/vue/include/slider-item.vue | 19 + examples/vue/include/slider-page.vue | 27 + examples/vue/include/wxc-list-item.vue | 47 + examples/vue/index.vue | 49 + examples/vue/modules/clipboard.vue | 59 + examples/vue/modules/instance-api.vue | 23 + examples/vue/modules/modal.vue | 71 + examples/vue/modules/storage.vue | 80 + examples/vue/modules/stream.vue | 168 + examples/vue/showcase/calculator.vue | 100 + examples/vue/showcase/include/banner.vue | 23 + examples/vue/showcase/include/banners.vue | 22 + examples/vue/showcase/include/brand.vue | 63 + examples/vue/showcase/include/category.vue | 513 ++ examples/vue/showcase/include/coupon.vue | 85 + examples/vue/showcase/include/goods.vue | 69 + examples/vue/showcase/include/headlines.vue | 94 + examples/vue/showcase/include/link.vue | 17 + examples/vue/showcase/include/match.vue | 50 + examples/vue/showcase/include/resource.vue | 43 + examples/vue/showcase/include/scene.vue | 283 + examples/vue/showcase/include/util.js | 149 + examples/vue/showcase/itemlist.vue | 541 ++ examples/vue/showcase/new-fashion.vue | 605 ++ examples/vue/showcase/progress.vue | 42 + examples/vue/style/index.vue | 41 + examples/vue/style/style-box.vue | 70 + examples/vue/style/style-flex.vue | 125 + examples/vue/style/style-item.vue | 37 + examples/vue/syntax/hello-world-1.vue | 7 + examples/vue/syntax/hello-world-2.vue | 14 + examples/vue/syntax/hello-world-3.vue | 21 + examples/vue/syntax/hello-world-4.vue | 32 + examples/vue/syntax/hello-world-5.vue | 35 + examples/vue/syntax/hello-world.vue | 44 + examples/vue/syntax/include/btn.vue | 9 + examples/vue/syntax/include/sub.vue | 16 + examples/vue/syntax/script-component.vue | 29 + examples/vue/syntax/script-data.vue | 81 + examples/vue/syntax/script-events.vue | 36 + examples/vue/syntax/script-instance.vue | 69 + examples/vue/syntax/script-lifecycle.vue | 28 + examples/vue/syntax/script-module.vue | 28 + examples/vue/syntax/script-options.vue | 60 + examples/vue/syntax/template-class.vue | 29 + examples/vue/syntax/template-content.vue | 20 + examples/vue/syntax/template-event.vue | 36 + examples/vue/syntax/template-if.vue | 29 + examples/vue/syntax/template-repeat-update.vue | 50 + examples/vue/syntax/template-repeat.vue | 41 + examples/vue/syntax/template-style.vue | 24 + examples/vue/template.vue | 40 + examples/vue/test.vue | 16 + examples/vue/test2.vue | 6 + html5/browser/base/atomic.js | 32 - html5/browser/base/component/flexbox.js | 54 - html5/browser/base/component/index.js | 201 - html5/browser/base/component/lazyLoad.js | 67 - html5/browser/base/component/operate.js | 199 - html5/browser/base/component/position.js | 82 - html5/browser/base/component/sticky.js | 254 - html5/browser/base/component/valueFilter.js | 36 - html5/browser/base/div.js | 16 - html5/browser/base/root.js | 63 - html5/browser/bridge/index.js | 7 - html5/browser/bridge/protocol.js | 112 - html5/browser/bridge/receiver.js | 124 - html5/browser/bridge/sender.js | 45 - html5/browser/dom/appearWatcher.js | 150 - html5/browser/dom/componentManager.js | 388 - html5/browser/dom/index.js | 7 - html5/browser/extend/api/animation/index.js | 51 - html5/browser/extend/api/animation/lib.js | 35 - html5/browser/extend/api/clipboard.js | 73 - html5/browser/extend/api/dom.js | 45 - html5/browser/extend/api/event.js | 25 - html5/browser/extend/api/index.js | 27 - html5/browser/extend/api/modal.js | 71 - html5/browser/extend/api/navigator.js | 38 - html5/browser/extend/api/pageInfo.js | 26 - html5/browser/extend/api/storage.js | 159 - html5/browser/extend/api/stream.js | 295 - html5/browser/extend/api/timer.js | 62 - html5/browser/extend/api/webview.js | 57 - html5/browser/extend/components/a.js | 61 - html5/browser/extend/components/countdown.js | 72 - html5/browser/extend/components/datepicker.js | 44 - html5/browser/extend/components/embed.js | 82 - html5/browser/extend/components/image/image.css | 5 - html5/browser/extend/components/image/index.js | 83 - html5/browser/extend/components/index.js | 52 - .../extend/components/indicator/index.js | 186 - .../extend/components/indicator/indicator.css | 8 - html5/browser/extend/components/input.js | 133 - html5/browser/extend/components/marquee.js | 284 - .../extend/components/scrollable/index.js | 15 - .../extend/components/scrollable/list/hlist.js | 18 - .../extend/components/scrollable/list/index.js | 11 - .../extend/components/scrollable/list/list.js | 67 - .../extend/components/scrollable/list/vlist.js | 18 - .../components/scrollable/loading/index.js | 128 - .../components/scrollable/loading/loading.css | 15 - .../extend/components/scrollable/motion.js | 81 - .../components/scrollable/refresh/index.js | 140 - .../components/scrollable/refresh/refresh.css | 16 - .../extend/components/scrollable/scroll.js | 1200 --- .../extend/components/scrollable/scrollable.css | 15 - .../extend/components/scrollable/scrollable.js | 308 - .../components/scrollable/scroller/index.js | 25 - html5/browser/extend/components/select.js | 92 - .../extend/components/slider/carrousel.css | 6 - .../extend/components/slider/carrousel.js | 436 - html5/browser/extend/components/slider/index.js | 349 - .../browser/extend/components/slider/slider.css | 34 - html5/browser/extend/components/slider/timer.js | 66 - .../browser/extend/components/spinner/index.js | 134 - .../extend/components/spinner/spinner.css | 79 - html5/browser/extend/components/switch/index.js | 238 - .../browser/extend/components/switch/switch.css | 24 - .../extend/components/tabheader/index.js | 399 - .../extend/components/tabheader/tabheader.css | 140 - html5/browser/extend/components/text.js | 107 - html5/browser/extend/components/timepicker.js | 43 - html5/browser/extend/components/video/index.js | 115 - html5/browser/extend/components/video/video.css | 3 - html5/browser/extend/components/web.js | 102 - html5/browser/index.js | 18 - html5/browser/render/config.js | 9 - html5/browser/render/gesture.js | 493 -- html5/browser/render/index.js | 219 - html5/browser/render/loader.js | 65 - html5/browser/render/register.js | 72 - html5/browser/render/style/base.css | 38 - html5/browser/runtime/app/bundle/bootstrap.js | 61 - html5/browser/runtime/app/bundle/index.js | 16 - html5/browser/runtime/app/ctrl/index.js | 21 - html5/browser/runtime/app/ctrl/init.js | 84 - html5/browser/runtime/app/index.js | 11 - html5/browser/runtime/config.js | 7 - html5/browser/runtime/default/.DS_Store | Bin 6148 -> 0 bytes html5/browser/runtime/default/config.js | 15 - html5/browser/runtime/default/index.js | 19 - html5/browser/runtime/index.js | 40 - html5/browser/runtime/init.js | 86 - html5/browser/runtime/shared.js | 13 - html5/browser/runtime/static/create.js | 27 - html5/browser/utils/array.js | 15 - html5/browser/utils/frameUpdater.js | 47 - html5/browser/utils/index.js | 201 - html5/browser/utils/logger.js | 38 - html5/default/api/methods.js | 185 - html5/default/api/modules.js | 78 - html5/default/app/bundle/bootstrap.js | 58 - html5/default/app/bundle/define.js | 103 - html5/default/app/bundle/index.js | 16 - html5/default/app/bundle/misc.js | 20 - html5/default/app/ctrl/index.js | 21 - html5/default/app/ctrl/init.js | 126 - html5/default/app/ctrl/misc.js | 110 - html5/default/app/differ.js | 73 - html5/default/app/downgrade.js | 143 - html5/default/app/index.js | 11 - html5/default/app/instance.js | 66 - html5/default/app/register.js | 97 - html5/default/config.js | 15 - html5/default/core/LICENSE | 21 - html5/default/core/array.js | 93 - html5/default/core/dep.js | 62 - html5/default/core/object.js | 84 - html5/default/core/observer.js | 317 - html5/default/core/state.js | 90 - html5/default/core/watcher.js | 278 - html5/default/index.js | 19 - html5/default/static/bridge.js | 36 - html5/default/static/create.js | 27 - html5/default/static/life.js | 43 - html5/default/static/map.js | 1 - html5/default/static/misc.js | 19 - html5/default/static/register.js | 48 - html5/default/util/LICENSE | 21 - html5/default/util/index.js | 99 - html5/default/vm/compiler.js | 607 -- html5/default/vm/directive.js | 319 - html5/default/vm/dom-helper.js | 238 - html5/default/vm/events.js | 103 - html5/default/vm/index.js | 94 - html5/frameworks/index.js | 9 + html5/frameworks/legacy/api/methods.js | 204 + html5/frameworks/legacy/api/modules.js | 78 + html5/frameworks/legacy/app/bundle/bootstrap.js | 66 + html5/frameworks/legacy/app/bundle/define.js | 97 + html5/frameworks/legacy/app/bundle/index.js | 16 + html5/frameworks/legacy/app/ctrl/index.js | 22 + html5/frameworks/legacy/app/ctrl/init.js | 164 + html5/frameworks/legacy/app/ctrl/misc.js | 237 + html5/frameworks/legacy/app/differ.js | 73 + html5/frameworks/legacy/app/downgrade.js | 154 + html5/frameworks/legacy/app/index.js | 37 + html5/frameworks/legacy/app/instance.js | 29 + html5/frameworks/legacy/app/register.js | 100 + html5/frameworks/legacy/config.js | 16 + html5/frameworks/legacy/core/LICENSE | 21 + html5/frameworks/legacy/core/array.js | 95 + html5/frameworks/legacy/core/dep.js | 79 + html5/frameworks/legacy/core/object.js | 84 + html5/frameworks/legacy/core/observer.js | 322 + html5/frameworks/legacy/core/state.js | 91 + html5/frameworks/legacy/core/watcher.js | 253 + html5/frameworks/legacy/index.js | 22 + html5/frameworks/legacy/static/bridge.js | 38 + html5/frameworks/legacy/static/create.js | 30 + html5/frameworks/legacy/static/life.js | 54 + html5/frameworks/legacy/static/map.js | 1 + html5/frameworks/legacy/static/misc.js | 22 + html5/frameworks/legacy/static/register.js | 57 + html5/frameworks/legacy/util/LICENSE | 21 + html5/frameworks/legacy/util/index.js | 138 + html5/frameworks/legacy/util/shared.js | 144 + html5/frameworks/legacy/vm/compiler.js | 618 ++ html5/frameworks/legacy/vm/directive.js | 353 + html5/frameworks/legacy/vm/dom-helper.js | 240 + html5/frameworks/legacy/vm/events.js | 161 + html5/frameworks/legacy/vm/index.js | 113 + html5/frameworks/vanilla/index.js | 108 + html5/native/index.js | 24 - html5/render/browser/base/atomic.js | 32 + html5/render/browser/base/component/flexbox.js | 58 + html5/render/browser/base/component/index.js | 212 + html5/render/browser/base/component/lazyload.js | 68 + html5/render/browser/base/component/operate.js | 198 + html5/render/browser/base/component/position.js | 82 + html5/render/browser/base/component/sticky.js | 230 + .../browser/base/component/valueFilter.js | 36 + html5/render/browser/base/div.js | 16 + html5/render/browser/base/droot.js | 61 + html5/render/browser/base/root.js | 52 + html5/render/browser/bridge/index.js | 7 + html5/render/browser/bridge/protocol.js | 112 + html5/render/browser/bridge/receiver.js | 149 + html5/render/browser/bridge/sender.js | 45 + html5/render/browser/dom/appearWatcher.js | 150 + html5/render/browser/dom/componentManager.js | 384 + html5/render/browser/dom/index.js | 7 + .../browser/extend/api/animation/index.js | 51 + .../render/browser/extend/api/animation/lib.js | 31 + html5/render/browser/extend/api/clipboard.js | 73 + html5/render/browser/extend/api/dom.js | 107 + html5/render/browser/extend/api/event.js | 25 + html5/render/browser/extend/api/geolocation.js | 66 + html5/render/browser/extend/api/globalEvent.js | 46 + html5/render/browser/extend/api/index.js | 27 + html5/render/browser/extend/api/modal.js | 71 + html5/render/browser/extend/api/navigator.js | 38 + html5/render/browser/extend/api/pageInfo.js | 26 + html5/render/browser/extend/api/storage.js | 159 + html5/render/browser/extend/api/stream.js | 310 + html5/render/browser/extend/api/timer.js | 62 + html5/render/browser/extend/api/webview.js | 57 + html5/render/browser/extend/components/a.js | 61 + .../browser/extend/components/countdown.js | 72 + .../browser/extend/components/datepicker.js | 44 + html5/render/browser/extend/components/embed.js | 82 + .../browser/extend/components/image/image.css | 5 + .../browser/extend/components/image/index.js | 94 + html5/render/browser/extend/components/index.js | 52 + .../extend/components/indicator/index.js | 186 + .../extend/components/indicator/indicator.css | 8 + html5/render/browser/extend/components/input.js | 141 + .../render/browser/extend/components/marquee.js | 284 + .../extend/components/scrollable/index.js | 19 + .../extend/components/scrollable/list/hlist.js | 18 + .../extend/components/scrollable/list/index.js | 11 + .../extend/components/scrollable/list/list.js | 67 + .../extend/components/scrollable/list/vlist.js | 18 + .../components/scrollable/loading/index.js | 129 + .../components/scrollable/loading/loading.css | 15 + .../extend/components/scrollable/motion.js | 81 + .../components/scrollable/refresh/index.js | 141 + .../components/scrollable/refresh/refresh.css | 16 + .../extend/components/scrollable/scroll.js | 1200 +++ .../extend/components/scrollable/scrollable.css | 15 + .../extend/components/scrollable/scrollable.js | 307 + .../components/scrollable/scroller/index.js | 25 + .../render/browser/extend/components/select.js | 92 + .../extend/components/slider/carrousel.css | 6 + .../extend/components/slider/carrousel.js | 436 + .../browser/extend/components/slider/index.js | 349 + .../browser/extend/components/slider/slider.css | 34 + .../browser/extend/components/slider/timer.js | 60 + .../browser/extend/components/spinner/index.js | 139 + .../extend/components/spinner/spinner.css | 79 + .../browser/extend/components/switch/index.js | 238 + .../browser/extend/components/switch/switch.css | 24 + .../extend/components/tabheader/index.js | 399 + .../extend/components/tabheader/tabheader.css | 140 + html5/render/browser/extend/components/text.js | 107 + .../browser/extend/components/textarea.js | 94 + .../browser/extend/components/timepicker.js | 43 + .../browser/extend/components/video/index.js | 116 + .../browser/extend/components/video/video.css | 3 + html5/render/browser/extend/components/web.js | 102 + html5/render/browser/extend/index.js | 14 + html5/render/browser/index.js | 22 + html5/render/browser/render/config.js | 12 + html5/render/browser/render/gesture.js | 493 ++ html5/render/browser/render/index.js | 249 + html5/render/browser/render/loader.js | 65 + html5/render/browser/render/register.js | 72 + html5/render/browser/render/style/base.css | 38 + html5/render/browser/utils/array.js | 15 + html5/render/browser/utils/frameUpdater.js | 47 + html5/render/browser/utils/index.js | 218 + html5/render/browser/utils/logger.js | 38 + html5/render/native/index.js | 29 + html5/runtime/.eslintrc | 5 - html5/runtime/framework-weex.js | 1 - html5/runtime/handler.js | 72 + html5/runtime/index.js | 39 +- html5/runtime/init.js | 50 +- html5/runtime/listener.js | 208 + html5/runtime/vdom/comment.js | 28 + html5/runtime/vdom/document.js | 169 + html5/runtime/vdom/element.js | 355 + html5/runtime/vdom/index.js | 11 + html5/runtime/vdom/node.js | 30 + html5/runtime/vdom/operation.js | 241 + html5/shared/arrayFrom.js | 86 + html5/shared/console.js | 123 +- html5/shared/freeze.js | 18 + html5/shared/index.js | 25 +- html5/shared/objectSetPrototypeOf.js | 55 + html5/shared/promise.js | 11 +- html5/shared/setTimeout.js | 52 +- html5/shared/utils.js | 132 - html5/test/case/.eslintrc | 9 + html5/test/case/basic/append-root.output.js | 36 + html5/test/case/basic/append-root.source.js | 58 + html5/test/case/basic/append.output.js | 79 + html5/test/case/basic/append.source.js | 105 + html5/test/case/basic/backward1.output.js | 57 + html5/test/case/basic/backward1.source.js | 95 + html5/test/case/basic/backward2.output.js | 57 + html5/test/case/basic/backward2.source.js | 95 + html5/test/case/basic/components.output.js | 20 + html5/test/case/basic/components.source.js | 83 + .../case/basic/computed-in-repeat.output.js | 19 + .../case/basic/computed-in-repeat.source.js | 64 + html5/test/case/basic/created.output.js | 11 + html5/test/case/basic/created.source.js | 38 + html5/test/case/basic/dynamic-id.output.js | 44 + html5/test/case/basic/dynamic-id.source.js | 76 + .../test/case/basic/dynamic-property.output.js | 24 + .../test/case/basic/dynamic-property.source.js | 61 + html5/test/case/basic/dynamic-type.output.js | 10 + html5/test/case/basic/dynamic-type.source.js | 27 + html5/test/case/basic/foo.output.js | 3 + html5/test/case/basic/foo.source.js | 26 + html5/test/case/basic/foo2.output.js | 10 + html5/test/case/basic/foo2.source.js | 34 + html5/test/case/basic/foo3.output.js | 9 + html5/test/case/basic/foo3.source.js | 23 + html5/test/case/basic/foo4.output.js | 12 + html5/test/case/basic/foo4.source.js | 26 + html5/test/case/basic/foo5.output.js | 14 + html5/test/case/basic/foo5.source.js | 32 + html5/test/case/basic/foo6.output.js | 28 + html5/test/case/basic/foo6.source.js | 53 + html5/test/case/basic/foo7.output.js | 26 + html5/test/case/basic/foo7.source.js | 58 + html5/test/case/basic/foo8.output.js | 60 + html5/test/case/basic/foo8.source.js | 73 + html5/test/case/basic/foo9.output.js | 57 + html5/test/case/basic/foo9.source.js | 95 + html5/test/case/basic/id.output.js | 32 + html5/test/case/basic/id.source.js | 62 + html5/test/case/basic/if-repeat.output.js | 13 + html5/test/case/basic/if-repeat.source.js | 42 + html5/test/case/basic/if-root.output.js | 1 + html5/test/case/basic/if-root.source.js | 26 + html5/test/case/basic/if.output.js | 13 + html5/test/case/basic/if.source.js | 39 + html5/test/case/basic/promise.output.js | 3 + html5/test/case/basic/promise.source.js | 29 + html5/test/case/basic/ready.output.js | 11 + html5/test/case/basic/ready.source.js | 38 + html5/test/case/basic/repeat-array-kv.output.js | 22 + html5/test/case/basic/repeat-array-kv.source.js | 45 + .../case/basic/repeat-array-no-kv.output.js | 22 + .../case/basic/repeat-array-no-kv.source.js | 43 + .../case/basic/repeat-array-non-obj.output.js | 22 + .../case/basic/repeat-array-non-obj.source.js | 44 + html5/test/case/basic/repeat-array-v.output.js | 22 + html5/test/case/basic/repeat-array-v.source.js | 44 + html5/test/case/basic/repeat-index.output.js | 22 + html5/test/case/basic/repeat-index.source.js | 41 + html5/test/case/basic/repeat-root.output.js | 1 + html5/test/case/basic/repeat-root.source.js | 29 + html5/test/case/basic/repeat-watch.output.js | 46 + html5/test/case/basic/repeat-watch.source.js | 57 + html5/test/case/basic/require.output.js | 9 + html5/test/case/basic/require.source.js | 34 + html5/test/case/basic/reset-style.output.js | 15 + html5/test/case/basic/reset-style.source.js | 40 + html5/test/case/basic/static1.output.js | 12 + html5/test/case/basic/static1.source.js | 33 + html5/test/case/basic/static2.output.js | 30 + html5/test/case/basic/static2.source.js | 44 + html5/test/case/basic/static3.output.js | 33 + html5/test/case/basic/static3.source.js | 44 + html5/test/case/basic/static4.output.js | 35 + html5/test/case/basic/static4.source.js | 75 + html5/test/case/basic/subvm.output.js | 20 + html5/test/case/basic/subvm.source.js | 80 + html5/test/case/basic/transformer1.output.js | 3 + html5/test/case/basic/transformer1.source.js | 28 + .../case/complex/append-root-event.output.js | 13 + .../case/complex/append-root-event.source.js | 46 + html5/test/case/complex/click.output.js | 26 + html5/test/case/complex/click.source.js | 58 + html5/test/case/complex/computed.output.js | 15 + html5/test/case/complex/computed.source.js | 54 + html5/test/case/complex/if-refresh.output.js | 3 + html5/test/case/complex/if-refresh.source.js | 39 + .../case/complex/if-repeat-refresh.output.js | 22 + .../case/complex/if-repeat-refresh.source.js | 42 + html5/test/case/complex/inline-click.output.js | 14 + html5/test/case/complex/inline-click.source.js | 36 + html5/test/case/complex/input-binding.output.js | 12 + html5/test/case/complex/input-binding.source.js | 60 + html5/test/case/complex/refresh2.output.js | 20 + html5/test/case/complex/refresh2.source.js | 116 + .../test/case/complex/repeat-track-by.output.js | 24 + .../test/case/complex/repeat-track-by.source.js | 46 + html5/test/case/complex/transformer2.output.js | 3 + html5/test/case/complex/transformer2.source.js | 28 + html5/test/case/complex/transformer3.output.js | 3 + html5/test/case/complex/transformer3.source.js | 28 + .../case/multi/clear-dep-target-error.source.js | 27 + .../case/multi/clear-dep-target-fine.output.js | 11 + .../case/multi/clear-dep-target-fine.source.js | 30 + html5/test/case/multi/clear-moduleA.output.js | 12 + html5/test/case/multi/clear-moduleA.source.js | 43 + html5/test/case/multi/clear-moduleB.output.js | 11 + html5/test/case/multi/clear-moduleB.source.js | 32 + html5/test/case/prepare.js | 61 + html5/test/case/signals/modal.output.js | 9 + html5/test/case/signals/modal.source.js | 42 + html5/test/case/signals/signals-long.source.js | 1205 +++ html5/test/case/signals/signals.source.js | 66 + html5/test/case/signals/timer.output.js | 9 + html5/test/case/signals/timer.source.js | 36 + html5/test/case/tester.js | 489 ++ .../test/case/throws/global-variable1.source.js | 17 + .../test/case/throws/global-variable2.source.js | 15 + .../test/case/throws/global-variable3.source.js | 22 + html5/test/unit/default/api/methods.js | 184 +- html5/test/unit/default/api/modules.js | 18 +- html5/test/unit/default/app/bundle.js | 159 +- html5/test/unit/default/app/ctrl.js | 121 +- html5/test/unit/default/app/downgrade.js | 8 +- html5/test/unit/default/app/index.js | 46 +- html5/test/unit/default/app/register.js | 89 +- .../test/unit/default/assets/append-root.input | 58 - .../test/unit/default/assets/append-root.output | 36 - html5/test/unit/default/assets/append.input | 105 - html5/test/unit/default/assets/append.output | 79 - html5/test/unit/default/assets/backward1.input | 95 - html5/test/unit/default/assets/backward1.output | 57 - html5/test/unit/default/assets/backward2.input | 95 - html5/test/unit/default/assets/backward2.output | 57 - html5/test/unit/default/assets/click.input | 58 - html5/test/unit/default/assets/click.output | 26 - html5/test/unit/default/assets/components.input | 83 - .../test/unit/default/assets/components.output | 17 - .../default/assets/computed-in-repeat.input | 64 - .../default/assets/computed-in-repeat.output | 19 - html5/test/unit/default/assets/computed.input | 54 - html5/test/unit/default/assets/computed.output | 15 - html5/test/unit/default/assets/created.input | 38 - html5/test/unit/default/assets/created.output | 11 - .../test/unit/default/assets/dynamic-type.input | 27 - .../unit/default/assets/dynamic-type.output | 10 - html5/test/unit/default/assets/foo.input | 26 - html5/test/unit/default/assets/foo.output | 3 - html5/test/unit/default/assets/foo2.input | 34 - html5/test/unit/default/assets/foo2.output | 10 - html5/test/unit/default/assets/foo3.input | 23 - html5/test/unit/default/assets/foo3.output | 9 - html5/test/unit/default/assets/foo4.input | 26 - html5/test/unit/default/assets/foo4.output | 12 - html5/test/unit/default/assets/foo5.input | 32 - html5/test/unit/default/assets/foo5.output | 14 - html5/test/unit/default/assets/foo6.input | 53 - html5/test/unit/default/assets/foo6.output | 28 - html5/test/unit/default/assets/foo7.input | 58 - html5/test/unit/default/assets/foo7.output | 26 - html5/test/unit/default/assets/foo8.input | 73 - html5/test/unit/default/assets/foo8.output | 60 - html5/test/unit/default/assets/foo9.input | 95 - html5/test/unit/default/assets/foo9.output | 57 - html5/test/unit/default/assets/if-refresh.input | 39 - .../test/unit/default/assets/if-refresh.output | 3 - .../unit/default/assets/if-repeat-refresh.input | 42 - .../default/assets/if-repeat-refresh.output | 22 - html5/test/unit/default/assets/if-repeat.input | 42 - html5/test/unit/default/assets/if-repeat.output | 13 - html5/test/unit/default/assets/if.input | 39 - html5/test/unit/default/assets/if.output | 13 - .../test/unit/default/assets/inline-click.input | 36 - .../unit/default/assets/inline-click.output | 14 - .../unit/default/assets/input-binding.input | 60 - .../unit/default/assets/input-binding.output | 12 - html5/test/unit/default/assets/promise.input | 29 - html5/test/unit/default/assets/promise.output | 3 - html5/test/unit/default/assets/ready.input | 38 - html5/test/unit/default/assets/ready.output | 11 - html5/test/unit/default/assets/refresh2.input | 116 - html5/test/unit/default/assets/refresh2.output | 20 - .../unit/default/assets/repeat-array-kv.input | 45 - .../unit/default/assets/repeat-array-kv.output | 22 - .../default/assets/repeat-array-no-kv.input | 43 - .../default/assets/repeat-array-no-kv.output | 22 - .../default/assets/repeat-array-non-obj.input | 44 - .../default/assets/repeat-array-non-obj.output | 22 - .../unit/default/assets/repeat-array-v.input | 44 - .../unit/default/assets/repeat-array-v.output | 22 - .../test/unit/default/assets/repeat-index.input | 41 - .../unit/default/assets/repeat-index.output | 22 - .../unit/default/assets/repeat-track-by.input | 46 - .../unit/default/assets/repeat-track-by.output | 24 - .../test/unit/default/assets/repeat-watch.input | 57 - .../unit/default/assets/repeat-watch.output | 46 - html5/test/unit/default/assets/require.input | 34 - html5/test/unit/default/assets/require.output | 9 - .../test/unit/default/assets/signals-long.input | 1205 --- html5/test/unit/default/assets/signals.input | 66 - html5/test/unit/default/assets/subvm.input | 80 - html5/test/unit/default/assets/subvm.output | 17 - .../test/unit/default/assets/transformer1.input | 28 - .../unit/default/assets/transformer1.output | 3 - .../test/unit/default/assets/transformer2.input | 28 - .../unit/default/assets/transformer2.output | 3 - .../test/unit/default/assets/transformer3.input | 28 - .../unit/default/assets/transformer3.output | 3 - html5/test/unit/default/helper/document.js | 1 - html5/test/unit/default/runtime.js | 233 +- html5/test/unit/default/test.js | 872 -- html5/test/unit/default/util/index.js | 9 +- html5/test/unit/default/util/shared.js | 125 + html5/test/unit/default/vm/compiler.js | 50 +- html5/test/unit/default/vm/directive.js | 6 +- html5/test/unit/default/vm/dom-helper.js | 7 +- html5/test/unit/default/vm/events.js | 9 +- html5/test/unit/default/vm/vm.js | 373 +- html5/test/unit/shared/arrayFrom.js | 77 + html5/test/unit/shared/console.js | 211 +- html5/test/unit/shared/index.js | 25 +- html5/test/unit/shared/objectSetPrototypeOf.js | 24 + html5/test/unit/vanilla/index.js | 157 + html5/test/unit/vdom/index.js | 35 +- html5/test/unit/vdom/listener.js | 228 +- html5/test/unit/vdom/node.js | 21 + html5/vdom/helper.js | 7 - html5/vdom/index.js | 545 -- html5/vdom/listener.js | 103 - index.html | 4 +- ios/WXDevtool/Podfile | 9 - .../Products/TBWXDevTool.framework/Info.plist | Bin 744 -> 0 bytes ios/WXDevtool/README.md | 74 - .../TBWXDevTool.xcodeproj/project.pbxproj | 1180 --- .../xcschemes/TBWXDevTool_MTL.xcscheme | 80 - .../xcschemes/TBWeexDevTool.xcscheme | 80 - .../xcshareddata/xcschemes/TBWXDevTool.xcscheme | 80 - .../xcschemes/TBWeexDevTool.xcscheme | 80 - ios/WXDevtool/TBWXDevTool_MTL/TBWXDevTool_MTL.h | 13 - ios/WXDevtool/TBWXDevTool_MTL/TBWXDevTool_MTL.m | 13 - ios/WXDevtool/WXDevTool/Info.plist | 26 - .../DerivedSources/PDApplicationCacheDomain.h | 59 - .../DerivedSources/PDApplicationCacheDomain.m | 113 - .../DerivedSources/PDApplicationCacheTypes.h | 77 - .../DerivedSources/PDApplicationCacheTypes.m | 86 - .../Source/DerivedSources/PDCSSDomain.h | 136 - .../Source/DerivedSources/PDCSSDomain.m | 290 - .../Source/DerivedSources/PDCSSTypes.h | 415 - .../Source/DerivedSources/PDCSSTypes.m | 507 -- .../Source/DerivedSources/PDConsoleDomain.h | 67 - .../Source/DerivedSources/PDConsoleDomain.m | 107 - .../Source/DerivedSources/PDConsoleTypes.h | 82 - .../Source/DerivedSources/PDConsoleTypes.m | 75 - .../Source/DerivedSources/PDDOMDebuggerDomain.h | 69 - .../Source/DerivedSources/PDDOMDebuggerDomain.m | 82 - .../Source/DerivedSources/PDDOMDomain.h | 244 - .../Source/DerivedSources/PDDOMDomain.m | 410 - .../Source/DerivedSources/PDDOMStorageDomain.h | 48 - .../Source/DerivedSources/PDDOMStorageDomain.m | 111 - .../Source/DerivedSources/PDDOMStorageTypes.h | 33 - .../Source/DerivedSources/PDDOMStorageTypes.m | 36 - .../Source/DerivedSources/PDDOMTypes.h | 163 - .../Source/DerivedSources/PDDOMTypes.m | 145 - .../Source/DerivedSources/PDDatabaseDomain.h | 48 - .../Source/DerivedSources/PDDatabaseDomain.m | 123 - .../Source/DerivedSources/PDDatabaseTypes.h | 37 - .../Source/DerivedSources/PDDatabaseTypes.m | 38 - .../Source/DerivedSources/PDDebuggerDomain.h | 205 - .../Source/DerivedSources/PDDebuggerDomain.m | 355 - .../Source/DerivedSources/PDDebuggerTypes.h | 97 - .../Source/DerivedSources/PDDebuggerTypes.m | 111 - .../Source/DerivedSources/PDFileSystemDomain.h | 104 - .../Source/DerivedSources/PDFileSystemDomain.m | 201 - .../Source/DerivedSources/PDFileSystemTypes.h | 59 - .../Source/DerivedSources/PDFileSystemTypes.m | 63 - .../Source/DerivedSources/PDIndexedDBDomain.h | 81 - .../Source/DerivedSources/PDIndexedDBDomain.m | 131 - .../Source/DerivedSources/PDIndexedDBTypes.h | 173 - .../Source/DerivedSources/PDIndexedDBTypes.m | 205 - .../Source/DerivedSources/PDInspectorDomain.h | 45 - .../Source/DerivedSources/PDInspectorDomain.m | 87 - .../Source/DerivedSources/PDMemoryDomain.h | 39 - .../Source/DerivedSources/PDMemoryDomain.m | 74 - .../Source/DerivedSources/PDMemoryTypes.h | 91 - .../Source/DerivedSources/PDMemoryTypes.m | 128 - .../Source/DerivedSources/PDNetworkDomain.h | 175 - .../Source/DerivedSources/PDNetworkDomain.m | 406 - .../Source/DerivedSources/PDNetworkTypes.h | 235 - .../Source/DerivedSources/PDNetworkTypes.m | 239 - .../Source/DerivedSources/PDPageDomain.h | 166 - .../Source/DerivedSources/PDPageDomain.m | 288 - .../Source/DerivedSources/PDPageTypes.h | 156 - .../Source/DerivedSources/PDPageTypes.m | 167 - .../Source/DerivedSources/PDProfilerDomain.h | 64 - .../Source/DerivedSources/PDProfilerDomain.m | 216 - .../Source/DerivedSources/PDProfilerTypes.h | 50 - .../Source/DerivedSources/PDProfilerTypes.m | 59 - .../Source/DerivedSources/PDRuntimeDomain.h | 85 - .../Source/DerivedSources/PDRuntimeDomain.m | 117 - .../Source/DerivedSources/PDRuntimeTypes.h | 163 - .../Source/DerivedSources/PDRuntimeTypes.m | 174 - .../Source/DerivedSources/PDTimelineDomain.h | 57 - .../Source/DerivedSources/PDTimelineDomain.m | 86 - .../Source/DerivedSources/PDTimelineTypes.h | 34 - .../Source/DerivedSources/PDTimelineTypes.m | 36 - .../Source/DerivedSources/PDWebGLDomain.h | 45 - .../Source/DerivedSources/PDWebGLDomain.m | 93 - .../Source/DerivedSources/PDWebGLTypes.h | 34 - .../Source/DerivedSources/PDWebGLTypes.m | 53 - .../Source/DerivedSources/PDWorkerDomain.h | 46 - .../Source/DerivedSources/PDWorkerDomain.m | 119 - .../Source/DerivedSources/WXDebugDomain.h | 18 - .../Source/DerivedSources/WXDebugDomain.m | 30 - .../DerivedSources/WXProfilerDomainController.h | 15 - .../DerivedSources/WXProfilerDomainController.m | 23 - .../DerivedSources/WXTimelineDomainController.h | 18 - .../DerivedSources/WXTimelineDomainController.m | 59 - .../NSArray+PDRuntimePropertyDescriptor.h | 25 - .../NSArray+PDRuntimePropertyDescriptor.m | 97 - .../Source/PonyDebugger/NSArray+PD_JSONObject.h | 18 - .../Source/PonyDebugger/NSArray+PD_JSONObject.m | 27 - .../Source/PonyDebugger/NSData+PDDebugger.h | 9 - .../Source/PonyDebugger/NSData+PDDebugger.m | 20 - .../Source/PonyDebugger/NSDate+PDDebugger.h | 15 - .../Source/PonyDebugger/NSDate+PDDebugger.m | 18 - .../Source/PonyDebugger/NSDate+PD_JSONObject.h | 18 - .../Source/PonyDebugger/NSDate+PD_JSONObject.m | 21 - .../NSDictionary+PDRuntimePropertyDescriptor.h | 22 - .../NSDictionary+PDRuntimePropertyDescriptor.m | 98 - .../Source/PonyDebugger/NSError+PD_JSONObject.h | 18 - .../Source/PonyDebugger/NSError+PD_JSONObject.m | 21 - ...SManagedObject+PDRuntimePropertyDescriptor.h | 28 - ...SManagedObject+PDRuntimePropertyDescriptor.m | 105 - .../NSObject+PDRuntimePropertyDescriptor.h | 38 - .../NSObject+PDRuntimePropertyDescriptor.m | 213 - .../NSOrderedSet+PDRuntimePropertyDescriptor.h | 23 - .../NSOrderedSet+PDRuntimePropertyDescriptor.m | 105 - .../NSSet+PDRuntimePropertyDescriptor.h | 26 - .../NSSet+PDRuntimePropertyDescriptor.m | 119 - .../PonyDebugger/PDConsoleDomainController.h | 24 - .../PonyDebugger/PDConsoleDomainController.m | 112 - .../Source/PonyDebugger/PDContainerIndex.h | 25 - .../Source/PonyDebugger/PDContainerIndex.m | 34 - .../Source/PonyDebugger/PDDOMDomainController.h | 37 - .../Source/PonyDebugger/PDDOMDomainController.m | 912 -- .../WXDevTool/Source/PonyDebugger/PDDebugger.h | 108 - .../WXDevTool/Source/PonyDebugger/PDDebugger.m | 749 -- .../Source/PonyDebugger/PDDefinitions.h | 28 - .../Source/PonyDebugger/PDDefinitions.m | 194 - .../Source/PonyDebugger/PDDomainController.h | 25 - .../Source/PonyDebugger/PDDomainController.m | 48 - .../PonyDebugger/PDDynamicDebuggerDomain.h | 40 - .../PonyDebugger/PDDynamicDebuggerDomain.m | 87 - .../PonyDebugger/PDIndexedDBDomainController.h | 29 - .../PonyDebugger/PDIndexedDBDomainController.m | 267 - .../PonyDebugger/PDInspectorDomainController.h | 21 - .../PonyDebugger/PDInspectorDomainController.m | 41 - .../PonyDebugger/PDNetworkDomainController.h | 79 - .../PonyDebugger/PDNetworkDomainController.m | 1156 --- .../WXDevTool/Source/PonyDebugger/PDObject.h | 41 - .../WXDevTool/Source/PonyDebugger/PDObject.m | 135 - .../PonyDebugger/PDPageDomainController.h | 22 - .../PonyDebugger/PDPageDomainController.m | 93 - .../Source/PonyDebugger/PDPrettyStringPrinter.h | 36 - .../Source/PonyDebugger/PDPrettyStringPrinter.m | 146 - .../PonyDebugger/PDRuntimeDomainController.h | 26 - .../PonyDebugger/PDRuntimeDomainController.m | 177 - .../Source/PonyDebugger/PonyDebugger.h | 14 - .../Source/PonyDebugger/WXCSSDomainController.h | 18 - .../Source/PonyDebugger/WXCSSDomainController.m | 214 - .../PonyDebugger/WXDebugDomainController.h | 20 - .../PonyDebugger/WXDebugDomainController.m | 36 - .../Source/PonyDebugger/WXDevToolType.h | 26 - .../Source/PonyDebugger/WXDevToolType.m | 25 - .../Source/PonyDebugger/WXDeviceInfo.h | 15 - .../Source/PonyDebugger/WXDeviceInfo.m | 78 - .../WXSourceDebuggerDomainController.h | 26 - .../WXSourceDebuggerDomainController.m | 225 - .../Source/Supporting Files/TBWXDevTool.pch | 19 - .../WXDevTool/Source/WXHeader/WXDevTool.h | 34 - .../WXDevTool/Source/WXHeader/WXDevTool.m | 59 - ios/WXDevtool/WXDevTool/TBWXDevTool.h | 21 - ios/WXDevtool/WXDevtool.podspec | 32 - ios/playground/Podfile | 2 +- .../WeexDemo.xcodeproj/project.pbxproj | 2 - .../xcshareddata/xcschemes/WeexDemo.xcscheme | 12 + ios/playground/WeexDemo/AppDelegate.m | 3 - .../AppIcon.appiconset/Contents.json | 20 + ios/playground/WeexDemo/Info.plist | 6 +- ios/playground/WeexDemo/Scanner/WXScannerVC.m | 18 +- ios/playground/WeexDemo/WXDemoViewController.m | 4 +- ios/playground/WeexDemoTests/Info.plist | 4 + ios/playground/WeexUITestDemo-Info.plist | 4 +- ios/sdk/WeexSDK.podspec | 4 +- ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 78 +- ios/sdk/WeexSDK/Resources/main.js | 10 +- .../WeexSDK/Sources/Bridge/WXBridgeContext.m | 33 +- .../Sources/Bridge/WXDebugLoggerBridge.m | 12 +- ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 66 +- ios/sdk/WeexSDK/Sources/Bridge/WXPolyfillSet.h | 31 + ios/sdk/WeexSDK/Sources/Bridge/WXPolyfillSet.m | 54 + .../WeexSDK/Sources/Component/WXAComponent.m | 19 + .../Sources/Component/WXCanvasComponent.h | 17 + .../Sources/Component/WXCanvasComponent.m | 434 + .../WeexSDK/Sources/Component/WXCellComponent.m | 2 + .../Sources/Component/WXComponent_internal.h | 3 +- .../Sources/Component/WXImageComponent.m | 23 +- .../Sources/Component/WXIndicatorComponent.m | 3 +- .../WeexSDK/Sources/Component/WXListComponent.m | 71 +- .../Sources/Component/WXRefreshComponent.m | 12 - .../Sources/Component/WXScrollerComponent.m | 74 +- .../Sources/Component/WXSliderComponent.m | 37 +- .../Component/WXSliderNeighborComponent.h | 68 + .../Component/WXSliderNeighborComponent.m | 1755 ++++ .../Sources/Component/WXTextAreaComponent.h | 14 +- .../Sources/Component/WXTextAreaComponent.m | 39 +- .../WeexSDK/Sources/Component/WXTextComponent.m | 21 +- .../Sources/Component/WXTextInputComponent.m | 55 +- ios/sdk/WeexSDK/Sources/Component/WXTransform.h | 2 + ios/sdk/WeexSDK/Sources/Component/WXTransform.m | 39 +- ios/sdk/WeexSDK/Sources/Debug/WXDebugTool.m | 5 +- ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m | 9 +- .../WeexSDK/Sources/Events/WXComponent+Events.m | 3 +- .../Sources/Handler/WXNavigationDefaultImpl.m | 5 +- .../WeexSDK/Sources/Layout/WXComponent+Layout.m | 78 +- .../WeexSDK/Sources/Manager/WXBridgeManager.h | 5 + .../WeexSDK/Sources/Manager/WXBridgeManager.m | 26 +- .../Sources/Manager/WXComponentManager.h | 9 +- .../Sources/Manager/WXComponentManager.m | 36 +- .../WeexSDK/Sources/Manager/WXModuleManager.m | 11 +- ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.h | 17 + ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.m | 110 + ios/sdk/WeexSDK/Sources/Model/WXComponent.h | 20 +- ios/sdk/WeexSDK/Sources/Model/WXComponent.m | 55 +- ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.h | 14 +- ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 24 + .../WeexSDK/Sources/Module/WXAnimationModule.m | 123 +- ios/sdk/WeexSDK/Sources/Module/WXCanvasModule.h | 16 + ios/sdk/WeexSDK/Sources/Module/WXCanvasModule.m | 103 + ios/sdk/WeexSDK/Sources/Module/WXDomModule.m | 22 + .../Sources/Module/WXGlobalEventModule.h | 14 + .../Sources/Module/WXGlobalEventModule.m | 66 + ios/sdk/WeexSDK/Sources/Module/WXStreamModule.h | 3 + ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m | 9 +- ios/sdk/WeexSDK/Sources/Module/WXTimerModule.m | 2 + ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.h | 16 +- ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.m | 74 +- .../WeexSDK/Sources/Protocol/WXBridgeProtocol.h | 29 +- .../WeexSDK/Sources/Protocol/WXModuleProtocol.h | 1 + .../Sources/Supporting Files/WeexSDK-Prefix.pch | 6 - .../Sources/Utility/WXAppConfiguration.h | 8 + .../Sources/Utility/WXAppConfiguration.m | 11 + ios/sdk/WeexSDK/Sources/Utility/WXConvert.m | 26 +- ios/sdk/WeexSDK/Sources/Utility/WXDefine.h | 5 +- ios/sdk/WeexSDK/Sources/Utility/WXLog.h | 11 +- ios/sdk/WeexSDK/Sources/Utility/WXLog.m | 96 +- ios/sdk/WeexSDK/Sources/Utility/WXUtility.h | 20 + ios/sdk/WeexSDK/Sources/Utility/WXUtility.m | 92 +- .../Sources/View/WXComponent+ViewManagement.m | 12 +- ios/sdk/WeexSDK/Sources/View/WXErrorView.m | 3 +- ios/sdk/WeexSDKTests/WXComponentTests.m | 15 +- ios/sdk/WeexSDKTests/WXConvertTests.m | 73 + ios/sdk/WeexSDKTests/WXStreamModuleTests.m | 85 + ios/sdk/WeexSDKTests/WeexSDKTests.m | 14 +- package.json | 64 +- start | 1 + 1390 files changed, 55076 insertions(+), 79124 deletions(-) ----------------------------------------------------------------------