Commit Graph
23776 Commits
Author SHA1 Message Date
Sota OgoandFacebook GitHub Bot 1cd8f05ee8 Refactor app template setup util functions
Summary:
Changelog: [internal] Refactor RCTAppSetupUtils to c functions.

Since RCTAppSetupUtils doesn't retain any states, we don't need it to be a class.

Reviewed By: philIip

Differential Revision: D33084352

fbshipit-source-id: 1372a2737eafffa46ee6e5164a970dd12699c71c
2021-12-15 18:14:36 -08:00
Sota OgoandFacebook GitHub Bot c0c5439959 Rename the new architecture flag to RCT_NEW_ARCH_ENABLED
Summary: Changelog: [internal] Changed teh new architecture flag in the new app template to RCT_NEW_ARCH_ENABLED

Reviewed By: philIip

Differential Revision: D33083694

fbshipit-source-id: f2cc6c564c724b4ebed7b465a533464b6717ac27
2021-12-15 18:14:36 -08:00
Sota OgoandFacebook GitHub Bot 2e9a376c84 Add fabric option to the default app template.
Summary:
Changelog: [internal] Added fabric option to the default app template.

Use RCT_TM_FABRIC_ENABLED C++ flag to enable fabric.

Reviewed By: sammy-SC

Differential Revision: D33052956

