react-native-navigation icon indicating copy to clipboard operation
react-native-navigation copied to clipboard

React Native 0.73 `npx rnn-link` doesn't work

Open retyui opened this issue 6 months ago • 11 comments

What happened?

starting from rn73 *.java files was convened to *.kt so auto-linking doesn't work properly

npx rnn-link

/tmp/Rn73/node_modules/react-native-navigation/autolink/postlink/path.js:10
exports.rootGradle = mainApplicationJava.replace(/android\/app\/.*\.java/, 'android/build.gradle');
                                         ^

TypeError: Cannot read properties of undefined (reading 'replace')
    at Object.<anonymous> (/Users/davydnarbutovich/tmp/Rn73/node_modules/react-native-navigation/autolink/postlink/path.js:10:42)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:119:18)
    at Object.<anonymous> (/Users/davydnarbutovich/tmp/Rn73/node_modules/react-native-navigation/autolink/postlink/applicationLinker.js:2:12)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)


What was the expected behaviour?

no js error, *.kt files supported out of the box

Was it tested on latest react-native-navigation?

  • [X] I have tested this issue on the latest react-native-navigation release and it still reproduces.

Help us reproduce this issue!

No response

In what environment did this happen?

React Native Navigation version: 7.37.2 React Native version: 0.73 Has Fabric (React Native's new rendering system) enabled: (yes/no) Node version: 18 Device model: Android version:

retyui avatar Dec 17 '23 15:12 retyui

+1

jtich avatar Dec 18 '23 06:12 jtich

Mesmo problema

JailsonSmidi avatar Dec 18 '23 18:12 JailsonSmidi

+1

HaNguyenRN avatar Dec 21 '23 02:12 HaNguyenRN

The issue is that the following line in path.js assumes that mainApplication has the java extension, however it's now a kotlin file, which is why mainApplicationJava is undefined.

I was able to get around this issue by changing this line...

var mainApplicationJava = glob.sync('**/MainApplication.java', ignoreFolders)[0];

to the following:

var mainApplicationJava = glob.sync('**/MainApplication.{java,kt}', ignoreFolders)[0];

This way the glob.sync func matches both file extensions.

jtich avatar Dec 21 '23 02:12 jtich

+1

elmalakomar avatar Dec 28 '23 19:12 elmalakomar

Same here

ArianHamdi avatar Jan 01 '24 00:01 ArianHamdi

+1

harunisik avatar Jan 04 '24 03:01 harunisik

is this issue has been solved ?

pramahaditamaputra avatar Jan 24 '24 07:01 pramahaditamaputra

i still have this issue as well

stephanepericat avatar Jan 24 '24 15:01 stephanepericat

All, please track https://github.com/wix/react-native-navigation/issues/7834 for the official RN73 support 🙏🏻

d4vidi avatar Jan 28 '24 20:01 d4vidi