[core] Add `requireOptionalNativeModule` (#24262)
[dev-menu] fix release build crash when importing `expo-dev-client` (#23413)# Why previously we suggested people to import `expo-dev-client` in their index.js file. after the new module api migr
[dev-menu] fix release build crash when importing `expo-dev-client` (#23413)# Why previously we suggested people to import `expo-dev-client` in their index.js file. after the new module api migration and using `requireNativeModule`, it will be a hard crash if the native module is not found. expo-dev-menu native module is typically not there because it's debug build only. that's why the crash happens in release build only. fixes https://github.com/expo/expo/pull/23219#issuecomment-1625899685 fixes #23401 # How try-catch the `requireNativeModule` # Test Plan test the repro from #23401
show more ...
[dev-menu] fix wrong js import after expo modules api migration (#23219)# Why since we've migrated expo-dev-menu to expo modules api. we should use the new way to get native module from js side.
[dev-menu] fix wrong js import after expo modules api migration (#23219)# Why since we've migrated expo-dev-menu to expo modules api. we should use the new way to get native module from js side. fixes #23183 close ENG-9166 # How use `requireNativeModule()` to get native module # Test Plan ```sh $ yarn create expo -t blank@sdk-49 sdk49 $ cd sdk49 $ npx expo install expo-dev-client $ npx expo prebuild -i ios # patch expo-dev-menu's code ```
[menu][Android] Start using new modules API (#21582)# Why Rewrite some menu modules to use the new API. # Test Plan - bare-expo ✅
[menu] Improve bottom sheet behaviour (#21486)# Why Improves the behavior of the native bottom sheet. Closes https://github.com/expo/expo/issues/21356. # How - Started a collapse animati
[menu] Improve bottom sheet behaviour (#21486)# Why Improves the behavior of the native bottom sheet. Closes https://github.com/expo/expo/issues/21356. # How - Started a collapse animation when the menu action was pressed - Added a way for users to close or hide the menu from js - Added small padding on Android to improve user experience - Extensions can now decide if executing them should trigger collapse animation. It's set to true by default. # Test Plan - bare-expo ✅ - https://snack.expo.dev/@honeycomb-wallwisher/forlorn-soda ✅
[menu] Remove `openSettings` and `openProfile` (#18565)# Why Closes https://github.com/expo/expo/issues/18242. # How Removes two unworking functions - openSettings and openProfile. Those f
[menu] Remove `openSettings` and `openProfile` (#18565)# Why Closes https://github.com/expo/expo/issues/18242. # How Removes two unworking functions - openSettings and openProfile. Those functions don't work and don't make sense anymore - settings and profile UI were moved into the dev-launcher package. # Test Plan - build TS
[dev-menu] add js api to register callbacks (#17528)Co-authored-by: Eric Samelson <[email protected]>
[dev-client] Fix web compatibility (#13535)
[dev-menu] Extract DevMenu to expo-dev-menu package (#9473)# Why We would like Expo DevMenu to work also in bare workflow and it's one step forward into our long-term super-duper feature that I
[dev-menu] Extract DevMenu to expo-dev-menu package (#9473)# Why We would like Expo DevMenu to work also in bare workflow and it's one step forward into our long-term super-duper feature that I can't say more about yet ♂️ # How - Extracted the DevMenu root component from `home` into a separate React Native app with separate JS bundle. - Refactored existing native iOS code and converted it to Swift (wherever possible). - Added support for bare workflow and as a demo integrated it with bare-expo app (see https://github.com/expo/expo/commit/5d966176addcc3c781e32951072e8b85d4bcf964 for installation guide) - Added a concept of dev menu extensions, make some redesigns, improve animations and behavior of the bottom sheet and made it work well with react-navigation screens # Test Plan Just merge and break everything.