fbshipit-source-id: 28313829c80abcf02baa521bdb0b70213c94a97f
2021-12-15 18:14:35 -08:00
Sota OgoandFacebook GitHub Bot 8ec0e6919c Add turbo module support in the default app template (#32752)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32752

Changelog: [internal] Add an optional support for Turbomodule. Define RCT_TM_FABRIC_ENABLED to enable the new architecture.

Reviewed By: philIip

Differential Revision: D33052777

fbshipit-source-id: 6d32790586bb51f9c9244344522c95245c912114
2021-12-15 18:14:35 -08:00
Sota OgoandFacebook GitHub Bot 82b8f407c9 Revert the change to add babel-plugin-codegen
Summary: Changelog: [internal] removed babel-plugin-codegen from the dependency. The dependency will exist in the app template.

Reviewed By: lunaleaps

Differential Revision: D33138950

fbshipit-source-id: f71fa4ca55d13715ccd1ade1424bc3cddbb10d1a
2021-12-15 16:53:01 -08:00
Sota OgoandFacebook GitHub Bot 9827b4adcf Refactor script_phases script out of react_native_pods.rb (#32764)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32764

Changelog: [Internal] This diff refactors react_native_pods.rb so that it's a bit more readable/maintainable.

With the intorduction of the codegen discovery script, we have two script phases that shares some code. I've factored it out of the main file and wrote a snapshot test so that it's easier to see the output script file.

Reviewed By: cortinico

Differential Revision: D33045541

fbshipit-source-id: 9c80b5d7e11862cc44275e36882487a7d63e8125
2021-12-15 16:23:29 -08:00
Charles DudleyandFacebook GitHub Bot 3a01dc41e6 Flow parser cleanup
Summary:
This diff stack enables codegen to parse TypeScript spec files and generate an identical schema to our current Flow parser.

This first diff is a small cleanup of our current flow parser.

Changelog:
[General][Fixed] - Fix typo in error string and improve consistency in Codegen's flow parser tests

Reviewed By: sota000

Differential Revision: D33080423

fbshipit-source-id: 7bf817761a7704d807a0b809c9f2270354b5c6fa
2021-12-15 15:59:38 -08:00
Luna WeiandFacebook GitHub Bot b5ba4ac77b Update shelljs to 0.8.4
Summary:
Changelog: [Internal] - shelljs < 0.8.4 triggers warnings for node 14 and above.

See https://github.com/nodejs/node/issues/32987#issuecomment-635726114

Reviewed By: ShikaSD

Differential Revision: D33121070

fbshipit-source-id: 04d5e2c4295186fbad542bbc6085e491fc0d9d21
2021-12-15 15:18:20 -08:00
Adam CmielandFacebook GitHub Bot b1ecac9d14 replace __nullable with _Nullable
Summary:
Modernize our null annotations
From the swift blog:
This feature was first released in Xcode 6.3 with the keywords nullable and nonnull. Due to potential conflicts with third-party libraries, we’ve changed them in Xcode 7 to the _Nullable and _Nonnull you see here.
drop-conflicts

Reviewed By: cuva

Differential Revision: D33121042

fbshipit-source-id: 821f5ec858d9afd5bfb1d6081c669f4ca18a36ed
2021-12-15 15:13:43 -08:00
Andrei ShikovandFacebook GitHub Bot acda0fec48 Use the same lock for fields cleared on Fabric native binding uninstall
Summary:
Scheduler and JavaUIManager mutexes share the lifetime (between install-uninstall), so we can use singular shared lock to ensure that both sections are locked exclusively for install/uninstall and in shared mode for access.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D33130686

fbshipit-source-id: bf283fd5410e386d2635645e17680a9f4cb7f288
2021-12-15 15:02:22 -08:00
Julio C. RochaandFacebook GitHub Bot 1d45b20b6c Set CxxModule instance before retrieving Method vector (#32719)
Summary:
Allows `CxxModule` objects to set their `instance_` member before `getMethods()` is invoked, allowing for the `Method` callbacks to capture a weak reference to `getInstance()` if needed.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[General] [Fixed] - Set CxxModules' Instance before retrieving their Method vector.

Pull Request resolved: https://github.com/facebook/react-native/pull/32719

Test Plan: Ensure this statement swap does not break any scenarios with existing CI validation.

Reviewed By: JoshuaGross

Differential Revision: D32955616

Pulled By: genkikondo

fbshipit-source-id: fd7a23ca2c12c01882ff1600f5aef86b1fe4a984
2021-12-15 14:37:37 -08:00
Marshall Mann-WoodandFacebook GitHub Bot 89faf0c9a8 Added saftey for ensuring callback is called
Summary:
Adds a return value to `MessageQueueThread#runOnQueue`, it's implementors and one caller.

It is currently possible for a callback to not be called (because the HandlerThread has been shutdown). If the callback is mission-critical (frees resources, releases a lock, etc) the callee has no indication that it needs to do something.

This surfaces that information to the callee.

Changelog:
[Android][Changed] - Made `MessageQueueThread#runOnQueue` return a boolean. Made `MessageQueueThreadImpl#runOnQueue` return false when the runnable is not submitted.

Reviewed By: RSNara

Differential Revision: D33075516

fbshipit-source-id: bd214a39ae066c0e7d413f2eaaaa05bd072ead2a
2021-12-15 13:35:33 -08:00
Andrei ShikovandFacebook GitHub Bot 19174a5ec5 Touch emitter tests (#32768)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32768

Adds tests for Fabric event tranformations into payload. For now, it tests the new event processing exclusively for sanity checks, but running code removed in D32953664 (https://github.com/facebook/react-native/commit/3b6d8af2908985c5be6200319d82c5594c22d889) produces the same results.

Changelog: [Internal]

Reviewed By: mdvacca, sshic

Differential Revision: D33070156

fbshipit-source-id: 86af725373c20d74e17a63773c4c3c9138e1e20e
2021-12-15 12:54:22 -08:00
Janic DuplessisandFacebook GitHub Bot f16cbe59ef Add missing scripts/packager-reporter.js file in npm published files (#32763)
Summary:
When using the nightly builds, metro fails with an error because of missing scripts/packager-reporter.js. The file is not included in the published files so this is why.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[Internal] [Fixed] - Add missing scripts/packager-reporter.js file in npm published files

Pull Request resolved: https://github.com/facebook/react-native/pull/32763

Test Plan: Test that nightly builds work when adding the missing file.

Reviewed By: motiz88

Differential Revision: D33128315

Pulled By: ShikaSD

fbshipit-source-id: 617d124205edf63dbca8da50336ca895f5ce866a
2021-12-15 11:43:02 -08:00
Samuel SuslaandFacebook GitHub Bot d902a89b40 Move surface registry code out of UIManagerBinding
Summary:
changelog: [internal]

Just moving code that doesn't belong to UIManagerBinding out of the class.

Reviewed By: philIip

Differential Revision: D33060412

fbshipit-source-id: 2d54929072cef14fd1fa6b70bde382ae21ecff45
2021-12-15 10:52:15 -08:00
Samuel SuslaandFacebook GitHub Bot 34c4fdb8e2 Remove implicity type conversions from LayoutAnimations
Summary: changelog: [internal]

Reviewed By: philIip

Differential Revision: D33058920

fbshipit-source-id: 6d39e26c369dad409f5141dceae7554fe65daaba
2021-12-15 07:19:51 -08:00
Sota OgoandFacebook GitHub Bot 1f350a72f7 react_native_pods.rb Add snapshot tests for script_phases scripts
Summary: Changelog: [internal] Adding snapshots for script_phases. These snapshots are taken from working scripts.

Reviewed By: cortinico

Differential Revision: D33045627

fbshipit-source-id: fbc1e005954cd185fb5f9b48c55a073ad9d5523a
2021-12-14 21:27:31 -08:00
Sota OgoandFacebook GitHub Bot 1dbbeb4462 Move script_phases script out of ruby file.
Summary: Changelog: [internal] Move script_phases script out of react_native_pods.rb so that it's easier to review/debug.

Reviewed By: cortinico

Differential Revision: D33054423

fbshipit-source-id: 460de83a38959a1e45e37f8eda7fe364026fb571
2021-12-14 21:27:31 -08:00
Panagiotis VekrisandFacebook GitHub Bot abbb4b5bb9 new-merge fixes
Summary:
Some final fixes to enable Flow [new-merge](https://fb.workplace.com/groups/floweng/permalink/7366473803401171/) mode.

Changelog: [internal]

Reviewed By: samwgoldman

Differential Revision: D33110844

fbshipit-source-id: 96755262af44e48269cd64473412ed0b6dd9cfcf
2021-12-14 20:39:14 -08:00
David VaccaandFacebook GitHub Bot 8f6aee0df5 Create experiment to increase size of TextMeasureCache and enable in RNPanel apps
Summary:
Fabric uses a cache where it stores the result of the text measurement in C++ (to avoid unnecessary text measurement that are very costly). This cache has a "max size" of 256 and this size is not enough to store all the texts we have in the screen

In my tests, the amount of texts being measured are ~290 and after scrolling many times they increase to 611.

This diff increases the size of the TextMeasure to 1024 for users in the experiment. As a result this improves performance of HoverEvents by +5x times (see test plan)

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D33112788

fbshipit-source-id: e15feecf0f54da62b252892d37a64fb4ead29e22
2021-12-14 19:33:09 -08:00
Sota OgoandFacebook GitHub Bot 2098c89502 Add babel-plugin-codegen to babel.config.js for fabric (#32756)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32756

Changelog: [internal] Add babel-plugin-codegen to babel.config.js for the new architecture support.

Reviewed By: motiz88

Differential Revision: D33053216

fbshipit-source-id: 97a1fd9c64972ac4831461b1b62d3a83aa3207cb
2021-12-14 19:28:41 -08:00
Sota OgoandFacebook GitHub Bot bfb8f63c18 Fix bugs when running with USE_CODEGEN_DISCOVERY
Summary: Changelog: [internal] Fixing a couple of bugs when running with USE_CODEGEN_DISCOVERY.

Reviewed By: mdvacca

Differential Revision: D33115937

fbshipit-source-id: bb770b406b6dbebfefccac488a7c40caaafa6ca6
2021-12-14 18:43:40 -08:00
Janic DuplessisandFacebook GitHub Bot 07a62c2c1f Don't generate fabric component provider if fabric is not enabled (#32761)
Summary:
The generated fabric components provider includes fabric headers that won't be included when building without fabric.

This checks the fabric enabled param and skip generating the provider in that case.

## Changelog

[iOS] [Fixed] - Don't generate fabric component provider if fabric is not enabled

Pull Request resolved: https://github.com/facebook/react-native/pull/32761

Test Plan: Test that an app with codegen discovery enabled now builds properly with fabric disabled.

Reviewed By: ShikaSD

Differential Revision: D33111968

Pulled By: sota000

fbshipit-source-id: 3704e11b1e614369f1c652e8cb1acba51cf7ffad
2021-12-14 17:08:30 -08:00
Luna WeiandFacebook GitHub Bot 63ec8efe58 Remove version Github actions for now
Summary: Changelog: [Internal] Remove this workflow for now as there are some errors and we want to revisit this action and move it under react-native-community

Reviewed By: sota000

Differential Revision: D33103444

fbshipit-source-id: c64bb79df8700af110ddbfbfa3d60ac9a849c964
2021-12-14 13:43:25 -08:00
Sota OgoandFacebook GitHub Bot 959c6b795e Add input files to React-Codegen script_phases (#32755)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32755

Changelog: [Internal] Make the Reat-Codegen script_pahses only triggered when the in-app libaries are modified. When other libraries like ones inside node_modules are modified, you'll need to run `USE_CODEGEN_DISCOVERY=1 pod install` to update the source.

Reviewed By: cortinico

Differential Revision: D33007986

fbshipit-source-id: 0546bbd1d57cd54a482d71b43b296484de60a92c
2021-12-14 11:35:34 -08:00
Andrei ShikovandFacebook GitHub Bot 3b6d8af290 Remove old touch processing for Fabric
Summary:
With the updates to touch processing rolled out, we can remove the feature flag and clean up the old code. The old path is now used exclusively by legacy renderer and Fabric uses new `EventEmitter#receiveTouches` method to process touches.

Changelog:
[Changed][Android] - Update touch processing internals

Reviewed By: mdvacca

Differential Revision: D32953664

fbshipit-source-id: 517a4ce6ce9bc15528c2db94d7d11bdff8b78743
2021-12-14 10:45:10 -08:00
Andrei ShikovandFacebook GitHub Bot 0088c22b3d Clang-tidy uimanager/scheduler modules
Summary:
Applies suggestions from default preset that make sense in our codebase

Changelog: [Internal]

Reviewed By: sammy-SC

Differential Revision: D33010231

fbshipit-source-id: 6bc9edf01fd9bd9938d211e3494dd1a127b24eaa
2021-12-14 10:27:30 -08:00
Andrei ShikovandFacebook GitHub Bot c5e9cff7ef Clang-tidy fabric/jni package
Summary:
Applies suggestions from clang-tidy. The automatic linter seems to be broken atm, so I used default config from Android Studio, filtering out meaningless suggestions.

Changelog: [Internal]

Reviewed By: cortinico, sammy-SC

Differential Revision: D32994138

fbshipit-source-id: e8edf53f0cb8b0eda4ff8bb8bf8f5196827efd68
2021-12-14 10:27:30 -08:00
Sota OgoandFacebook GitHub Bot ad9eabe033 Trigger codegen discovery script when building an app. (#32731)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32731

Changelog: [internal] Trigger codegen discovery script when building React-Codegen so that users won't have to run pod install every time modifying fabric / turbomodule library.

Reviewed By: cortinico

Differential Revision: D32979871

fbshipit-source-id: 18550b6b010a9a2b8b7513aaa3b6a7322ea83eff
2021-12-14 10:15:50 -08:00
Simon FarshidandFacebook GitHub Bot 9cd4092336 Fix error when pod has no IPHONEOS_DEPLOYMENT_TARGET (#32746)
Summary:
Co-Authored-By: William Bell <williambell9708@outlook.com>

If one of the pods has no IPHONEOS_DEPLOYMENT_TARGET, the M1 postinstall workaround script fails. This commit updates the code to handle this special case.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[iOS] [Fixed] - __apply_Xcode_12_5_M1_post_install_workaround failing when one of the Pods has no IPHONEOS_DEPLOYMENT_TARGET set

Pull Request resolved: https://github.com/facebook/react-native/pull/32746

Test Plan: https://github.com/reactwg/react-native-releases/discussions/6#discussioncomment-1791520

Reviewed By: charlesbdudley

Differential Revision: D33063717

Pulled By: lunaleaps

fbshipit-source-id: f45bc47c85e42ffb5c37a277fbedd48a729ef5fb
2021-12-14 09:33:11 -08:00
Kacie BawiecandFacebook GitHub Bot 312efd01c8 React Native sync for revisions c1220eb...a049aa0
Summary:
This sync includes the following changes:
- **[f2a59df48](https://github.com/facebook/react/commit/f2a59df48 )**: Remove unstableAvoidThisFallback from OSS ([#22884](https://github.com/facebook/react/pull/22884)) //<salazarm>//
- **[24dd07bd2](https://github.com/facebook/react/commit/24dd07bd2 )**: Add custom element property support behind a flag ([#22184](https://github.com/facebook/react/pull/22184)) //<Joey Arhar>//
- **[72e48b8e1](https://github.com/facebook/react/commit/72e48b8e1 )**: Fix: Don't skip writing updated package.json //<Andrew Clark>//
- **[e39b2c899](https://github.com/facebook/react/commit/e39b2c899 )**: Fix peer deps for use-sync-external-store //<Andrew Clark>//
- **[ec78b135f](https://github.com/facebook/react/commit/ec78b135f )**: Don't override use-sync-external-store peerDeps ([#22882](https://github.com/facebook/react/pull/22882)) //<Andrew Clark>//
- **[5041c37d2](https://github.com/facebook/react/commit/5041c37d2 )**: Remove hydrate option from createRoot ([#22878](https://github.com/facebook/react/pull/22878)) //<salazarm>//
- **[3f9480f0f](https://github.com/facebook/react/commit/3f9480f0f )**: enable continuous replay flag ([#22863](https://github.com/facebook/react/pull/22863)) //<salazarm>//
- **[4729ff6d1](https://github.com/facebook/react/commit/4729ff6d1 )**: Implement identifierPrefix option for useId ([#22855](https://github.com/facebook/react/pull/22855)) //<Andrew Clark>//
- **[ed00d2c3d](https://github.com/facebook/react/commit/ed00d2c3d )**: Remove unused flag ([#22854](https://github.com/facebook/react/pull/22854)) //<Dan Abramov>//
- **[0cc724c77](https://github.com/facebook/react/commit/0cc724c77 )**: update ReactFlightWebpackPlugin to be compatiable with webpack v5 ([#22739](https://github.com/facebook/react/pull/22739)) //<Michelle Chen>//
- **[4e6eec69b](https://github.com/facebook/react/commit/4e6eec69b )**: fix: document can be `null`, not just `undefined` ([#22695](https://github.com/facebook/react/pull/22695)) //<Simen Bekkhus>//

Changelog:
[General][Changed] - React Native sync for revisions c1220eb...a049aa0

jest_e2e[run_all_tests]

Reviewed By: rickhanlonii

Differential Revision: D33062386

fbshipit-source-id: 37e497947efad5696c251096da8a92ccdc6dcea7
2021-12-14 09:26:09 -08:00
Samuel SuslaandFacebook GitHub Bot 102b9f3256 Fix type conversion in RCTViewComponentView
Summary:
changelog: [internal]

[CALayer opacity] is of type `float`, not `CGFloat`.

Reviewed By: philIip

Differential Revision: D33058967

fbshipit-source-id: 98b214e32f6d35e904a7abb0e01c2d01da50a285
2021-12-14 07:30:42 -08:00
Sota OgoandFacebook GitHub Bot 73a04d1452 Refactor the iOS app template to move setups to a helper class
Summary:
Changelog: [internal] Move initital setups in AppDelegate to util classes.

This will make it easy to apply the new architecture changes in the future.

Reviewed By: cortinico

Differential Revision: D33051517

fbshipit-source-id: 16e326b7816fae83df65450c545e7dce1a93b9d0
2021-12-13 23:13:32 -08:00
Sota OgoandFacebook GitHub Bot 24e07bc979 Move use_react_native_codegen_discovery to use_react_native! (#32749)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32749

Changelog: [Internal] Move the use_react_native_codegen_discovery call to use_react_native.

Found out that pre_install doesn't get invoked until all podspecs are read. This wouldn't work because I want use_react_native_codegen_discovery to generate React-Codgen podspecs.

I also think it's better to have less logic in Podfiles as it's hard to update once users set it up.

Reviewed By: cortinico

Differential Revision: D33054318

fbshipit-source-id: 6d62be454610c8a1d55988fe376ee3f187510a36
2021-12-13 18:27:31 -08:00
Sota OgoandFacebook GitHub Bot 4fb49cd555 Rename AppDelegate.m to AppDelegate.mm in the app template
Summary:
Changelog: [Internal] changing the extention from AppDelegate.m to AppDelegate.mm in the app template to support the new architecture.

Most changes were generated when opening the xcworkspace.

Reviewed By: cortinico

Differential Revision: D33051442

fbshipit-source-id: f472a9df26db11a02fc9f7d0544f0207e7c3e7ca
2021-12-13 11:49:00 -08:00
Sota OgoandFacebook GitHub Bot eb4ace865b Add /template/ios/build/ to gitignore
Summary: Changelog: [internal] Add /template/ios/build to gitignore. The folder is auto generated for ios.

Reviewed By: cortinico

Differential Revision: D33051582

fbshipit-source-id: ccf84fa0594d1fbbf224d92004dd05987c9deae7
2021-12-13 10:49:00 -08:00
Janic DuplessisandFacebook GitHub Bot 20b0eba581 Static link for hermes-inspector (#32694)
Summary:
Follow up to https://github.com/facebook/react-native/issues/32683 to also link hermes-inspector statically.

## Changelog

[Android] [Fix] - Static link for hermes-inspector

Pull Request resolved: https://github.com/facebook/react-native/pull/32694

Test Plan: Tested a clean build and made sure hermes-inspector.so doesn't exist anymore.

Reviewed By: cortinico

Differential Revision: D32791208

Pulled By: ShikaSD

fbshipit-source-id: 6076b263469b9e2c6176d488d13292d4f1731dcc
2021-12-13 07:48:39 -08:00
Samuel SuslaandFacebook GitHub Bot b30ff9853c Simplify construction of UIManagerBinding
Summary:
changelog: [internal]

Provide `UIManager` to `UIManagerBinding` in constructor to make the API safer.

Reviewed By: philIip

Differential Revision: D32668892

fbshipit-source-id: a15cd295196a60c3f46997e59c05c4f90503e18d
2021-12-13 06:52:37 -08:00
Gijs WeteringsandFacebook GitHub Bot 34efaab3a8 Back out "Fix Static View Config for RCTView"
Summary: Changelog: [internal]

Reviewed By: arushikesarwani94

Differential Revision: D33042498

fbshipit-source-id: 42667f0fb17d502494139645a42dc54dea9904b7
2021-12-11 06:58:07 -08:00
Gijs WeteringsandFacebook GitHub Bot 0c744dea56 Back out "Introduce a PlatformBaseViewConfig for all HostComponents"
Summary: Changelog: [Internal]

Reviewed By: arushikesarwani94

Differential Revision: D33042499

fbshipit-source-id: 603fbfa4e2f482c5d002532745a29170daded184
2021-12-11 06:58:07 -08:00
Ramanpreet NaraandFacebook GitHub Bot cab16352c7 Introduce a PlatformBaseViewConfig for all HostComponents
Summary:
## iOS
On iOS:
- All props come from ViewManagers
- All HostComponent ViewManagers extend <View/> ViewManager

https://pxl.cl/1SxdF

Therefore, it's safe to have all HostComponent Static View Configs extend <View/> Static View Config.

## Android

On Android, the model is a bit more complicated:

https://pxl.cl/1Vmp5

Takeaways:
- Props come from Shadow Nodes **and** ViewManagers
- Nearly all HostComponent ViewManagers extend BaseViewManager. But, that's not <View/>'s ViewManager.
- <View/>'s ViewManager is [ReactViewManager](https://fburl.com/code/0zalv8zk), which is a descendent of BaseViewManager, and declares its own ReactProps.

So, it's not safe to have all Android HostComponent Static View Configs to extend <View/>'s Static View Config:
1. No components actualy incorportate <View/>'s props
2. Some components don't even incorporate BaseViewManager's props.

## Changes
In this diff, I removed ReactNativeViewViewConfig, and introduced a new view config called PlatformBaseViewConfig. This ViewConfig partial will capture all the props available on all HostComponents on **both** platforms. This may not necessarily be the props made available on <View/>.

The only components that don't extend the base platform props are: RCTTextInlineImage. What we do with these components is TBD.

Changelog: [Internal]

Reviewed By: yungsters

Differential Revision: D32187832

fbshipit-source-id: 9a057abb3f58801615891c21e42ad4cfa5c69f21
2021-12-10 23:19:52 -08:00
Ramanpreet NaraandFacebook GitHub Bot 8f3e188426 Fix Static View Config for RCTView
Summary:
- Fix the StaticViewConfig violations for RCTView

Changelog: [Internal]

Reviewed By: yungsters

Differential Revision: D32187835

fbshipit-source-id: c8c926817a9245b1e8671e5a2e8965ab7ffecace
2021-12-10 23:19:52 -08:00
Sota OgoandFacebook GitHub Bot 552af5d85d Add packages/babel-plugin-codegen to react-native (#32737)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/32737

Changelog: [Internal] Adding packages/babel-plugin-codegen to react-native. This will add a missing piece to enable the new architecture in nightly build.

Reviewed By: ShikaSD

Differential Revision: D33034294

fbshipit-source-id: 766b97ddaddeaf0813ed9cf9b08a81eac93052ac
2021-12-10 20:57:22 -08:00
Amy HuyenandFacebook GitHub Bot 9b0ed920ef Export flow type for ScrollView Deceleration Rate
Summary:
## Changelog:
[General] [Changed] Export Flow type for deceleration rate for use in other files to keep deceleration rate prop values consistently typed

Reviewed By: lunaleaps

Differential Revision: D32989199

fbshipit-source-id: 2e2fef0721de0d0eb60aaefdbb635788bfc8c1f1
2021-12-10 11:43:08 -08:00
Lorenzo SciandraandFacebook GitHub Bot 896a5c9230 add 0.66.4 changelog (#32733)
Summary:
lunaleaps did [0.66.4](https://github.com/facebook/react-native/releases/tag/v0.66.4) yesterday - this PR adds the entries for it in the changelog.md file.

## Changelog

[Internal] [Changed] - add changelog entry for 0.66.4

Pull Request resolved: https://github.com/facebook/react-native/pull/32733

Test Plan: N/A

Reviewed By: lunaleaps

Differential Revision: D33017547

Pulled By: cortinico

fbshipit-source-id: 2ffad5d65c7b308686f29395fb6fc54b85804bf0
2021-12-10 10:18:52 -08:00
Eric RozellandFacebook GitHub Bot fe53cae954 Deduct offset from getValue result when detaching
Summary:
The NativeAnimated `getValue` API returns `value + offset`:
Android:
iOS: https://github.com/facebook/react-native/blob/main/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m#L44
Android: https://github.com/facebook/react-native/blob/main/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java#L36

When we store the value after detaching the NativeAnimated node, it stores the result of the NativeAnimated `getValue` call to the `_value` property, so if we call `__getValue` at some later point on the `AnimatedValue`, we will count the offset twice.

This change deducts the offset value from the result returned from `getValue` when storing the latest value.

Changelog:
[General][Fixed] - AnimatedValue.__detach should store getValue result with offset deducted

Reviewed By: yungsters

Differential Revision: D32987003

fbshipit-source-id: 488d1fe512f886c7a9de1e5a4de8f19441ebd81e
2021-12-10 08:07:38 -08:00
Luna WeiandFacebook GitHub Bot c034b7e7e1 Bump dependency on eslint-plugin-specs to minimum 0.0.2
Summary: Changelog: [Internal] - Update our release package.json to reference the react-native/eslint-plugin-specs module and a version > 0.0.2

Reviewed By: sota000

Differential Revision: D32973565

fbshipit-source-id: 49bfdb94f5dfdd9617e5849010241e4dda9dc9db
2021-12-09 15:57:20 -08:00
Alex KollerandFacebook GitHub Bot 2e3bcdfda5 Update prop generator to allow value prop name
Summary:
So I was adding a new HTTPCookie prop to our WebView native component and found that my build was [failing](https://www.internalfb.com/diff/D32602297?dst_version_fbid=338931330931416) due to "redefinition of `value`". Looks like we use the name of the prop as a variable name during codegen, and this can conflict with some other hardcoded variable names. Rather than try and come up with a better prop name, I figured we can just append some string to our codegen name to reduce the chance for conflicts.

Changelog:
[Internal][Changed] - Change codegen variable naming to prevent conflicts to prop names

Reviewed By: JoshuaGross

Differential Revision: D32967807

fbshipit-source-id: 1b3631ec783b229eddfd3c801ffbb397910fc882
2021-12-09 12:02:29 -08:00
Eric RozellandFacebook GitHub Bot 8ba771c3dd Fire AnimatedValue.stopAnimation callback with correct native value
Summary:
AnimatedValue fires a callback with the current value (raw value + offset) after calling it's `stopAnimation` method. The `_value` field on the `AnimatedValue` node is not necessarily kept in sync with the NativeAnimated value node, so the value provided to the callback may be out of sync.

This change checks if the `AnimatedValue` is a native node and passes the callback to the `NativeAnimatedAPI.getValue` callback, defaulting to the previous current JS node state if the node is not native.

Changelog:
[General][Fixed] - AnimatedValue.stopAnimation callback with correct value for NativeAnimated

Reviewed By: yungsters

Differential Revision: D32968572

fbshipit-source-id: b83f86eabe5456f762a15bc29cacb43f84513f6c
2021-12-09 11:40:13 -08:00
Andrei ShikovandFacebook GitHub Bot 1d4e7f6d40 Use reference for command args
Summary:
The IDE warning suggests that passing folly::dynamic by value will create a copy on each call.

Changelog: [Internal]

Reviewed By: JoshuaGross

Differential Revision: D32978154

fbshipit-source-id: a47a60c332a9d299eb2110d3537dfab0bc2398b6
2021-12-09 09:47:38 -08:00