expo-dev-menu 6.0.19 → 6.0.21

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/CHANGELOG.md CHANGED
@@ -10,6 +10,18 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 6.0.21 — 2025-03-13
14
+
15
+ ### 🐛 Bug fixes
16
+
17
+ - Fixed compilation error (could not build module 'ReactCodegen') on iOS. ([#35473](https://github.com/expo/expo/pull/35473) by [@lukmccall](https://github.com/lukmccall))
18
+
19
+ ## 6.0.20 — 2025-03-11
20
+
21
+ ### 🐛 Bug fixes
22
+
23
+ - use custom iOS dependencyProvider ([#35359](https://github.com/expo/expo/pull/35359) by [@vonovak](https://github.com/vonovak))
24
+
13
25
  ## 6.0.19 — 2025-02-06
14
26
 
15
27
  _This version does not introduce any user-facing changes._
@@ -1,7 +1,7 @@
1
1
  apply plugin: 'com.android.library'
2
2
 
3
3
  group = 'host.exp.exponent'
4
- version = '6.0.19'
4
+ version = '6.0.21'
5
5
 
6
6
  def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
7
7
  apply from: expoModulesCorePlugin
@@ -20,7 +20,7 @@ android {
20
20
  namespace "expo.modules.devmenu"
21
21
  defaultConfig {
22
22
  versionCode 10
23
- versionName '6.0.19'
23
+ versionName '6.0.21'
24
24
  }
25
25
 
26
26
  buildTypes {
@@ -117,6 +117,10 @@ Pod::Spec.new do |s|
117
117
  main.dependency 'ExpoModulesCore'
118
118
  main.dependency 'expo-dev-menu-interface'
119
119
  main.dependency "expo-dev-menu/Vendored"
120
+ if reactNativeTargetVersion >= 77
121
+ # for EXAppDependencyProvider
122
+ main.dependency 'ReactCodegen'
123
+ end
120
124
  end
121
125
 
122
126
  s.subspec 'ReactNativeCompatibles' do |ss|
@@ -1,9 +1,6 @@
1
1
  // Copyright 2015-present 650 Industries. All rights reserved.
2
2
 
3
3
  import React
4
- #if canImport(ReactAppDependencyProvider)
5
- import ReactAppDependencyProvider
6
- #endif
7
4
 
8
5
  @objc
9
6
  class DevMenuAppInstance: DevMenuRCTAppDelegate {
@@ -17,7 +14,7 @@ class DevMenuAppInstance: DevMenuRCTAppDelegate {
17
14
 
18
15
  super.init()
19
16
  #if canImport(ReactAppDependencyProvider)
20
- self.dependencyProvider = RCTAppDependencyProvider()
17
+ self.dependencyProvider = EXAppDependencyProvider()
21
18
  #endif
22
19
  super.initRootViewFactory()
23
20
  }
@@ -0,0 +1,23 @@
1
+ #import <Foundation/Foundation.h>
2
+
3
+ #if __has_include(<React-RCTAppDelegate/RCTDependencyProvider.h>)
4
+ #import <React-RCTAppDelegate/RCTDependencyProvider.h>
5
+ #define HAS_RCT_DEPENDENCY_PROVIDER 1
6
+ #elif __has_include(<React_RCTAppDelegate/RCTDependencyProvider.h>)
7
+ #import <React_RCTAppDelegate/RCTDependencyProvider.h>
8
+ #define HAS_RCT_DEPENDENCY_PROVIDER 1
9
+ #else
10
+ #define HAS_RCT_DEPENDENCY_PROVIDER 0
11
+ #endif
12
+
13
+ NS_ASSUME_NONNULL_BEGIN
14
+
15
+ #if HAS_RCT_DEPENDENCY_PROVIDER
16
+ @interface EXAppDependencyProvider : NSObject <RCTDependencyProvider>
17
+ #else
18
+ @interface EXAppDependencyProvider : NSObject
19
+ #endif
20
+
21
+ @end
22
+
23
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,35 @@
1
+ // TODO vonovak 3/25 - remove this and replace instantiations with RCTAppDependencyProvider
2
+ // when dispatch_once is removed from https://github.com/facebook/react-native/blob/f5feb73022f9340583ebcf576eaedd3ca5677e1a/packages/react-native/scripts/codegen/templates/RCTAppDependencyProviderMM.template#L51
3
+ // also replace "ReactCodegen" dependency in podspec with RCTAppDependencyProvider
4
+
5
+ #if __has_include(<React-RCTAppDelegate/RCTDependencyProvider.h>) || __has_include(<React_RCTAppDelegate/RCTDependencyProvider.h>)
6
+ #import <EXDevMenu/EXAppDependencyProvider.h>
7
+ #import <ReactCodegen/RCTModulesConformingToProtocolsProvider.h>
8
+ #import <ReactCodegen/RCTThirdPartyComponentsProvider.h>
9
+
10
+ @implementation EXAppDependencyProvider {
11
+ NSArray<NSString *> * _URLRequestHandlerClassNames;
12
+ NSArray<NSString *> * _imageDataDecoderClassNames;
13
+ NSArray<NSString *> * _imageURLLoaderClassNames;
14
+ NSDictionary<NSString *,Class<RCTComponentViewProtocol>> * _thirdPartyFabricComponents;
15
+ }
16
+
17
+ - (nonnull NSArray<NSString *> *)URLRequestHandlerClassNames {
18
+ return RCTModulesConformingToProtocolsProvider.URLRequestHandlerClassNames;
19
+ }
20
+
21
+ - (nonnull NSArray<NSString *> *)imageDataDecoderClassNames {
22
+ return RCTModulesConformingToProtocolsProvider.imageDataDecoderClassNames;
23
+ }
24
+
25
+ - (nonnull NSArray<NSString *> *)imageURLLoaderClassNames {
26
+ return RCTModulesConformingToProtocolsProvider.imageURLLoaderClassNames;;
27
+ }
28
+
29
+ - (nonnull NSDictionary<NSString *,Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents {
30
+ return RCTThirdPartyComponentsProvider.thirdPartyFabricComponents;
31
+ }
32
+
33
+ @end
34
+
35
+ #endif
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-dev-menu",
3
- "version": "6.0.19",
3
+ "version": "6.0.21",
4
4
  "description": "Expo/React Native module with the developer menu.",
5
5
  "main": "build/DevMenu.js",
6
6
  "types": "build/DevMenu.d.ts",
@@ -55,9 +55,9 @@
55
55
  "@testing-library/jest-native": "^4.0.4",
56
56
  "@testing-library/react-native": "^12.5.1",
57
57
  "babel-plugin-module-resolver": "^5.0.0",
58
- "babel-preset-expo": "~12.0.7",
59
- "expo-dev-client-components": "2.0.3",
60
- "expo-module-scripts": "^4.0.3",
58
+ "babel-preset-expo": "~12.0.9",
59
+ "expo-dev-client-components": "2.0.4",
60
+ "expo-module-scripts": "^4.0.4",
61
61
  "fuse.js": "^6.4.6",
62
62
  "react": "18.3.1",
63
63
  "react-native": "0.76.7",
@@ -67,5 +67,5 @@
67
67
  "peerDependencies": {
68
68
  "expo": "*"
69
69
  },
70
- "gitHead": "9442f00874e0cd738030abae80e5bdef184a2581"
70
+ "gitHead": "8884ab74f87add3551675d0d0124d95c5626c57a"
71
71
  }