Skip to content

Commit 5acdec6

Browse files
authored
fix(macOS): Load bundles with .macos.jsbundle extension (#103)
1 parent 08e67ec commit 5acdec6

File tree

4 files changed

+28
-15
lines changed

4 files changed

+28
-15
lines changed

example/ios/Podfile.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PODS:
22
- boost-for-react-native (1.63.0)
33
- DoubleConversion (1.1.6)
4-
- Example-Tests (0.1.1):
4+
- Example-Tests (0.1.2):
55
- React
66
- FBLazyVector (0.61.5)
77
- FBReactNativeSpec (0.61.5):
@@ -220,7 +220,7 @@ PODS:
220220
- React-cxxreact (= 0.61.5)
221221
- React-jsi (= 0.61.5)
222222
- ReactCommon/jscallinvoker (= 0.61.5)
223-
- ReactTestApp-DevSupport (0.1.1)
223+
- ReactTestApp-DevSupport (0.1.2)
224224
- ReactTestApp-Resources (1.0.0-dev)
225225
- SwiftLint (0.39.1)
226226
- Yoga (1.14.0)
@@ -327,7 +327,7 @@ EXTERNAL SOURCES:
327327
SPEC CHECKSUMS:
328328
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
329329
DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2
330-
Example-Tests: 0162528650caf3dc473ba08984c5ed811c3e0732
330+
Example-Tests: 6affe8047ddb57b68d6356dbc876e194ef9c64b8
331331
FBLazyVector: aaeaf388755e4f29cd74acbc9e3b8da6d807c37f
332332
FBReactNativeSpec: 118d0d177724c2d67f08a59136eb29ef5943ec75
333333
Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51
@@ -352,7 +352,7 @@ SPEC CHECKSUMS:
352352
React-RCTText: 9ccc88273e9a3aacff5094d2175a605efa854dbe
353353
React-RCTVibration: a49a1f42bf8f5acf1c3e297097517c6b3af377ad
354354
ReactCommon: 198c7c8d3591f975e5431bec1b0b3b581aa1c5dd
355-
ReactTestApp-DevSupport: dd44c3011f367ab72f51ff61fdb7c9c0e525eccf
355+
ReactTestApp-DevSupport: 67fa5247501557ce874d10b301a121e48966f926
356356
ReactTestApp-Resources: c070f72dfcb2806d922eec6656259cbf7a4d2bcf
357357
SwiftLint: 55e96a4a4d537d4a3156859fc1c54bd24851a046
358358
Yoga: f2a7cd4280bfe2cca5a7aed98ba0eb3d1310f18b

example/macos/Podfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ PODS:
217217
- React-cxxreact (= 0.61.39)
218218
- React-jsi (= 0.61.39)
219219
- ReactCommon/jscallinvoker (= 0.61.39)
220-
- ReactTestApp-DevSupport (0.1.1)
220+
- ReactTestApp-DevSupport (0.1.2)
221221
- ReactTestApp-Resources (1.0.0-dev)
222222
- SwiftLint (0.39.2)
223223
- Yoga (1.14.0)
@@ -344,7 +344,7 @@ SPEC CHECKSUMS:
344344
React-RCTText: e81f5065516561545ae40f2c5b84d7b14fe6baec
345345
React-RCTVibration: 2ab29818330374b02167caac117d609159f360ab
346346
ReactCommon: e24f8c0d974cdb872d73cbd87cdfea9d72cfae26
347-
ReactTestApp-DevSupport: dd44c3011f367ab72f51ff61fdb7c9c0e525eccf
347+
ReactTestApp-DevSupport: 67fa5247501557ce874d10b301a121e48966f926
348348
ReactTestApp-Resources: c070f72dfcb2806d922eec6656259cbf7a4d2bcf
349349
SwiftLint: 22ccbbe3b8008684be5955693bab135e0ed6a447
350350
Yoga: 9cc54b8ca13d6fa87f8214c6eac97745e1df8092

ios/ReactTestApp/ReactInstance.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@ final class ReactInstance: NSObject, RCTBridgeDelegate, RCTTurboModuleLookupDele
110110
return remoteBundleURL
111111
}
112112

113+
#if os(iOS)
113114
let possibleEntryFiles = [
114115
"index.ios",
115116
"main.ios",
@@ -120,6 +121,17 @@ final class ReactInstance: NSObject, RCTBridgeDelegate, RCTTurboModuleLookupDele
120121
"index",
121122
"main",
122123
]
124+
#elseif os(macOS)
125+
let possibleEntryFiles = [
126+
"index.macos",
127+
"main.macos",
128+
"index.native",
129+
"main.native",
130+
"index",
131+
"main",
132+
]
133+
#endif
134+
123135
let jsBundleURL = possibleEntryFiles
124136
.lazy
125137
.map({

macos/ReactTestApp/AppDelegate.swift

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,21 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
4646
item.isEnabled = false
4747
item.representedObject = component
4848
}
49+
50+
DispatchQueue.global(qos: .userInitiated).async { [weak self] in
51+
self?.reactInstance.initReact { _ in
52+
DispatchQueue.main.async {
53+
reactMenu.items.forEach { $0.isEnabled = true }
54+
}
55+
}
56+
}
4957
} else {
50-
reactMenu.addItem(
58+
let item = reactMenu.addItem(
5159
withTitle: "Could not load 'app.json'",
5260
action: nil,
5361
keyEquivalent: ""
5462
)
63+
item.isEnabled = false
5564
}
5665

5766
// ReactTestApp File Edit Format View React Window Help
@@ -62,14 +71,6 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
6271
at: 5
6372
)
6473
reactMenuItem.submenu = reactMenu
65-
66-
DispatchQueue.global(qos: .userInitiated).async { [weak self] in
67-
self?.reactInstance.initReact { _ in
68-
DispatchQueue.main.async {
69-
reactMenu.items.forEach { $0.isEnabled = true }
70-
}
71-
}
72-
}
7374
}
7475

7576
func applicationWillTerminate(_ aNotification: Notification) {

0 commit comments

Comments
 (0)