Skip to content

[DO NOT MERGE] RN77 new arch #3721

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 24 commits into
base: rn76-old-arch
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
c05b635
RN77 upgrade + new arch
M-i-k-e-l May 7, 2025
3d4cad6
Remove TextInputDelKeyHandlerPackage (Android)
M-i-k-e-l May 7, 2025
3004293
KeyboardAccessoryView on Android - fix crash (one bug left)
M-i-k-e-l May 8, 2025
2849be7
Pressing on dismiss (x) only fully works the second time - a very com…
M-i-k-e-l May 8, 2025
6b4b1bf
Remove unused code
M-i-k-e-l May 8, 2025
436f0da
HighlighterViewManager - fix (use new API)
M-i-k-e-l May 8, 2025
78f55fd
Fix gesture handler changed style
M-i-k-e-l May 20, 2025
56fb161
Fix images (unrelated)
M-i-k-e-l May 20, 2025
a46bc21
Fix PanViewScreen (unrelated)
M-i-k-e-l May 20, 2025
2d76207
Fix dragging in SortableList and SortableGridList
M-i-k-e-l May 25, 2025
50c7644
Update navigation
M-i-k-e-l May 25, 2025
3429111
Change iOS back to Objective-C
M-i-k-e-l May 25, 2025
f4cd863
Fix screen - border color
M-i-k-e-l May 25, 2025
db5509f
Revert to older reanimated and gesture-handler versions
M-i-k-e-l May 26, 2025
bca8230
Drawer - fix animation flickering
M-i-k-e-l May 27, 2025
8f25560
Remove comment
M-i-k-e-l May 27, 2025
6350059
StackAggregator - several fixes - see https://github.com/wix/react-na…
M-i-k-e-l May 27, 2025
160155c
Drawer - fix color not being shown with multiple buttons (RectButton …
M-i-k-e-l May 27, 2025
ddca74f
Fix
M-i-k-e-l May 27, 2025
5b71dda
Fix
M-i-k-e-l May 27, 2025
b3ae5f0
Fix iOS (setimmediate)
M-i-k-e-l May 29, 2025
2962046
remove UIManager.setLayoutAnimationEnabledExperimental
Inbal-Tish Jun 3, 2025
8d65eff
Merge branch 'rn76-old-arch' into rn77-new-arch
M-i-k-e-l Jun 3, 2025
c8e888b
Update RNN
M-i-k-e-l Jun 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ buildscript {
minSdkVersion = 26
compileSdkVersion = 35
targetSdkVersion = 34
ndkVersion = "26.1.10909125"
RNNKotlinVersion = "1.9.25"
ndkVersion = "27.1.12297006"
kotlinVersion = "2.0.21"
}
repositories {
mavenLocal()
Expand All @@ -19,7 +19,7 @@ buildscript {
classpath("com.facebook.react:react-native-gradle-plugin")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$RNNKotlinVersion"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
}
}

Expand Down
2 changes: 1 addition & 1 deletion android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
# your application. You should enable this flag either if you want
# to write custom TurboModules/Fabric components OR use libraries that
# are providing them.
newArchEnabled=false
newArchEnabled=true

# Use this property to enable or disable the Hermes JS engine.
# If set to false, you will be using JSC instead.
Expand Down
3 changes: 1 addition & 2 deletions demo/src/index.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import {UIManager, I18nManager} from 'react-native';
import {I18nManager} from 'react-native';
import {navigationData as menuStructure} from './screens/MenuStructure';
import {loadDemoConfigurations} from './configurations';

UIManager.setLayoutAnimationEnabledExperimental && UIManager.setLayoutAnimationEnabledExperimental(true); // eslint-disable-line
I18nManager.allowRTL(true);

module.exports = {
Expand Down
4 changes: 2 additions & 2 deletions demo/src/screens/componentScreens/AnimatedImageScreen.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import _ from 'lodash';
import {AnimatedImage, Colors} from 'react-native-ui-lib'; //eslint-disable-line

const SampleImages = [
'https://static.pexels.com/photos/50721/pencils-crayons-colourful-rainbow-50721.jpeg',
'https://static.pexels.com/photos/60628/flower-garden-blue-sky-hokkaido-japan-60628.jpeg'
'https://images.pexels.com/photos/2529146/pexels-photo-2529146.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500',
'https://images.pexels.com/photos/2529158/pexels-photo-2529158.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500'
];

export default class AnimatedImageScreen extends Component {
Expand Down
2 changes: 1 addition & 1 deletion demo/src/screens/componentScreens/SortableListScreen.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ export default SortableListScreen;
const styles = StyleSheet.create({
itemContainer: {
height: 52,
borderColor: Colors.$outlineDefault,
borderBottomColor: Colors.$outlineDefault,
borderBottomWidth: 1
},
selectedItemContainer: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ export default class StackAggregatorScreen extends Component {
containerStyle={{marginTop: 12}}
onItemPress={this.onItemPress}
collapsed={false}
contentContainerStyle={{backgroundColor: Colors.red70}}
backgroundColor={Colors.red70}
// itemBorderRadius={10}
// buttonProps={{color: Colors.green30, labelStyle: {...Typography.text80, fontWeight: '500'}}}
>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ class Tab2 extends Component {
<Avatar
size={50}
source={{
uri: 'https://static.pexels.com/photos/60628/flower-garden-blue-sky-hokkaido-japan-60628.jpeg'
uri: 'https://images.pexels.com/photos/2529159/pexels-photo-2529159.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500'
}}
/>
<Text text40 marginL-20>
Expand Down
6 changes: 3 additions & 3 deletions demo/src/screens/incubatorScreens/PanViewScreen.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React, {Component} from 'react';
import {StyleSheet, ScrollView} from 'react-native';
import {FlatList} from 'react-native-gesture-handler';
import {FlatList, GestureHandlerRootView} from 'react-native-gesture-handler';
import {
Assets,
View,
Expand Down Expand Up @@ -147,7 +147,7 @@ class PanViewScreen extends Component {
render() {
const {showToast, showDialog} = this.state;
return (
<View style={styles.root}>
<GestureHandlerRootView style={styles.root}>
<View marginL-page height={50} centerV>
<Text text50>New Pan View</Text>
</View>
Expand All @@ -163,7 +163,7 @@ class PanViewScreen extends Component {
</ScrollView>
{showToast && this.renderToast()}
{showDialog && this.renderDialog()}
</View>
</GestureHandlerRootView>
);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ export default class HighlightOverlayViewScreen extends PureComponent {
}

componentDidMount() {
this.setState({showFTE: true});
// setting timeout to allow Android's transition animation to complete
setTimeout(() => {
this.setState({showFTE: true});
}, 1000);
}

onRefUpdated(ref) {
Expand Down
3 changes: 1 addition & 2 deletions docuilib/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,10 @@
"@types/react": "^17.0.14",
"@types/react-helmet": "^6.1.2",
"@types/react-router-dom": "^5.1.8",
"metro-react-native-babel-preset": "0.76.9",
"metro-react-native-babel-preset": "0.77.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-native-linear-gradient": "2.6.2",
"react-native-reanimated": "3.16.7",
"react-native-shimmer-placeholder": "^2.0.9",
"react-native-ui-lib": "snapshot",
"shell-utils": "^1.0.10",
Expand Down
5 changes: 2 additions & 3 deletions docuilib/plugins/uilib.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,12 @@ module.exports = ({siteDir}, _options) => {
path.resolve(siteDir, 'src'),
path.resolve(siteDir, 'node_modules/react-native-web'),
path.resolve(siteDir, 'node_modules/react-native-ui-lib'),
// // just for not getting warnings
path.resolve(siteDir, 'node_modules/react-native-shimmer-placeholder'),
path.resolve(siteDir, 'node_modules/react-native-reanimated'),
path.resolve(siteDir, 'node_modules/react-native-linear-gradient')
// // end just for not getting warnings
// just for not getting warnings
// path.resolve(siteDir, 'node_modules/react-native-haptic-feedback'),
// path.resolve(siteDir, 'node_modules/react-native-animatable'),
// path.resolve(siteDir, 'node_modules/react-native-reanimated'),
// path.resolve(siteDir, 'node_modules/react-native-svg'),
// path.resolve(siteDir, 'node_modules/react-native-svg-transformer'),
// path.resolve(siteDir, 'node_modules/@react-native-community/netinfo'),
Expand Down
63 changes: 14 additions & 49 deletions docuilib/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -957,7 +957,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-arrow-functions@npm:^7.0.0, @babel/plugin-transform-arrow-functions@npm:^7.0.0-0, @babel/plugin-transform-arrow-functions@npm:^7.25.9":
"@babel/plugin-transform-arrow-functions@npm:^7.0.0, @babel/plugin-transform-arrow-functions@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1027,7 +1027,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-class-properties@npm:^7.0.0-0, @babel/plugin-transform-class-properties@npm:^7.25.9":
"@babel/plugin-transform-class-properties@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-class-properties@npm:7.25.9"
dependencies:
Expand All @@ -1051,7 +1051,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-classes@npm:^7.0.0, @babel/plugin-transform-classes@npm:^7.0.0-0, @babel/plugin-transform-classes@npm:^7.25.9":
"@babel/plugin-transform-classes@npm:^7.0.0, @babel/plugin-transform-classes@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-classes@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1326,7 +1326,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.0.0-0, @babel/plugin-transform-nullish-coalescing-operator@npm:^7.25.9":
"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1384,7 +1384,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-optional-chaining@npm:^7.0.0-0, @babel/plugin-transform-optional-chaining@npm:^7.25.9":
"@babel/plugin-transform-optional-chaining@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1592,7 +1592,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-shorthand-properties@npm:^7.0.0, @babel/plugin-transform-shorthand-properties@npm:^7.0.0-0, @babel/plugin-transform-shorthand-properties@npm:^7.25.9":
"@babel/plugin-transform-shorthand-properties@npm:^7.0.0, @babel/plugin-transform-shorthand-properties@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1626,7 +1626,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-template-literals@npm:^7.0.0-0, @babel/plugin-transform-template-literals@npm:^7.25.9":
"@babel/plugin-transform-template-literals@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-template-literals@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1701,7 +1701,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-transform-unicode-regex@npm:^7.0.0, @babel/plugin-transform-unicode-regex@npm:^7.0.0-0, @babel/plugin-transform-unicode-regex@npm:^7.25.9":
"@babel/plugin-transform-unicode-regex@npm:^7.0.0, @babel/plugin-transform-unicode-regex@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.9"
dependencies:
Expand Down Expand Up @@ -1833,7 +1833,7 @@ __metadata:
languageName: node
linkType: hard

"@babel/preset-typescript@npm:^7.16.7, @babel/preset-typescript@npm:^7.21.0, @babel/preset-typescript@npm:^7.25.9":
"@babel/preset-typescript@npm:^7.21.0, @babel/preset-typescript@npm:^7.25.9":
version: 7.26.0
resolution: "@babel/preset-typescript@npm:7.26.0"
dependencies:
Expand Down Expand Up @@ -9173,9 +9173,9 @@ __metadata:
languageName: node
linkType: hard

"metro-react-native-babel-preset@npm:0.76.9":
version: 0.76.9
resolution: "metro-react-native-babel-preset@npm:0.76.9"
"metro-react-native-babel-preset@npm:0.77.0":
version: 0.77.0
resolution: "metro-react-native-babel-preset@npm:0.77.0"
dependencies:
"@babel/core": ^7.20.0
"@babel/plugin-proposal-async-generator-functions": ^7.0.0
Expand Down Expand Up @@ -9218,7 +9218,7 @@ __metadata:
react-refresh: ^0.4.0
peerDependencies:
"@babel/core": "*"
checksum: 344fbcbcf82a9f8425a38a910716777cf45619d7b61a1a935a903f751e3a335ff8a54f80ba9fd9a16b96ac74e68f77760cb09d2c40ec6faf113308c91b863a9e
checksum: 09fb64735d4517f62cb0cbd386bdfa64d0de5a4f8c85b54c36b5799b242e897295d58c9d18e124033233841d8fcd33a109dda3dd9f1e5554e516f689eef14a0d
languageName: node
linkType: hard

Expand Down Expand Up @@ -11567,16 +11567,6 @@ __metadata:
languageName: node
linkType: hard

"react-native-is-edge-to-edge@npm:1.1.7":
version: 1.1.7
resolution: "react-native-is-edge-to-edge@npm:1.1.7"
peerDependencies:
react: "*"
react-native: "*"
checksum: 4cdf2b2fb5b131f2015c26d2cb7688b4a0c5f3c8474b1bf0ddfa9eabb0263df440c87262ae8f812a6ecab0d5310df0373bddad4b51f53dabb2ffee01e9ef0f44
languageName: node
linkType: hard

"react-native-linear-gradient@npm:2.6.2":
version: 2.6.2
resolution: "react-native-linear-gradient@npm:2.6.2"
Expand All @@ -11587,30 +11577,6 @@ __metadata:
languageName: node
linkType: hard

"react-native-reanimated@npm:3.17.3":
version: 3.17.3
resolution: "react-native-reanimated@npm:3.17.3"
dependencies:
"@babel/plugin-transform-arrow-functions": ^7.0.0-0
"@babel/plugin-transform-class-properties": ^7.0.0-0
"@babel/plugin-transform-classes": ^7.0.0-0
"@babel/plugin-transform-nullish-coalescing-operator": ^7.0.0-0
"@babel/plugin-transform-optional-chaining": ^7.0.0-0
"@babel/plugin-transform-shorthand-properties": ^7.0.0-0
"@babel/plugin-transform-template-literals": ^7.0.0-0
"@babel/plugin-transform-unicode-regex": ^7.0.0-0
"@babel/preset-typescript": ^7.16.7
convert-source-map: ^2.0.0
invariant: ^2.2.4
react-native-is-edge-to-edge: 1.1.7
peerDependencies:
"@babel/core": ^7.0.0-0
react: "*"
react-native: "*"
checksum: 928c652e365ae9dca7bd6c895cf163294153ae64f73b63637fad0787e8c66266bb63faf5e7aa7bfc29f057eb176eab12d60029f6165a045f25f19165e693b98e
languageName: node
linkType: hard

"react-native-redash@npm:^12.0.3":
version: 12.6.1
resolution: "react-native-redash@npm:12.6.1"
Expand Down Expand Up @@ -13524,14 +13490,13 @@ __metadata:
clsx: ^1.1.1
docusaurus-plugin-sass: ^0.2.1
file-loader: ^6.2.0
metro-react-native-babel-preset: 0.76.9
metro-react-native-babel-preset: 0.77.0
prettier: 2.8.8
prism-react-renderer: ^2.4.1
react: ^18.2.0
react-dom: ^18.2.0
react-html-parser: ^2.0.2
react-native-linear-gradient: 2.6.2
react-native-reanimated: 3.17.3
react-native-shimmer-placeholder: ^2.0.9
react-native-ui-lib: snapshot
react-native-web: ^0.19.12
Expand Down
2 changes: 1 addition & 1 deletion expoDemo/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"metro-config": "^0.75.1",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-native": "0.76.9",
"react-native": "0.77.2",
"react-native-gesture-handler": "2.22.1",
"react-native-haptic-feedback": "^1.14.0",
"react-native-navigation": "8.0.0",
Expand Down
1 change: 1 addition & 0 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import 'setimmediate';
require('./demo/src/index');
require('./demo/src/demoApp'); // this is separated from demo/src/index by purpose

Expand Down
7 changes: 0 additions & 7 deletions ios/Podfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
ENV['RCT_NEW_ARCH_ENABLED'] = '0'
# Resolve react_native_pods.rb with node to allow for hoisting
require Pod::Executable.execute_command('node', ['-p',
'require.resolve(
Expand All @@ -24,12 +23,6 @@ target 'rnuilib' do
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)

target 'rnuilibTests' do
inherit! :complete
# Pods for testing
# use_flipper!()
end

post_install do |installer|
# https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
Expand Down
Loading