react-native-windows 0.81.1 → 0.82.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.flowconfig +11 -10
- package/Directory.Build.props +3 -3
- package/Folly/Folly.vcxproj +1 -3
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -3
- package/Libraries/Alert/RCTAlertManager.android.js +4 -2
- package/Libraries/Animated/Animated.d.ts +2 -0
- package/Libraries/Animated/AnimatedEvent.js +1 -1
- package/Libraries/Animated/AnimatedExports.js.flow +1 -0
- package/Libraries/Animated/AnimatedImplementation.js +4 -2
- package/Libraries/Animated/AnimatedMock.js +1 -1
- package/Libraries/Animated/Easing.js +2 -0
- package/Libraries/Animated/NativeAnimatedAllowlist.js +1 -0
- package/Libraries/Animated/animations/Animation.js +19 -20
- package/Libraries/Animated/animations/TimingAnimation.js +2 -0
- package/Libraries/Animated/components/AnimatedScrollView.js +3 -2
- package/Libraries/Animated/components/AnimatedSectionList.js +1 -1
- package/Libraries/Animated/nodes/AnimatedColor.js +9 -9
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +4 -4
- package/Libraries/Animated/nodes/AnimatedNode.js +14 -7
- package/Libraries/Animated/nodes/AnimatedObject.js +7 -7
- package/Libraries/Animated/nodes/AnimatedProps.js +32 -32
- package/Libraries/Animated/nodes/AnimatedStyle.js +23 -21
- package/Libraries/Animated/nodes/AnimatedTransform.js +6 -6
- package/Libraries/Animated/nodes/AnimatedValue.js +18 -18
- package/Libraries/AppState/AppState.js +8 -4
- package/Libraries/BatchedBridge/MessageQueue.js +4 -0
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/BlobManager.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +2 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -2
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +2 -2
- package/Libraries/Components/Button.js +1 -1
- package/Libraries/Components/Button.windows.js +1 -1
- package/Libraries/Components/Flyout/FlyoutNativeComponent.js +2 -2
- package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
- package/Libraries/Components/Popup/PopupNativeComponent.js +1 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +8 -0
- package/Libraries/Components/Pressable/Pressable.js +10 -1
- package/Libraries/Components/Pressable/Pressable.windows.js +30 -2
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +2 -2
- package/Libraries/Components/ScrollView/ScrollView.js +13 -4
- package/Libraries/Components/ScrollView/ScrollView.windows.js +14 -5
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
- package/Libraries/Components/StatusBar/StatusBar.js +2 -2
- package/Libraries/Components/Switch/Switch.js +2 -2
- package/Libraries/Components/Switch/Switch.windows.js +2 -2
- package/Libraries/Components/TextInput/TextInput.flow.js +12 -5
- package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -5
- package/Libraries/Components/TextInput/TextInput.js +14 -5
- package/Libraries/Components/TextInput/TextInput.windows.js +23 -11
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
- package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
- package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
- package/Libraries/Components/View/View.js +81 -167
- package/Libraries/Components/View/View.windows.js +202 -302
- package/Libraries/Core/Devtools/loadBundleFromServer.js +1 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +4 -2
- package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
- package/Libraries/Core/ReactNativeVersion.js +37 -10
- package/Libraries/Core/Timers/JSTimers.js +3 -1
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/Timers/queueMicrotask.js +1 -0
- package/Libraries/Core/setUpPerformance.js +2 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +5 -3
- package/Libraries/Image/AssetSourceResolver.windows.js +2 -2
- package/Libraries/Image/Image.android.js +327 -111
- package/Libraries/Image/Image.ios.js +6 -1
- package/Libraries/Image/Image.windows.js +28 -61
- package/Libraries/Image/ImageSourceUtils.js +8 -2
- package/Libraries/Image/resolveAssetSource.js +1 -1
- package/Libraries/Image/resolveAssetSource.windows.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +118 -167
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
- package/Libraries/Lists/FlatList.js +5 -6
- package/Libraries/LogBox/Data/LogBoxData.js +5 -2
- package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -1
- package/Libraries/Modal/Modal.js +3 -3
- package/Libraries/Modal/Modal.windows.js +2 -2
- package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
- package/Libraries/NativeComponent/ViewConfig.js +2 -2
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.windows.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +20 -5
- package/Libraries/Network/convertRequestBody.js +1 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -9
- package/Libraries/Pressability/HoverState.js +2 -0
- package/Libraries/Pressability/Pressability.js +1 -1
- package/Libraries/Pressability/Pressability.windows.js +5 -5
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +4 -2
- package/Libraries/ReactNative/PaperUIManager.windows.js +4 -4
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +3 -3
- package/Libraries/ReactNative/RendererImplementation.js +116 -116
- package/Libraries/ReactNative/UIManager.js +3 -3
- package/Libraries/ReactNative/renderApplication.js +1 -0
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +38 -35
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +51 -22
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +54 -24
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +36 -33
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +5 -5
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5 -5
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
- package/Libraries/Share/Share.js +4 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +2 -0
- package/Libraries/StyleSheet/StyleSheet.d.ts +7 -22
- package/Libraries/StyleSheet/StyleSheetExports.js +2 -8
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +11 -18
- package/Libraries/StyleSheet/flattenStyle.js +2 -2
- package/Libraries/StyleSheet/processAspectRatio.js +2 -0
- package/Libraries/StyleSheet/processFilter.js +5 -5
- package/Libraries/StyleSheet/splitLayoutProps.js +2 -2
- package/Libraries/Text/Text.js +534 -234
- package/Libraries/Text/Text.windows.js +622 -265
- package/Libraries/Text/TextNativeComponent.js +2 -2
- package/Libraries/Utilities/Appearance.d.ts +3 -5
- package/Libraries/Utilities/Appearance.js +5 -17
- package/Libraries/Utilities/HMRClient.js +2 -1
- package/Libraries/Utilities/Platform.android.js +3 -3
- package/Libraries/Utilities/Platform.d.ts +1 -0
- package/Libraries/Utilities/Platform.ios.js +1 -1
- package/Libraries/Utilities/Platform.windows.js +3 -3
- package/Libraries/Utilities/PlatformTypes.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +12 -0
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +1 -1
- package/Libraries/Utilities/codegenNativeComponent.js +1 -1
- package/Libraries/Utilities/createPerformanceLogger.js +32 -0
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
- package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
- package/Libraries/Utilities/useMergeRefs.js +1 -1
- package/Libraries/WebSocket/WebSocketInterceptor.js +2 -0
- package/Libraries/promiseRejectionTrackingOptions.js +17 -31
- package/Libraries/vendor/emitter/EventEmitter.js +1 -1
- package/Microsoft.ReactNative/App.xaml +5 -0
- package/Microsoft.ReactNative/Base/CxxReactIncludes.h +0 -3
- package/Microsoft.ReactNative/CompositionContext.idl +0 -2
- package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +2 -2
- package/Microsoft.ReactNative/Fabric/AbiViewProps.h +0 -2
- package/Microsoft.ReactNative/Fabric/ComponentView.cpp +26 -0
- package/Microsoft.ReactNative/Fabric/ComponentView.h +2 -0
- package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.cpp +0 -1
- package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +0 -69
- package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +1 -15
- package/Microsoft.ReactNative/Fabric/Composition/CompositionAnnotationProvider.cpp +2 -5
- package/Microsoft.ReactNative/Fabric/Composition/CompositionAnnotationProvider.h +1 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -31
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +0 -10
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +65 -32
- package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +9 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +8 -6
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +0 -2
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +0 -2
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +0 -9
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +2 -11
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +0 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.cpp +4 -7
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.h +1 -5
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.cpp +68 -53
- package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.h +1 -5
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +20 -18
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +10 -3
- package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +30 -9
- package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +4 -1
- package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +3 -2
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +0 -2
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +0 -1
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +550 -4
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +52 -0
- package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +16 -0
- package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +6 -0
- package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +0 -6
- package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +0 -2
- package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +53 -2
- package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +8 -1
- package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +0 -2
- package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +0 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +5 -2
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +4 -1
- package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +6 -30
- package/Microsoft.ReactNative/Fabric/Composition/Theme.h +1 -3
- package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +36 -14
- package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +0 -1
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +0 -1
- package/Microsoft.ReactNative/Fabric/ImageManager.cpp +0 -4
- package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +1 -1
- package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +8 -0
- package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +3 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -11
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.h +2 -1
- package/Microsoft.ReactNative/IReactContext.cpp +2 -25
- package/Microsoft.ReactNative/IReactContext.h +0 -7
- package/Microsoft.ReactNative/IReactContext.idl +4 -29
- package/Microsoft.ReactNative/IReactModuleBuilder.cpp +24 -140
- package/Microsoft.ReactNative/IReactModuleBuilder.h +0 -11
- package/Microsoft.ReactNative/IReactPackageBuilder.idl +1 -16
- package/Microsoft.ReactNative/IReactPackageProvider.idl +0 -1
- package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +10 -0
- package/Microsoft.ReactNative/JsiApi.cpp +4 -3
- package/Microsoft.ReactNative/JsiApi.h +2 -3
- package/Microsoft.ReactNative/JsiApi.idl +3 -2
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +6 -214
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +0 -252
- package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +0 -37
- package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -140
- package/Microsoft.ReactNative/Modules/AlertModule.h +0 -2
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +5 -10
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -1
- package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +1 -96
- package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +0 -14
- package/Microsoft.ReactNative/Modules/AppStateModule.cpp +0 -53
- package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -5
- package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +5 -14
- package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.h +0 -2
- package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +1 -9
- package/Microsoft.ReactNative/Modules/DevSettingsModule.cpp +0 -4
- package/Microsoft.ReactNative/Modules/DevSettingsModule.h +0 -2
- package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +16 -90
- package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +3 -8
- package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +11 -48
- package/Microsoft.ReactNative/Modules/LinkingManagerModule.cpp +0 -3
- package/Microsoft.ReactNative/Modules/LogBoxModule.cpp +30 -102
- package/Microsoft.ReactNative/Modules/LogBoxModule.h +0 -7
- package/Microsoft.ReactNative/Modules/Timing.cpp +7 -9
- package/Microsoft.ReactNative/Pch/pch.h +0 -28
- package/Microsoft.ReactNative/ReactCoreInjection.h +0 -1
- package/Microsoft.ReactNative/ReactHost/IReactInstance.h +0 -8
- package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -15
- package/Microsoft.ReactNative/ReactHost/MsoReactContext.h +0 -2
- package/Microsoft.ReactNative/ReactHost/React.h +0 -44
- package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +10 -47
- package/Microsoft.ReactNative/ReactHost/ReactHost.h +1 -1
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +30 -586
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +2 -37
- package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +0 -13
- package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -1
- package/Microsoft.ReactNative/ReactInstanceSettings.cpp +0 -8
- package/Microsoft.ReactNative/ReactInstanceSettings.h +0 -13
- package/Microsoft.ReactNative/ReactInstanceSettings.idl +7 -23
- package/Microsoft.ReactNative/ReactNativeHost.cpp +10 -35
- package/Microsoft.ReactNative/ReactNativeHost.h +0 -1
- package/Microsoft.ReactNative/ReactNativeIsland.idl +0 -4
- package/Microsoft.ReactNative/ReactPackageBuilder.cpp +9 -36
- package/Microsoft.ReactNative/ReactPackageBuilder.h +4 -38
- package/Microsoft.ReactNative/RedBox.cpp +9 -362
- package/Microsoft.ReactNative/Theme.idl +0 -2
- package/Microsoft.ReactNative/Timer.cpp +3 -2
- package/Microsoft.ReactNative/Utils/Helpers.cpp +0 -47
- package/Microsoft.ReactNative/Utils/Helpers.h +0 -5
- package/Microsoft.ReactNative/Utils/IcuUtils.cpp +84 -0
- package/Microsoft.ReactNative/Utils/IcuUtils.h +42 -0
- package/Microsoft.ReactNative/Utils/KeyboardUtils.cpp +0 -11
- package/Microsoft.ReactNative/Utils/ThemeUtils.cpp +0 -4
- package/Microsoft.ReactNative/Utils/ThemeUtils.h +1 -5
- package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -2
- package/Microsoft.ReactNative/Utils/ValueUtils.cpp +0 -245
- package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -23
- package/Microsoft.ReactNative/ViewProps.idl +0 -2
- package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -278
- package/Microsoft.ReactNative/Views/DevMenu.h +0 -5
- package/Microsoft.ReactNative/XamlApplication.cpp +71 -0
- package/Microsoft.ReactNative/XamlApplication.h +47 -0
- package/Microsoft.ReactNative/XamlApplication.idl +19 -0
- package/Microsoft.ReactNative/XamlUIService.cpp +0 -54
- package/Microsoft.ReactNative/XamlUIService.h +0 -12
- package/Microsoft.ReactNative/XamlUIService.idl +0 -12
- package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -19
- package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
- package/Microsoft.ReactNative.Cxx/JSI/decorator.h +191 -114
- package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +5 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +37 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +68 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi.h +77 -11
- package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
- package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -5
- package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +93 -1
- package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.cpp +4 -3
- package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +2 -2
- package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +2 -55
- package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +4 -8
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +5 -0
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/timing/primitives.h +32 -4
- package/Microsoft.ReactNative.Cxx/ReactContext.h +0 -13
- package/Microsoft.ReactNative.Cxx/StructInfo.h +8 -1
- package/Microsoft.ReactNative.Cxx/UI.Composition.Effects.h +0 -4
- package/Microsoft.ReactNative.Cxx/UI.Composition.h +0 -4
- package/Microsoft.ReactNative.Cxx/UI.Input.h +0 -4
- package/Microsoft.ReactNative.Cxx/UI.Popups.h +0 -4
- package/Microsoft.ReactNative.Cxx/UI.Text.h +0 -4
- package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -33
- package/Microsoft.ReactNative.Managed/JSValueReader.cs +0 -4
- package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -3
- package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -5
- package/Microsoft.ReactNative.Managed/ReactContextGenerator.cs +0 -4
- package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +0 -25
- package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +0 -4
- package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -2
- package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +0 -10
- package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +0 -36
- package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.cs +0 -6
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactAssembly.cs +0 -2
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactTypes.cs +0 -2
- package/Microsoft.ReactNative.Managed.CodeGen/ReactNativeNames.cs +0 -2
- package/Mso/src/dispatchQueue/queueService.cpp +3 -1
- package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -10
- package/PropertySheets/Bundle.Common.targets +1 -1
- package/PropertySheets/Bundle.props +3 -4
- package/PropertySheets/External/Microsoft.ReactNative.Common.props +0 -1
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.targets +1 -1
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.targets +1 -1
- package/PropertySheets/Generated/PackageVersion.g.props +4 -4
- package/PropertySheets/JSEngine.props +1 -1
- package/PropertySheets/NuGet.LockFile.props +0 -8
- package/PropertySheets/OutputMSBuildProperties.targets +0 -1
- package/PropertySheets/React.Cpp.props +3 -5
- package/PropertySheets/WinUI.props +3 -3
- package/README.md +1 -5
- package/ReactCommon/ReactCommon.vcxproj +12 -31
- package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +3 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +5 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +20 -4
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +113 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +14 -6
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/Utf8.h +1 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +351 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +42 -36
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +15 -3
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +1 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/image/conversions.h +174 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +26 -3
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +1 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +1 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +189 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +27 -8
- package/ReactCommon/cgmanifest.json +1 -1
- package/Scripts/Microsoft.ReactNative.nuspec +15 -33
- package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +23 -23
- package/Scripts/OfficeReact.Win32.nuspec +0 -3
- package/Scripts/creaternwapp.cmd +1 -1
- package/Shared/DevServerHelper.h +17 -21
- package/Shared/DevSettings.h +1 -25
- package/Shared/DevSupportManager.cpp +0 -50
- package/Shared/DevSupportManager.h +0 -4
- package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +5 -1
- package/Shared/HermesRuntimeHolder.cpp +0 -31
- package/Shared/HermesRuntimeHolder.h +0 -14
- package/Shared/IDevSupportManager.h +0 -6
- package/Shared/InstanceManager.cpp +0 -97
- package/Shared/InstanceManager.h +0 -53
- package/Shared/JSI/ScriptStore.h +1 -1
- package/Shared/Logging.cpp +1 -12
- package/Shared/Modules/CxxModuleUtilities.cpp +0 -9
- package/Shared/Modules/CxxModuleUtilities.h +0 -8
- package/Shared/Networking/OriginPolicyHttpFilter.cpp +9 -1
- package/Shared/OInstance.cpp +144 -424
- package/Shared/OInstance.h +0 -81
- package/Shared/Shared.vcxitems +83 -203
- package/Shared/Shared.vcxitems.filters +8 -67
- package/Shared/Threading/MessageQueueThreadFactory.cpp +0 -6
- package/Shared/Threading/MessageQueueThreadFactory.h +0 -4
- package/Shared/TurboModuleManager.cpp +0 -4
- package/Shared/Utils.cpp +26 -0
- package/Shared/Utils.h +3 -0
- package/codegen/NativeDOMSpec.g.h +41 -35
- package/codegen/NativeIntersectionObserverSpec.g.h +9 -21
- package/codegen/NativePerformanceSpec.g.h +47 -35
- package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +177 -129
- package/codegen/react/components/rnwcore/ActivityIndicatorView.g.h +14 -0
- package/codegen/react/components/rnwcore/AndroidDrawerLayout.g.h +14 -0
- package/codegen/react/components/rnwcore/AndroidHorizontalScrollContentView.g.h +14 -0
- package/codegen/react/components/rnwcore/AndroidProgressBar.g.h +14 -0
- package/codegen/react/components/rnwcore/AndroidSwipeRefreshLayout.g.h +14 -0
- package/codegen/react/components/rnwcore/AndroidSwitch.g.h +14 -0
- package/codegen/react/components/rnwcore/DebuggingOverlay.g.h +14 -0
- package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
- package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
- package/codegen/react/components/rnwcore/InputAccessory.g.h +14 -0
- package/codegen/react/components/rnwcore/ModalHostView.g.h +14 -0
- package/codegen/react/components/rnwcore/Props.cpp +41 -2
- package/codegen/react/components/rnwcore/Props.h +51 -2
- package/codegen/react/components/rnwcore/PullToRefreshView.g.h +14 -0
- package/codegen/react/components/rnwcore/SafeAreaView.g.h +14 -0
- package/codegen/react/components/rnwcore/Switch.g.h +14 -0
- package/codegen/react/components/rnwcore/UnimplementedNativeView.g.h +14 -0
- package/codegen/react/components/rnwcore/VirtualView.g.h +18 -0
- package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +240 -0
- package/codegen/rnwcoreJSI-generated.cpp +106 -51
- package/codegen/rnwcoreJSI.h +148 -67
- package/fmt/cgmanifest.json +1 -1
- package/fmt/fmt.vcxproj +0 -8
- package/index.js +8 -2
- package/index.windows.js +8 -2
- package/jest/local-setup.js +2 -2
- package/jest/mock.js +1 -1
- package/jest/mockComponent.js +9 -9
- package/jest/mockNativeComponent.js +3 -2
- package/jest/mocks/Modal.js +1 -1
- package/jest/mocks/ScrollView.js +1 -1
- package/jest/mocks/ViewNativeComponent.js +1 -1
- package/jest/setup.js +23 -12
- package/just-task.js +14 -0
- package/package.json +31 -32
- package/src/private/animated/NativeAnimatedHelper.js +16 -5
- package/src/private/animated/createAnimatedPropsHook.js +11 -60
- package/src/private/animated/createAnimatedPropsMemoHook.js +8 -54
- package/src/private/components/virtualview/VirtualView.js +43 -12
- package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +6 -0
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +80 -52
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -6
- package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +0 -1
- package/src/private/types/HostInstance.js +4 -1
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +22 -2
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +5 -3
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +16 -13
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +45 -22
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +26 -192
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -12
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -11
- package/src/private/webapis/geometry/DOMRectList.js +2 -2
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +19 -74
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -4
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
- package/src/private/webapis/performance/EventTiming.js +6 -10
- package/src/private/webapis/performance/Performance.js +309 -164
- package/src/private/webapis/performance/PerformanceEntry.js +20 -16
- package/src/private/webapis/performance/PerformanceObserver.js +8 -29
- package/src/private/webapis/performance/UserTiming.js +71 -18
- package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
- package/src/private/webapis/performance/internals/Utilities.js +9 -0
- package/src/private/webapis/performance/specs/NativePerformance.js +21 -23
- package/src/private/webapis/structuredClone/structuredClone.js +10 -10
- package/stubs/double-conversion/README.md +1 -1
- package/template/cpp-lib/proj/MyLib.sln +0 -5
- package/template/cpp-lib/src/pch.h +0 -5
- package/template/cs-lib/proj/MyLib.sln +0 -5
- package/template/metro.config.js +1 -0
- package/templates/cpp-app/metro.config.js +2 -1
- package/templates/cpp-app/windows/MyApp.sln +0 -5
- package/templates/cpp-lib/example/metro.config.js +3 -4
- package/templates/cpp-lib/windows/MyLib.sln +0 -5
- package/Chakra/Chakra.vcxitems +0 -32
- package/Chakra/Chakra.vcxitems.filters +0 -54
- package/Chakra/ChakraHelpers.cpp +0 -468
- package/Chakra/ChakraHelpers.h +0 -146
- package/Chakra/ChakraInstanceArgs.h +0 -52
- package/Chakra/ChakraPlatform.cpp +0 -42
- package/Chakra/ChakraPlatform.h +0 -51
- package/Chakra/ChakraTracing.cpp +0 -275
- package/Chakra/ChakraTracing.h +0 -11
- package/Chakra/ChakraUtils.cpp +0 -190
- package/Chakra/ChakraUtils.h +0 -72
- package/Chakra/ChakraValue.cpp +0 -257
- package/Chakra/ChakraValue.h +0 -308
- package/Chakra/Utf8DebugExtensions.cpp +0 -62
- package/Chakra/Utf8DebugExtensions.h +0 -29
- package/Libraries/Interaction/InteractionManagerStub.js +0 -184
- package/Libraries/Interaction/TaskQueue.js +0 -183
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -31
- package/Microsoft.ReactNative/ABICxxModule.cpp +0 -51
- package/Microsoft.ReactNative/ABICxxModule.h +0 -38
- package/Microsoft.ReactNative/ABIViewManager.cpp +0 -263
- package/Microsoft.ReactNative/ABIViewManager.h +0 -100
- package/Microsoft.ReactNative/Base/CoreUIManagers.cpp +0 -55
- package/Microsoft.ReactNative/DevMenuControl.cpp +0 -14
- package/Microsoft.ReactNative/DevMenuControl.h +0 -20
- package/Microsoft.ReactNative/DevMenuControl.idl +0 -28
- package/Microsoft.ReactNative/DevMenuControl.xaml +0 -139
- package/Microsoft.ReactNative/GlyphViewManager.cpp +0 -167
- package/Microsoft.ReactNative/GlyphViewManager.h +0 -24
- package/Microsoft.ReactNative/INativeUIManager.h +0 -75
- package/Microsoft.ReactNative/IViewManager.idl +0 -120
- package/Microsoft.ReactNative/IViewManagerCore.idl +0 -45
- package/Microsoft.ReactNative/LayoutService.cpp +0 -51
- package/Microsoft.ReactNative/LayoutService.h +0 -32
- package/Microsoft.ReactNative/LayoutService.idl +0 -41
- package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +0 -1187
- package/Microsoft.ReactNative/Modules/NativeUIManager.h +0 -128
- package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +0 -891
- package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +0 -185
- package/Microsoft.ReactNative/NativeModulesProvider.cpp +0 -49
- package/Microsoft.ReactNative/NativeModulesProvider.h +0 -25
- package/Microsoft.ReactNative/ReactApplication.cpp +0 -276
- package/Microsoft.ReactNative/ReactApplication.h +0 -156
- package/Microsoft.ReactNative/ReactApplication.idl +0 -48
- package/Microsoft.ReactNative/ReactHost/ViewManagerProvider.h +0 -19
- package/Microsoft.ReactNative/ReactPointerEventArgs.cpp +0 -55
- package/Microsoft.ReactNative/ReactPointerEventArgs.h +0 -32
- package/Microsoft.ReactNative/ReactPointerEventArgs.idl +0 -79
- package/Microsoft.ReactNative/ReactRootView.cpp +0 -592
- package/Microsoft.ReactNative/ReactRootView.h +0 -127
- package/Microsoft.ReactNative/ReactRootView.idl +0 -40
- package/Microsoft.ReactNative/TestHook.cpp +0 -99
- package/Microsoft.ReactNative/TestHook.h +0 -15
- package/Microsoft.ReactNative/Utils/AccessibilityUtils.cpp +0 -36
- package/Microsoft.ReactNative/Utils/AccessibilityUtils.h +0 -15
- package/Microsoft.ReactNative/Utils/BatchingEventEmitter.cpp +0 -171
- package/Microsoft.ReactNative/Utils/BatchingEventEmitter.h +0 -72
- package/Microsoft.ReactNative/Utils/PropertyHandlerUtils.h +0 -87
- package/Microsoft.ReactNative/Utils/PropertyUtils.h +0 -568
- package/Microsoft.ReactNative/Utils/ResourceBrushUtils.cpp +0 -182
- package/Microsoft.ReactNative/Utils/ResourceBrushUtils.h +0 -58
- package/Microsoft.ReactNative/Utils/ShadowNodeTypeUtils.h +0 -26
- package/Microsoft.ReactNative/Utils/XamlIslandUtils.cpp +0 -93
- package/Microsoft.ReactNative/Utils/XamlIslandUtils.h +0 -48
- package/Microsoft.ReactNative/ViewManagersProvider.cpp +0 -39
- package/Microsoft.ReactNative/ViewManagersProvider.h +0 -27
- package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.cpp +0 -62
- package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.h +0 -29
- package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.cpp +0 -186
- package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.h +0 -11
- package/Microsoft.ReactNative/Views/ControlViewManager.cpp +0 -143
- package/Microsoft.ReactNative/Views/ControlViewManager.h +0 -38
- package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.cpp +0 -53
- package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.h +0 -30
- package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +0 -586
- package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +0 -104
- package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +0 -330
- package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +0 -111
- package/Microsoft.ReactNative/Views/DynamicValueProvider.cpp +0 -59
- package/Microsoft.ReactNative/Views/DynamicValueProvider.h +0 -32
- package/Microsoft.ReactNative/Views/ExpressionAnimationStore.cpp +0 -61
- package/Microsoft.ReactNative/Views/ExpressionAnimationStore.h +0 -26
- package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +0 -559
- package/Microsoft.ReactNative/Views/FlyoutViewManager.h +0 -34
- package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +0 -126
- package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.h +0 -23
- package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +0 -957
- package/Microsoft.ReactNative/Views/FrameworkElementViewManager.h +0 -41
- package/Microsoft.ReactNative/Views/IXamlRootView.h +0 -17
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +0 -245
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +0 -45
- package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +0 -469
- package/Microsoft.ReactNative/Views/Image/ReactImage.h +0 -80
- package/Microsoft.ReactNative/Views/Image/ReactImageBrush.cpp +0 -247
- package/Microsoft.ReactNative/Views/Image/ReactImageBrush.h +0 -67
- package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +0 -261
- package/Microsoft.ReactNative/Views/KeyboardEventHandler.h +0 -132
- package/Microsoft.ReactNative/Views/PaperShadowNode.cpp +0 -18
- package/Microsoft.ReactNative/Views/PaperShadowNode.h +0 -38
- package/Microsoft.ReactNative/Views/PopupViewManager.cpp +0 -349
- package/Microsoft.ReactNative/Views/PopupViewManager.h +0 -36
- package/Microsoft.ReactNative/Views/RawTextViewManager.cpp +0 -69
- package/Microsoft.ReactNative/Views/RawTextViewManager.h +0 -46
- package/Microsoft.ReactNative/Views/ReactViewInstance.cpp +0 -43
- package/Microsoft.ReactNative/Views/ReactViewInstance.h +0 -53
- package/Microsoft.ReactNative/Views/RefreshControlManager.cpp +0 -116
- package/Microsoft.ReactNative/Views/RefreshControlManager.h +0 -28
- package/Microsoft.ReactNative/Views/RootViewManager.cpp +0 -65
- package/Microsoft.ReactNative/Views/RootViewManager.h +0 -36
- package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +0 -117
- package/Microsoft.ReactNative/Views/SIPEventHandler.h +0 -45
- package/Microsoft.ReactNative/Views/ScrollContentViewManager.cpp +0 -16
- package/Microsoft.ReactNative/Views/ScrollContentViewManager.h +0 -19
- package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +0 -540
- package/Microsoft.ReactNative/Views/ScrollViewManager.h +0 -42
- package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +0 -228
- package/Microsoft.ReactNative/Views/ShadowNodeBase.h +0 -169
- package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +0 -68
- package/Microsoft.ReactNative/Views/ShadowNodeRegistry.h +0 -40
- package/Microsoft.ReactNative/Views/SliderViewManager.cpp +0 -97
- package/Microsoft.ReactNative/Views/SliderViewManager.h +0 -32
- package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +0 -227
- package/Microsoft.ReactNative/Views/SwitchViewManager.h +0 -31
- package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.cpp +0 -52
- package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.h +0 -37
- package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.cpp +0 -348
- package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.h +0 -13
- package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.cpp +0 -76
- package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.h +0 -32
- package/Microsoft.ReactNative/Views/Text/TextParentVisitor.cpp +0 -12
- package/Microsoft.ReactNative/Views/Text/TextParentVisitor.h +0 -19
- package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +0 -75
- package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.h +0 -43
- package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.cpp +0 -21
- package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.h +0 -23
- package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +0 -70
- package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.h +0 -34
- package/Microsoft.ReactNative/Views/Text/TextVisitor.cpp +0 -56
- package/Microsoft.ReactNative/Views/Text/TextVisitor.h +0 -34
- package/Microsoft.ReactNative/Views/Text/TextVisitorScope.h +0 -35
- package/Microsoft.ReactNative/Views/Text/TextVisitors.h +0 -47
- package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +0 -1003
- package/Microsoft.ReactNative/Views/TextInputViewManager.h +0 -33
- package/Microsoft.ReactNative/Views/TextViewManager.cpp +0 -414
- package/Microsoft.ReactNative/Views/TextViewManager.h +0 -47
- package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +0 -608
- package/Microsoft.ReactNative/Views/TouchEventHandler.h +0 -116
- package/Microsoft.ReactNative/Views/UnimplementedViewManager.cpp +0 -79
- package/Microsoft.ReactNative/Views/UnimplementedViewManager.h +0 -27
- package/Microsoft.ReactNative/Views/ViewControl.cpp +0 -43
- package/Microsoft.ReactNative/Views/ViewControl.h +0 -32
- package/Microsoft.ReactNative/Views/ViewManager.h +0 -33
- package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +0 -487
- package/Microsoft.ReactNative/Views/ViewManagerBase.h +0 -121
- package/Microsoft.ReactNative/Views/ViewPanel.cpp +0 -164
- package/Microsoft.ReactNative/Views/ViewPanel.h +0 -82
- package/Microsoft.ReactNative/Views/ViewViewManager.cpp +0 -507
- package/Microsoft.ReactNative/Views/ViewViewManager.h +0 -52
- package/Microsoft.ReactNative/Views/VirtualTextViewManager.cpp +0 -143
- package/Microsoft.ReactNative/Views/VirtualTextViewManager.h +0 -57
- package/Microsoft.ReactNative/Views/XamlFeatures.cpp +0 -11
- package/Microsoft.ReactNative/Views/XamlFeatures.h +0 -11
- package/Microsoft.ReactNative/Views/cppwinrt/AccessibilityAction.idl +0 -12
- package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +0 -231
- package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +0 -48
- package/Microsoft.ReactNative/XamlHelper.cpp +0 -78
- package/Microsoft.ReactNative/XamlHelper.h +0 -54
- package/Microsoft.ReactNative/XamlHelper.idl +0 -30
- package/Microsoft.ReactNative/XamlLoadState.cpp +0 -217
- package/Microsoft.ReactNative/XamlLoadState.h +0 -44
- package/Microsoft.ReactNative/XamlView.cpp +0 -59
- package/Microsoft.ReactNative/XamlView.h +0 -58
- package/Microsoft.ReactNative/getLayoutProps.ps1 +0 -5
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.Peers.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.Primitives.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.h +0 -13
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Documents.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.DesktopWindowXamlSource.h +0 -11
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Input.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Markup.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Imaging.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Media3D.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Navigation.h +0 -10
- package/Microsoft.ReactNative.Cxx/UI.Xaml.Shapes.h +0 -10
- package/Microsoft.ReactNative.Managed/AttributedViewManager.cs +0 -527
- package/Microsoft.ReactNative.Managed/ViewManagerAttributes.cs +0 -91
- package/Microsoft.ReactNative.Managed/ViewManagerEvent.cs +0 -13
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +0 -344
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/DynamicEventPayload.cpp +0 -42
- package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/YGEnums.h +0 -146
- package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/algorithm/CalculateLayout.cpp +0 -2435
- package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/enums/ExperimentalFeature.h +0 -40
- package/Shared/BatchingMessageQueueThread.h +0 -20
- package/Shared/ChakraRuntimeHolder.cpp +0 -62
- package/Shared/ChakraRuntimeHolder.h +0 -46
- package/Shared/CreateInstance.h +0 -25
- package/Shared/Executors/WebSocketJSExecutor.cpp +0 -294
- package/Shared/Executors/WebSocketJSExecutor.h +0 -123
- package/Shared/Executors/WebSocketJSExecutorFactory.cpp +0 -25
- package/Shared/Hermes/HermesSamplingProfiler.cpp +0 -114
- package/Shared/Hermes/HermesSamplingProfiler.h +0 -26
- package/Shared/JSI/ChakraApi.cpp +0 -436
- package/Shared/JSI/ChakraApi.h +0 -474
- package/Shared/JSI/ChakraJsiRuntime_edgemode.cpp +0 -100
- package/Shared/JSI/ChakraRuntime.cpp +0 -1132
- package/Shared/JSI/ChakraRuntime.h +0 -512
- package/Shared/JSI/ChakraRuntimeArgs.h +0 -45
- package/Shared/JSI/ChakraRuntimeFactory.h +0 -15
- package/Shared/JSI/JSExecutorFactoryDelegate.h +0 -12
- package/Shared/JSI/JSExecutorFactorySettings.cpp +0 -30
- package/Shared/JSI/JSExecutorFactorySettings.h +0 -21
- package/Shared/NativeModuleProvider.h +0 -40
- package/Shared/SystemChakraRuntime.h +0 -38
- package/Shared/Threading/BatchingQueueThread.cpp +0 -128
- package/Shared/Threading/BatchingQueueThread.h +0 -59
- package/Shared/WebSocketJSExecutorFactory.h +0 -27
- package/fmt/TEMP_UntilFmtUpdate/core.h +0 -2925
- package/template/cpp-app/proj/MyApp.sln +0 -166
- package/template/cpp-app/proj/MyApp.vcxproj +0 -176
- package/template/cpp-app/proj/MyApp.vcxproj.filters +0 -62
- package/template/cpp-app/src/App.cpp +0 -93
- package/template/cpp-app/src/App.h +0 -21
- package/template/cpp-app/src/App.idl +0 -3
- package/template/cpp-app/src/AutolinkedNativeModules.g.cpp +0 -13
- package/template/cpp-app/src/AutolinkedNativeModules.g.h +0 -10
- package/template/cpp-app/src/MainPage.cpp +0 -20
- package/template/cpp-app/src/MainPage.h +0 -19
- package/template/cpp-app/src/MainPage.idl +0 -10
- package/template/cpp-app/src/PropertySheet.props +0 -16
- package/template/cpp-app/src/ReactPackageProvider.cpp +0 -15
- package/template/cpp-app/src/ReactPackageProvider.h +0 -13
- package/template/cpp-app/src/pch.cpp +0 -1
- package/template/cpp-app/src/pch.h +0 -24
- package/template/cs-app/proj/MyApp.csproj +0 -162
- package/template/cs-app/proj/MyApp.sln +0 -191
- package/template/cs-app/src/App.xaml.cs +0 -62
- package/template/cs-app/src/AutolinkedNativeModules.g.cs +0 -13
- package/template/cs-app/src/MainPage.xaml.cs +0 -34
- package/template/cs-app/src/Properties/AssemblyInfo.cs +0 -29
- package/template/cs-app/src/Properties/Default.rd.xml +0 -32
- package/template/cs-app/src/ReactPackageProvider.cs +0 -17
- package/template/shared-app/assets/LockScreenLogo.scale-200.png +0 -0
- package/template/shared-app/assets/SplashScreen.scale-200.png +0 -0
- package/template/shared-app/assets/Square150x150Logo.scale-200.png +0 -0
- package/template/shared-app/assets/Square44x44Logo.scale-200.png +0 -0
- package/template/shared-app/assets/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
- package/template/shared-app/assets/StoreLogo.png +0 -0
- package/template/shared-app/assets/Wide310x150Logo.scale-200.png +0 -0
- package/template/shared-app/proj/ExperimentalFeatures.props +0 -32
- package/template/shared-app/proj/NuGet_Config +0 -19
- package/template/shared-app/src/App.xaml +0 -10
- package/template/shared-app/src/AutolinkedNativeModules.g.props +0 -6
- package/template/shared-app/src/AutolinkedNativeModules.g.targets +0 -6
- package/template/shared-app/src/MainPage.xaml +0 -21
- package/template/shared-app/src/Package.appxmanifest +0 -50
- package/templates/old/uwp-cpp-app/template.config.js +0 -15
- package/templates/old/uwp-cs-app/template.config.js +0 -15
package/Chakra/ChakraValue.cpp
DELETED
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
#include "pch.h"
|
|
5
|
-
|
|
6
|
-
#include <folly/json.h>
|
|
7
|
-
|
|
8
|
-
#include "ChakraHelpers.h"
|
|
9
|
-
#include "ChakraValue.h"
|
|
10
|
-
|
|
11
|
-
// See the comment under Value::fromDynamic()
|
|
12
|
-
#if !defined(__APPLE__) && defined(WITH_FB_JSC_TUNING)
|
|
13
|
-
#define USE_FAST_FOLLY_DYNAMIC_CONVERSION 1
|
|
14
|
-
#else
|
|
15
|
-
#define USE_FAST_FOLLY_DYNAMIC_CONVERSION 0
|
|
16
|
-
#endif
|
|
17
|
-
|
|
18
|
-
namespace facebook {
|
|
19
|
-
namespace react {
|
|
20
|
-
|
|
21
|
-
ChakraValue::ChakraValue(JsValueRef value) : m_value(value) {}
|
|
22
|
-
|
|
23
|
-
ChakraValue::ChakraValue(ChakraValue &&other) noexcept : m_value(other.m_value) {
|
|
24
|
-
other.m_value = nullptr;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
std::string ChakraValue::toJSONString(unsigned indent) const {
|
|
28
|
-
JsValueRef exn;
|
|
29
|
-
auto stringToAdopt = JSValueCreateJSONString(m_value, indent, &exn);
|
|
30
|
-
if (stringToAdopt == nullptr) {
|
|
31
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
32
|
-
throwJSExecutionException("Exception creating JSON string: %s", exceptionText.c_str());
|
|
33
|
-
}
|
|
34
|
-
return ChakraString::ref(stringToAdopt).str();
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/* static */
|
|
38
|
-
ChakraValue ChakraValue::fromJSON(const ChakraString &json) {
|
|
39
|
-
auto result = JSValueMakeFromJSONString(json);
|
|
40
|
-
if (!result) {
|
|
41
|
-
throwJSExecutionException("Failed to create String from JSON: %s", json.str().c_str());
|
|
42
|
-
}
|
|
43
|
-
return ChakraValue(result);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
JsValueRef ChakraValue::fromDynamic(const folly::dynamic &value) {
|
|
47
|
-
// JavaScriptCore's iOS APIs have their own version of this direct conversion.
|
|
48
|
-
// In addition, using this requires exposing some of JSC's private APIs,
|
|
49
|
-
// so it's limited to non-apple platforms and to builds that use the custom
|
|
50
|
-
// JSC.
|
|
51
|
-
// Otherwise, we use the old way of converting through JSON.
|
|
52
|
-
#if USE_FAST_FOLLY_DYNAMIC_CONVERSION
|
|
53
|
-
// Defer GC during the creation of the JSValue, as we don't want
|
|
54
|
-
// intermediate objects to be collected.
|
|
55
|
-
// We could use JSValueProtect(), but it will make the process much slower.
|
|
56
|
-
JSDeferredGCRef deferGC = JSDeferGarbageCollection(ctx);
|
|
57
|
-
// Set a global lock for the whole process,
|
|
58
|
-
// instead of re-acquiring the lock for each operation.
|
|
59
|
-
JSLock(ctx);
|
|
60
|
-
JsValueRef jsVal = Value::fromDynamicInner(ctx, value);
|
|
61
|
-
JSUnlock(ctx);
|
|
62
|
-
JSResumeGarbageCollection(ctx, deferGC);
|
|
63
|
-
return jsVal;
|
|
64
|
-
#else
|
|
65
|
-
auto json = folly::toJson(value);
|
|
66
|
-
return fromJSON(ChakraString(json.c_str()));
|
|
67
|
-
#endif
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
ChakraObject ChakraValue::asObject() {
|
|
71
|
-
JsValueRef exn = nullptr;
|
|
72
|
-
|
|
73
|
-
JsValueRef obj;
|
|
74
|
-
auto result = JsConvertValueToObject(m_value, &obj);
|
|
75
|
-
if (result != JsNoError) {
|
|
76
|
-
bool hasException = false;
|
|
77
|
-
if (JsHasException(&hasException) != JsNoError) {
|
|
78
|
-
assert(false && "JsHasException() failed.");
|
|
79
|
-
std::terminate();
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
if (hasException) {
|
|
83
|
-
JsGetAndClearException(&exn);
|
|
84
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
85
|
-
throwJSExecutionException("Failed to convert to object: %s", exceptionText.c_str());
|
|
86
|
-
} else {
|
|
87
|
-
throwJSExecutionException("JsConvertValueToObject() failed for reason other than script exception.");
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
return ChakraObject(obj);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
ChakraValue ChakraValue::makeError(const char *error) {
|
|
95
|
-
JsValueRef message = ChakraValue(ChakraString(error));
|
|
96
|
-
|
|
97
|
-
JsValueRef value;
|
|
98
|
-
if (JsNoError != JsCreateError(message, &value)) {
|
|
99
|
-
assert(false && "JsCreateError() failed");
|
|
100
|
-
std::terminate();
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
return ChakraValue(value);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
ChakraValue ChakraObject::callAsFunction(std::initializer_list<JsValueRef> args) const {
|
|
107
|
-
// OFFICEDEV
|
|
108
|
-
// explicitly pass global object instead of nullptr for Chakra
|
|
109
|
-
assert(args.size() < INT_MAX);
|
|
110
|
-
return callAsFunction(ChakraObject::getGlobalObject(), static_cast<int>(args.size()), args.begin());
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
ChakraValue ChakraObject::callAsFunction(const ChakraObject &thisObj, std::initializer_list<JsValueRef> args) const {
|
|
114
|
-
assert(args.size() < INT_MAX);
|
|
115
|
-
return callAsFunction((JsValueRef)thisObj, static_cast<int>(args.size()), args.begin());
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
ChakraValue ChakraObject::callAsFunction(int nArgs, const JsValueRef args[]) const {
|
|
119
|
-
return callAsFunction(nullptr, nArgs, args);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
ChakraValue ChakraObject::callAsFunction(const ChakraObject &thisObj, int nArgs, const JsValueRef args[]) const {
|
|
123
|
-
return callAsFunction(static_cast<JsValueRef>(thisObj), nArgs, args);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
ChakraValue ChakraObject::callAsFunction(JsValueRef thisObj, int nArgs, const JsValueRef args[]) const {
|
|
127
|
-
JsValueRef exn = nullptr;
|
|
128
|
-
|
|
129
|
-
auto argsWithThis = new JsValueRef[nArgs + 1];
|
|
130
|
-
|
|
131
|
-
argsWithThis[0] = thisObj;
|
|
132
|
-
for (int i = 0; i < nArgs; i++)
|
|
133
|
-
argsWithThis[i + 1] = args[i];
|
|
134
|
-
|
|
135
|
-
JsValueRef value;
|
|
136
|
-
auto result =
|
|
137
|
-
JsCallFunction(m_obj, const_cast<JsValueRef *>(argsWithThis), static_cast<unsigned short>(nArgs + 1), &value);
|
|
138
|
-
delete[] argsWithThis;
|
|
139
|
-
if (result != JsNoError) {
|
|
140
|
-
bool hasException = false;
|
|
141
|
-
if (JsHasException(&hasException) != JsNoError) {
|
|
142
|
-
assert(false && "JsHasException() failed.");
|
|
143
|
-
std::terminate();
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
if (hasException) {
|
|
147
|
-
JsGetAndClearException(&exn);
|
|
148
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
149
|
-
throwJSExecutionException("Exception calling object as function: %s", exceptionText.c_str());
|
|
150
|
-
} else {
|
|
151
|
-
throwJSExecutionException("JsCallFunction() failed for reason other than script exception.");
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
return ChakraValue(value);
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
ChakraObject ChakraObject::callAsConstructor(std::initializer_list<JsValueRef> args) const {
|
|
159
|
-
JsValueRef exn = nullptr;
|
|
160
|
-
|
|
161
|
-
JsValueRef value;
|
|
162
|
-
auto result = JsConstructObject(
|
|
163
|
-
m_obj, const_cast<JsValueRef *>(args.begin()), static_cast<unsigned short>(args.size()), &value);
|
|
164
|
-
|
|
165
|
-
if (result != JsNoError) {
|
|
166
|
-
bool hasException = false;
|
|
167
|
-
if (JsHasException(&hasException) != JsNoError) {
|
|
168
|
-
assert(false && "JsHasException() failed.");
|
|
169
|
-
std::terminate();
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
if (hasException) {
|
|
173
|
-
JsGetAndClearException(&exn);
|
|
174
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
175
|
-
throwJSExecutionException("Exception calling object as constructor: %s", exceptionText.c_str());
|
|
176
|
-
} else {
|
|
177
|
-
throwJSExecutionException("JsConstructObject() failed for reason other than script exception.");
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
return ChakraObject(value);
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
ChakraValue ChakraObject::getProperty(const ChakraString &propName) const {
|
|
185
|
-
JsValueRef exn;
|
|
186
|
-
JsValueRef property = JSObjectGetProperty(m_obj, propName, &exn);
|
|
187
|
-
if (!property) {
|
|
188
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
189
|
-
throwJSExecutionException("Failed to get property: %s", exceptionText.c_str());
|
|
190
|
-
}
|
|
191
|
-
return ChakraValue(property);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
ChakraValue ChakraObject::getPropertyAtIndex(unsigned index) const {
|
|
195
|
-
JsValueRef exn;
|
|
196
|
-
JsValueRef property = JSObjectGetPropertyAtIndex(m_obj, index, &exn);
|
|
197
|
-
if (!property) {
|
|
198
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
199
|
-
throwJSExecutionException("Failed to get property at index %u: %s", index, exceptionText.c_str());
|
|
200
|
-
}
|
|
201
|
-
return ChakraValue(property);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
ChakraValue ChakraObject::getProperty(const char *propName) const {
|
|
205
|
-
return getProperty(ChakraString(propName));
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
void ChakraObject::setProperty(const ChakraString &propName, const ChakraValue &value) const {
|
|
209
|
-
JsValueRef exn = NULL;
|
|
210
|
-
JSObjectSetProperty(m_obj, propName, value, JSPropertyAttributes::kJSPropertyAttributeNone, &exn);
|
|
211
|
-
if (exn) {
|
|
212
|
-
std::string exceptionText = ChakraValue(exn).toString().str();
|
|
213
|
-
throwJSExecutionException("Failed to set property: %s", exceptionText.c_str());
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
void ChakraObject::setProperty(const char *propName, const ChakraValue &value) const {
|
|
218
|
-
setProperty(ChakraString(propName), value);
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
std::vector<ChakraString> ChakraObject::getPropertyNames() const {
|
|
222
|
-
auto namesRef = JSObjectCopyPropertyNames(m_obj);
|
|
223
|
-
auto count = JSPropertyNameArrayGetCount(namesRef);
|
|
224
|
-
std::vector<ChakraString> names;
|
|
225
|
-
names.reserve(count);
|
|
226
|
-
for (decltype(count) i = 0; i < count; i++) {
|
|
227
|
-
names.emplace_back(ChakraString::ref(JSPropertyNameArrayGetNameAtIndex(namesRef, i)));
|
|
228
|
-
}
|
|
229
|
-
// PropertyNameArrayRelease(namesRef);
|
|
230
|
-
return names;
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
std::unordered_map<std::string, std::string> ChakraObject::toJSONMap() const {
|
|
234
|
-
std::unordered_map<std::string, std::string> map;
|
|
235
|
-
auto namesRef = JSObjectCopyPropertyNames(m_obj);
|
|
236
|
-
auto count = JSPropertyNameArrayGetCount(namesRef);
|
|
237
|
-
for (decltype(count) i = 0; i < count; i++) {
|
|
238
|
-
auto key = ChakraString::ref(JSPropertyNameArrayGetNameAtIndex(namesRef, i));
|
|
239
|
-
map.emplace(key.str(), getProperty(key).toJSONString());
|
|
240
|
-
}
|
|
241
|
-
// PropertyNameArrayRelease(namesRef);
|
|
242
|
-
return map;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
/* static */
|
|
246
|
-
ChakraObject ChakraObject::create() {
|
|
247
|
-
JsValueRef value;
|
|
248
|
-
if (JsCreateObject(&value) == JsNoError) {
|
|
249
|
-
return ChakraObject(value);
|
|
250
|
-
} else {
|
|
251
|
-
assert(false && "JsCreateObject() failed.");
|
|
252
|
-
std::terminate();
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
} // namespace react
|
|
257
|
-
} // namespace facebook
|
package/Chakra/ChakraValue.h
DELETED
|
@@ -1,308 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
#pragma once
|
|
5
|
-
|
|
6
|
-
#include <memory>
|
|
7
|
-
#include <sstream>
|
|
8
|
-
#include <unordered_map>
|
|
9
|
-
#include <vector>
|
|
10
|
-
|
|
11
|
-
#include <folly/dynamic.h>
|
|
12
|
-
|
|
13
|
-
#include <jsrt.h>
|
|
14
|
-
|
|
15
|
-
#include "Utf8DebugExtensions.h"
|
|
16
|
-
|
|
17
|
-
namespace facebook {
|
|
18
|
-
namespace react {
|
|
19
|
-
|
|
20
|
-
class ChakraValue;
|
|
21
|
-
class ChakraObject;
|
|
22
|
-
|
|
23
|
-
enum class JSPropertyAttributes { kJSPropertyAttributeNone };
|
|
24
|
-
|
|
25
|
-
class ChakraString {
|
|
26
|
-
public:
|
|
27
|
-
ChakraString &operator=(const ChakraString &) = delete;
|
|
28
|
-
ChakraString() = default;
|
|
29
|
-
|
|
30
|
-
explicit ChakraString(const char *utf8) {
|
|
31
|
-
JsValueRef value = nullptr;
|
|
32
|
-
// TODO verify return success
|
|
33
|
-
if (JsNoError == JsPointerToStringUtf8(utf8, strlen(utf8), &value))
|
|
34
|
-
JsAddRef(value, nullptr);
|
|
35
|
-
m_string = value;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
ChakraString(ChakraString &&other) noexcept : m_string(other.m_string) {
|
|
39
|
-
other.m_string = nullptr;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
ChakraString(const ChakraString &other) : m_string(other.m_string) {
|
|
43
|
-
if (m_string) {
|
|
44
|
-
JsAddRef(m_string, nullptr);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
~ChakraString() {
|
|
49
|
-
if (m_string) {
|
|
50
|
-
JsRelease(m_string, nullptr);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
operator JsValueRef() const {
|
|
55
|
-
return m_string;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// Length in characters
|
|
59
|
-
size_t length() const {
|
|
60
|
-
int length;
|
|
61
|
-
JsGetStringLength(m_string, &length);
|
|
62
|
-
return length;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/*
|
|
66
|
-
* JavaScriptCore is built with strict utf16 -> utf8 conversion.
|
|
67
|
-
* This means if JSC's built-in conversion function encounters a JavaScript
|
|
68
|
-
* string which contains half of a 32-bit UTF-16 symbol, it produces an error
|
|
69
|
-
* rather than returning a string.
|
|
70
|
-
*
|
|
71
|
-
* Instead of relying on this, we use our own utf16 -> utf8 conversion
|
|
72
|
-
* function which is more lenient and always returns a string. When an invalid
|
|
73
|
-
* UTF-16 string is provided, it'll likely manifest as a rendering glitch in
|
|
74
|
-
* the app for the invalid symbol.
|
|
75
|
-
*
|
|
76
|
-
* For details on JavaScript's unicode support see:
|
|
77
|
-
* https://mathiasbynens.be/notes/javascript-unicode
|
|
78
|
-
*/
|
|
79
|
-
std::string str() const {
|
|
80
|
-
std::string str;
|
|
81
|
-
/*auto result = */ JsStringToStdStringUtf8(m_string, str);
|
|
82
|
-
return str;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
// Assumes that utf8 is null terminated
|
|
86
|
-
bool equals(const char *utf8) {
|
|
87
|
-
std::string str;
|
|
88
|
-
|
|
89
|
-
/*auto result = */ JsStringToStdStringUtf8(m_string, str);
|
|
90
|
-
return str.compare(utf8) == 0;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// This assumes ascii is nul-terminated.
|
|
94
|
-
static ChakraString createExpectingAscii(const char *ascii, size_t /*len*/) {
|
|
95
|
-
return ChakraString(ascii);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
static ChakraString createExpectingAscii(std::string const &ascii) {
|
|
99
|
-
return createExpectingAscii(ascii.c_str(), ascii.size());
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
static ChakraString ref(JsValueRef string) {
|
|
103
|
-
return ChakraString(string, false);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
static ChakraString adopt(JsValueRef string) {
|
|
107
|
-
return ChakraString(string, true);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
private:
|
|
111
|
-
explicit ChakraString(JsValueRef string, bool adopt) : m_string(string) {
|
|
112
|
-
if (!adopt && string) {
|
|
113
|
-
JsAddRef(string, nullptr);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
JsValueRef m_string;
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
class ChakraObject {
|
|
121
|
-
public:
|
|
122
|
-
ChakraObject(const ChakraObject &) = delete;
|
|
123
|
-
ChakraObject &operator=(const ChakraObject &) = delete;
|
|
124
|
-
ChakraObject() = default;
|
|
125
|
-
|
|
126
|
-
ChakraObject(JsValueRef obj) : m_obj(obj) {
|
|
127
|
-
// TODO :: VEC is value is not object.
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
ChakraObject(ChakraObject &&other) noexcept : m_obj(other.m_obj), m_isProtected(other.m_isProtected) {
|
|
131
|
-
other.m_obj = nullptr;
|
|
132
|
-
other.m_isProtected = false;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
~ChakraObject() {
|
|
136
|
-
if (m_isProtected && m_obj) {
|
|
137
|
-
JsRelease(m_obj, nullptr);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
ChakraObject &operator=(ChakraObject &&other) noexcept {
|
|
142
|
-
std::swap(m_obj, other.m_obj);
|
|
143
|
-
std::swap(m_isProtected, other.m_isProtected);
|
|
144
|
-
return *this;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
operator JsValueRef() const {
|
|
148
|
-
return m_obj;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
bool isFunction() const {
|
|
152
|
-
JsValueType type;
|
|
153
|
-
JsGetValueType(m_obj, &type);
|
|
154
|
-
return type == JsFunction;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
ChakraValue callAsFunction(std::initializer_list<JsValueRef> args) const;
|
|
158
|
-
ChakraValue callAsFunction(const ChakraObject &thisObj, std::initializer_list<JsValueRef> args) const;
|
|
159
|
-
ChakraValue callAsFunction(int nArgs, const JsValueRef args[]) const;
|
|
160
|
-
ChakraValue callAsFunction(const ChakraObject &thisObj, int nArgs, const JsValueRef args[]) const;
|
|
161
|
-
|
|
162
|
-
ChakraObject callAsConstructor(std::initializer_list<JsValueRef> args) const;
|
|
163
|
-
|
|
164
|
-
ChakraValue getProperty(const ChakraString &propName) const;
|
|
165
|
-
ChakraValue getProperty(const char *propName) const;
|
|
166
|
-
ChakraValue getPropertyAtIndex(unsigned index) const;
|
|
167
|
-
void setProperty(const ChakraString &propName, const ChakraValue &value) const;
|
|
168
|
-
void setProperty(const char *propName, const ChakraValue &value) const;
|
|
169
|
-
std::unordered_map<std::string, std::string> toJSONMap() const;
|
|
170
|
-
|
|
171
|
-
std::vector<ChakraString> getPropertyNames() const;
|
|
172
|
-
|
|
173
|
-
void makeProtected() {
|
|
174
|
-
if (!m_isProtected && m_obj) {
|
|
175
|
-
JsAddRef(m_obj, nullptr);
|
|
176
|
-
m_isProtected = true;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
static ChakraObject getGlobalObject() {
|
|
181
|
-
JsValueRef value = nullptr;
|
|
182
|
-
JsGetGlobalObject(&value);
|
|
183
|
-
return ChakraObject(value);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* Creates an instance of the default object class.
|
|
188
|
-
*/
|
|
189
|
-
static ChakraObject create();
|
|
190
|
-
|
|
191
|
-
private:
|
|
192
|
-
JsValueRef m_obj;
|
|
193
|
-
bool m_isProtected = false;
|
|
194
|
-
|
|
195
|
-
ChakraValue callAsFunction(JsValueRef thisObj, int nArgs, const JsValueRef args[]) const;
|
|
196
|
-
};
|
|
197
|
-
|
|
198
|
-
class ChakraValue {
|
|
199
|
-
public:
|
|
200
|
-
ChakraValue(const ChakraValue &) = delete;
|
|
201
|
-
ChakraValue &operator=(const ChakraValue &) = delete;
|
|
202
|
-
ChakraValue() = default;
|
|
203
|
-
ChakraValue(JsValueRef value);
|
|
204
|
-
ChakraValue(ChakraValue &&) noexcept;
|
|
205
|
-
|
|
206
|
-
operator JsValueRef() const {
|
|
207
|
-
return m_value;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
JsValueType getType() const {
|
|
211
|
-
JsValueType type;
|
|
212
|
-
JsGetValueType(m_value, &type);
|
|
213
|
-
return type;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
bool isBoolean() const {
|
|
217
|
-
return getType() == JsBoolean;
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
bool asBoolean() const {
|
|
221
|
-
bool value;
|
|
222
|
-
JsBooleanToBool(m_value, &value);
|
|
223
|
-
return value;
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
bool isNumber() const {
|
|
227
|
-
return getType() == JsNumber;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
bool isNull() const {
|
|
231
|
-
return getType() == JsNull;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
bool isUndefined() const {
|
|
235
|
-
return getType() == JsUndefined;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
double asNumber() const {
|
|
239
|
-
if (isNumber()) {
|
|
240
|
-
double value;
|
|
241
|
-
auto result = JsNumberToDouble(m_value, &value);
|
|
242
|
-
if (result == JsErrorScriptException) {
|
|
243
|
-
assert(false && "JsNumberToDouble() failed.");
|
|
244
|
-
std::terminate();
|
|
245
|
-
}
|
|
246
|
-
return value;
|
|
247
|
-
} else {
|
|
248
|
-
return 0.0f;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
int32_t asInteger() const {
|
|
253
|
-
return static_cast<int32_t>(asNumber());
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
uint32_t asUnsignedInteger() const {
|
|
257
|
-
return static_cast<uint32_t>(asNumber());
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
bool isObject() const {
|
|
261
|
-
return getType() == JsObject;
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
ChakraObject asObject();
|
|
265
|
-
|
|
266
|
-
bool isString() const {
|
|
267
|
-
return getType() == JsString;
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
ChakraString toString() noexcept {
|
|
271
|
-
JsValueRef value;
|
|
272
|
-
auto result = JsConvertValueToString(m_value, &value);
|
|
273
|
-
if (JsNoError == result) {
|
|
274
|
-
JsAddRef(value, nullptr); // TODO is this the right lifetime semantics?
|
|
275
|
-
} else if (result == JsErrorScriptException) {
|
|
276
|
-
assert(false && "JsConvertValueToString() failed().");
|
|
277
|
-
std::terminate();
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
return ChakraString::adopt(value);
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
static ChakraValue makeError(const char *error);
|
|
284
|
-
|
|
285
|
-
static ChakraValue makeNumber(double dbl) {
|
|
286
|
-
JsValueRef value;
|
|
287
|
-
JsDoubleToNumber(dbl, &value);
|
|
288
|
-
return value;
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
static ChakraValue makeUndefined() {
|
|
292
|
-
JsValueRef value;
|
|
293
|
-
JsGetUndefinedValue(&value);
|
|
294
|
-
return value;
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
std::string toJSONString(unsigned indent = 0) const;
|
|
298
|
-
static ChakraValue fromJSON(const ChakraString &json);
|
|
299
|
-
static JsValueRef fromDynamic(const folly::dynamic &value);
|
|
300
|
-
|
|
301
|
-
protected:
|
|
302
|
-
JsValueRef m_value;
|
|
303
|
-
// static JsValueRef fromDynamicInner(JsContextRef ctx, const folly::dynamic&
|
|
304
|
-
// obj);
|
|
305
|
-
};
|
|
306
|
-
|
|
307
|
-
} // namespace react
|
|
308
|
-
} // namespace facebook
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
#include "pch.h"
|
|
5
|
-
|
|
6
|
-
#include "Unicode.h"
|
|
7
|
-
#include "Utf8DebugExtensions.h"
|
|
8
|
-
|
|
9
|
-
#include <malloc.h>
|
|
10
|
-
#include <stdlib.h>
|
|
11
|
-
#include <cassert>
|
|
12
|
-
#include <memory>
|
|
13
|
-
|
|
14
|
-
namespace facebook {
|
|
15
|
-
namespace react {
|
|
16
|
-
|
|
17
|
-
JsErrorCode JsGetPropertyIdFromNameUtf8(_In_z_ const char *name, _Out_ JsPropertyIdRef *propertyId) {
|
|
18
|
-
if (name == nullptr) {
|
|
19
|
-
return JsErrorNullArgument;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
size_t convertedChars = 0;
|
|
23
|
-
size_t stringLength = strlen(name);
|
|
24
|
-
std::unique_ptr<wchar_t[]> wname(new wchar_t[stringLength + 1]);
|
|
25
|
-
mbstowcs_s(&convertedChars, wname.get(), stringLength + 1, name, stringLength);
|
|
26
|
-
|
|
27
|
-
if (!wname.get()) {
|
|
28
|
-
return JsErrorOutOfMemory;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return JsGetPropertyIdFromName(wname.get(), propertyId);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
JsErrorCode JsPointerToStringUtf8(
|
|
35
|
-
_In_reads_(stringLength) const char *stringValue,
|
|
36
|
-
_In_ size_t stringLength,
|
|
37
|
-
_Out_ JsValueRef *string) noexcept {
|
|
38
|
-
if (stringValue == nullptr) {
|
|
39
|
-
return JsErrorNullArgument;
|
|
40
|
-
}
|
|
41
|
-
// JsCreateString is not supported in universal chakra engine
|
|
42
|
-
// So we convert the utf8 string to utf16 first and call JsPointerToString to
|
|
43
|
-
// convert the string to JsValueRef
|
|
44
|
-
std::wstring wstr = Microsoft::Common::Unicode::Utf8ToUtf16(stringValue, stringLength);
|
|
45
|
-
return JsPointerToString(wstr.c_str(), wstr.size(), string);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
JsErrorCode JsStringToStdStringUtf8(_In_ JsValueRef stringValue, std::string &string) {
|
|
49
|
-
const wchar_t *wstr;
|
|
50
|
-
size_t wstrLen;
|
|
51
|
-
JsErrorCode err = JsStringToPointer(stringValue, &wstr, &wstrLen);
|
|
52
|
-
|
|
53
|
-
if (err == JsNoError)
|
|
54
|
-
string = Microsoft::Common::Unicode::Utf16ToUtf8(wstr, wstrLen);
|
|
55
|
-
else
|
|
56
|
-
string.clear();
|
|
57
|
-
|
|
58
|
-
return err;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
} // namespace react
|
|
62
|
-
} // namespace facebook
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation.
|
|
2
|
-
// Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
#pragma once
|
|
5
|
-
|
|
6
|
-
#include <jsrt.h>
|
|
7
|
-
#include <string>
|
|
8
|
-
#if _HAS_CXX17
|
|
9
|
-
#include <string_view>
|
|
10
|
-
#endif
|
|
11
|
-
|
|
12
|
-
// unit test classes for testing static private function
|
|
13
|
-
class StringConversionTest_Desktop;
|
|
14
|
-
class StringConversionTest_Universal;
|
|
15
|
-
|
|
16
|
-
namespace facebook {
|
|
17
|
-
namespace react {
|
|
18
|
-
|
|
19
|
-
JsErrorCode JsGetPropertyIdFromNameUtf8(_In_z_ const char *name, _Out_ JsPropertyIdRef *propertyId);
|
|
20
|
-
|
|
21
|
-
JsErrorCode JsPointerToStringUtf8(
|
|
22
|
-
_In_reads_(stringLength) const char *stringValue,
|
|
23
|
-
_In_ size_t stringLength,
|
|
24
|
-
_Out_ JsValueRef *string) noexcept;
|
|
25
|
-
|
|
26
|
-
JsErrorCode JsStringToStdStringUtf8(_In_ JsValueRef stringValue, std::string &string);
|
|
27
|
-
|
|
28
|
-
} // namespace react
|
|
29
|
-
} // namespace facebook
|