Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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: 5 additions & 1 deletion .github/workflows/build-ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2

- name: Select Xcode version
run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer

- name: Install npm dependencies (bun)
run: bun install
Expand Down Expand Up @@ -73,4 +76,5 @@ jobs:
-configuration Debug \
-destination 'platform=iOS Simulator,name=iPhone 16' \
build \
CODE_SIGNING_ALLOWED=NO"
CODE_SIGNING_ALLOWED=NO \
IPHONEOS_DEPLOYMENT_TARGET=16.0"
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ class HybridImageFactory: HybridImageFactorySpec() {
}
}

override fun loadFromAssetAsync(assetName: String, options: AssetImageLoadOptions?): Promise<HybridImageSpec> {
throw Error("ImageFactory.loadFromAssetAsync(assetName:options:) is not supported on Android!")
}

@SuppressLint("DiscouragedApi")
override fun loadFromResources(name: String): HybridImageSpec {
val context = NitroModules.applicationContext ?: throw Error("No context!")
Expand Down
16 changes: 10 additions & 6 deletions bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions example/ios/NitroImageExample.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,7 @@
DEVELOPMENT_TEAM = CJW62Q77E7;
ENABLE_BITCODE = NO;
INFOPLIST_FILE = NitroImageExample/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
IPHONEOS_DEPLOYMENT_TARGET = 16.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
Expand Down Expand Up @@ -291,7 +291,7 @@
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = CJW62Q77E7;
INFOPLIST_FILE = NitroImageExample/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
IPHONEOS_DEPLOYMENT_TARGET = 16.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
Expand Down Expand Up @@ -358,7 +358,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
IPHONEOS_DEPLOYMENT_TARGET = 16.0;
LD_RUNPATH_SEARCH_PATHS = (
/usr/lib/swift,
"$(inherited)",
Expand Down Expand Up @@ -431,7 +431,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.1;
IPHONEOS_DEPLOYMENT_TARGET = 16.0;
LD_RUNPATH_SEARCH_PATHS = (
/usr/lib/swift,
"$(inherited)",
Expand Down
128 changes: 64 additions & 64 deletions example/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ PODS:
- ReactCommon/turbomodule/core
- SDWebImage
- Yoga
- NitroModules (0.26.3):
- NitroModules (0.26.4):
- DoubleConversion
- glog
- hermes-engine
Expand Down Expand Up @@ -1396,7 +1396,7 @@ PODS:
- React-jsiexecutor
- React-RCTFBReactNativeSpec
- ReactCommon/turbomodule/core
- react-native-safe-area-context (5.4.1):
- react-native-safe-area-context (5.5.2):
- DoubleConversion
- glog
- hermes-engine
Expand All @@ -1411,8 +1411,8 @@ PODS:
- React-hermes
- React-ImageManager
- React-jsi
- react-native-safe-area-context/common (= 5.4.1)
- react-native-safe-area-context/fabric (= 5.4.1)
- react-native-safe-area-context/common (= 5.5.2)
- react-native-safe-area-context/fabric (= 5.5.2)
- React-NativeModulesApple
- React-RCTFabric
- React-renderercss
Expand All @@ -1422,7 +1422,7 @@ PODS:
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- Yoga
- react-native-safe-area-context/common (5.4.1):
- react-native-safe-area-context/common (5.5.2):
- DoubleConversion
- glog
- hermes-engine
Expand All @@ -1446,7 +1446,7 @@ PODS:
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- Yoga
- react-native-safe-area-context/fabric (5.4.1):
- react-native-safe-area-context/fabric (5.5.2):
- DoubleConversion
- glog
- hermes-engine
Expand Down Expand Up @@ -1866,7 +1866,7 @@ DEPENDENCIES:
- glog (from `../../node_modules/react-native/third-party-podspecs/glog.podspec`)
- hermes-engine (from `../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)
- NitroImage (from `../node_modules/react-native-nitro-image`)
- NitroModules (from `../../node_modules/react-native-nitro-modules`)
- NitroModules (from `../node_modules/react-native-nitro-modules`)
- RCT-Folly (from `../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
- RCT-Folly/Fabric (from `../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
- RCTDeprecation (from `../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`)
Expand Down Expand Up @@ -1963,7 +1963,7 @@ EXTERNAL SOURCES:
NitroImage:
:path: "../node_modules/react-native-nitro-image"
NitroModules:
:path: "../../node_modules/react-native-nitro-modules"
:path: "../node_modules/react-native-nitro-modules"
RCT-Folly:
:podspec: "../../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
RCTDeprecation:
Expand Down Expand Up @@ -2106,78 +2106,78 @@ SPEC CHECKSUMS:
glog: 5683914934d5b6e4240e497e0f4a3b42d1854183
hermes-engine: 94ed01537bdeccaab1adbf94b040d115d6fa1a7f
libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8
NitroImage: 2eafe632dcaca97182171c586f1f649a56d69270
NitroModules: 93590f0d4be83cfa9fef0f9f3feb4f95af6da2fc
RCT-Folly: 36fe2295e44b10d831836cc0d1daec5f8abcf809
NitroImage: 7f0a8fda3268c7169c9f4f23437d5841cbf4c96a
NitroModules: 763fe03c46a734a615e648ff2c77158cd26d8f89
RCT-Folly: e78785aa9ba2ed998ea4151e314036f6c49e6d82
RCTDeprecation: c3e3f5b4ea83e7ff3bc86ce09e2a54b7affd687d
RCTRequired: ee438439880dffc9425930d1dd1a3c883ee6879c
RCTTypeSafety: fe728195791e1a0222aa83596a570cf377cd475e
React: 114ee161feb204412580928b743e6716aebac987
React-callinvoker: d175cf3640a993f6cd960044a7657543157f0ba9
React-Core: e84d47ce3df8dde567f5b9668f6103f8e562d72a
React-CoreModules: ce8e588dca54cd790e2d424d0e678924e62b41b1
React-cxxreact: 2c10954abacc35e876adf46e25ebfd74a0106521
React-Core: cd487c9eeb125c902242bcc76ced12e14adf4ea4
React-CoreModules: 202df4f342e5c2893d5d1899b2856879a90d4bf1
React-cxxreact: 72be57cebb9976199e6130ec6f9d511c6ae3b310
React-debug: 5414189118050ebad6c701942c01c63bb499f5a6
React-defaultsnativemodule: fdde92d2e675382f275cd2e4d09adf553d67cad8
React-domnativemodule: 8557aaaaf238dede0f717d1d8af5a0738301ab2b
React-Fabric: c7e8258e0a2b059f52fa17c43e73840f11dcebc0
React-FabricComponents: 64f9152449dcd5b5e56109bed1b8fccd502c7ea3
React-FabricImage: 0357eaaa48d9faae8250647ed843379c33b8e9e9
React-defaultsnativemodule: d9683a9187744c14c6ce7eb1a1a3649d33591e43
React-domnativemodule: ea54d8fd1ee946a97654635f5a4d9245f6588006
React-Fabric: 3cdce860fd1079c27f8cd8e029f716e6c4b34a4e
React-FabricComponents: 126c59bb8d69d795492e2a2c97a0c1738a29730b
React-FabricImage: 6cf335909c59746e7aca2180901367978cc21959
React-featureflags: 670eb7cdf1495ea7bf392f653c19268291acaad1
React-featureflagsnativemodule: 7c00e55641b40f8b756a8782daa19d905762381d
React-graphics: c90ff68c04d51c184afb6d60646bddb049a2fe10
React-hermes: 2a9fb8df8a1be5e5b065c91d7b0fad072554055e
React-idlecallbacksnativemodule: 740dd584b66c31fe5f728b8dff4bf6b423074bce
React-ImageManager: 57474ab8176ce1778188326912370ed452712fe2
React-jserrorhandler: e1c5c0eb4c307ee8bea7e4ce5c34f9952a771060
React-jsi: 606a42a46f9a7299c1757686c6856eca8346754b
React-jsiexecutor: 762ee9c7962597d2f168afee00a0cac7573e6e48
React-jsinspector: 1c392e230b5a7bb58081021f3be5d17858eb1ef5
React-jsinspectortracing: 09132689843f824945b68895daf5fc7e27d71742
React-jsitooling: 9f834140bdeebb07b1503790b1066acb862e1c53
React-jsitracing: 9535edb956a9784fa406e35c05c83a45a64ca403
React-logger: 44e070aefe084568c02b544b9d7d436703be1a47
React-Mapbuffer: b25dedf7fe8923898c44b217ee2ef75c837d0e6a
React-microtasksnativemodule: 22bd119cb27aa28ff15a4e9311e1a53034c14eab
react-native-safe-area-context: dc279397abf103b0577f48c548630b7e639646a7
React-NativeModulesApple: 28df2c2241d8e2be46db34179f86ad76a3663068
React-featureflagsnativemodule: 16b4eae0bf4d838e0a807c6b0cde2b4ae84534ef
React-graphics: 0d6b3201d0414e56897f09693df82d601cac0613
React-hermes: a40e47b18c31efe4baa7942357e2327ddab63918
React-idlecallbacksnativemodule: 37c6d6053ad5123405b0fbb695c44841273482dd
React-ImageManager: 1f5cb695a06454329759bfce8548ac0d4fcd069e
React-jserrorhandler: a8214a9f297af6ee3cb004e2cb5185214cfc4360
React-jsi: ae02c9d6d68dbed80a9fde8f6d6198035ca154ce
React-jsiexecutor: 8c266057f23430685a2d928703e77eda80e1742e
React-jsinspector: 8789c28cbd63ff818d23550556490883caa89cdb
React-jsinspectortracing: 150180f7ed6fd2252308b5608b62ea698ca087b6
React-jsitooling: 1fd5c99a3688a5152781be4ecfb88ca9c6cb11d8
React-jsitracing: c87b3d789f4d5053a2518fb8202c1e1ccd6848a9
React-logger: 514fac028fee60c84591f951c7c04ba1c5023334
React-Mapbuffer: fae8da2c01aeb7f26ad739731b6dba61fd02fd97
React-microtasksnativemodule: 20454ffccff553f0ee73fd20873aa8555a5867fb
react-native-safe-area-context: 7e926a200d4bc9c56562275743705c6b56176455
React-NativeModulesApple: 65b2735133d6ce8a3cb5f23215ef85e427b0139c
React-oscompat: f26aa2a4adc84c34212ab12c07988fe19e9cf16a
React-perflogger: fb196ad3fa3263afc55f773a10c2741517a27f7c
React-performancetimeline: 4979f4bf1c13bd4b8050e5599c92c0c8a5f4f7ad
React-perflogger: e15a0d43d1928e1c82f4f0b7fc05f7e9bccfede8
React-performancetimeline: 064f2767a5d4d71547ea32a3cd8a76a101dfd11f
React-RCTActionSheet: c89c8b9b7c3ef87cb6a67e20f5eaea271f4b5f67
React-RCTAnimation: 8cff4eda84c7e70c674c50763c724c660ae7e56c
React-RCTAppDelegate: 12b784fb29e25a606aaf869d11efb4ae97bb81b3
React-RCTBlob: 105ead00cc3cb7ed4180481cec7cb68829c0c16b
React-RCTFabric: 1b51a08f06f61bd757b3b3bf8e38240cbd969056
React-RCTFBReactNativeSpec: c3bfd143e072358d0d8b7efc97fb6a09e77f8f46
React-RCTImage: ef3831114706dbb9ccab839abe804edef1e1faab
React-RCTLinking: eadceef820a11dd2bc7b4b569406eacc637c7f82
React-RCTNetwork: 9e1323f0cdfaf0f561d8a6667363cc8deadf41e8
React-RCTRuntime: 2427ecba97fbfdd430b443ee4e5cb1ca195897b2
React-RCTSettings: 482bb7da0e94823cd1a36edd408c85abb2d2e42a
React-RCTText: d103fac423b92be0ed295767ea4c2ecc1f4389fd
React-RCTVibration: 816504f335105f0682467823400436e18ec98b7b
React-RCTAnimation: e00af558ccb5fedd380ae32329be4c38e92e9b90
React-RCTAppDelegate: 10d98d4867643322fa4fcd04548359ac88c74656
React-RCTBlob: ef645bccf9c33d3b4391794983744da897474dfb
React-RCTFabric: 06ff9416fc48742bba58ed81a0d0a62bf0f8c7ec
React-RCTFBReactNativeSpec: e0942c2c7efa10303c63e287c1c1788aeb6d99ef
React-RCTImage: 0e3669a0bda8995874736d0f8f12c21d522df3c4
React-RCTLinking: bd81ec3d1b6686a7c58bc8ed8b7a1f05ff2b3f8b
React-RCTNetwork: 20b8044841a043b80e7027e1bc4049ffa552d1fa
React-RCTRuntime: 0084733b33619670bea35cb02c96412d9271718e
React-RCTSettings: fa1d3e6c302e9980b5670315e2ccc998255ce32a
React-RCTText: 71f01a9261c015b76702e9d7a4153c9ca45f2341
React-RCTVibration: 0e05fa4647ec1391c409fcc1cbd7cdb4894d80ef
React-rendererconsistency: 6a79c0a31890942940480f6e761365c4f604394f
React-renderercss: 7635fe6c07a8e2e2e428c022bdc8475986e714d2
React-rendererdebug: cc2fb12e1a64342a970c1b45e88549fe8a41d7e4
React-renderercss: 18c7ae4971ae6eb6c6c1d4c8f241a856a8e4243f
React-rendererdebug: d621c08946310b44e58a80b6bf96a6c13e779cff
React-rncore: 91456f1e8feadf5216b37073968c16c14061f8d7
React-RuntimeApple: 0bbd2594e65b794e3ca8c678008b7b9a746c03eb
React-RuntimeCore: 9feee9dbf2e7d6db7770655026c4a7577c5b21ab
React-RuntimeApple: 013c318ce9b3506b4fc7abe67369fdd14fc18bea
React-RuntimeCore: 66eaaf42eae393a1d592557493a70b80f051f885
React-runtimeexecutor: 4e7bc0119ff38f80df43d109ef9508497cac1eee
React-RuntimeHermes: 177ec426c0307f4eda0d9ece5a5d7424aaf2ce6c
React-runtimescheduler: 0d063fb7f7b4dcc1032503f2180e2537ad710e40
React-RuntimeHermes: 2878d6e471ac3eb88ecc946d07938c4f9ec4f63e
React-runtimescheduler: ea0278e84e37a64a0f02b5bcb98fec1d49450fe7
React-timing: 4e298a80e9a41c31d884df0422c9eb73a240ec0d
React-utils: f2cfe205e3206aac6a263ce749f5ddb62d0b238d
ReactAppDependencyProvider: 552391af67c115d8ee20f9359711e7821145cd96
ReactCodegen: a38bb58167580e1823678d788e0ee6060e2d8b4a
ReactCommon: b7062f81f6ea61ec29e03aab1d439fb56c49372c
RNFastImage: 5c9c9fed9c076e521b3f509fe79e790418a544e8
RNScreens: c2e3cc506212228c607b4785b315205e28acbf0f
React-utils: fbb79f805d13e0613bc1f799c7bbe5659a0d5ba9
ReactAppDependencyProvider: e6d0c3c3cc9862a3ccef0c252835cd7ccb96313d
ReactCodegen: 16c2bfcebf870208d7e29ff0c065f4c0fa03034d
ReactCommon: e243aa261effc83c10208f0794bade55ca9ae5b6
RNFastImage: 462a183c4b0b6b26fdfd639e1ed6ba37536c3b87
RNScreens: 482e9707f9826230810c92e765751af53826d509
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d
SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748
Yoga: 645152fcc8359c80cdeb9be7a9e0d2e6c01304a4
Yoga: 29f74a5b77dca8c37669e1e1e867e5f4e12407df

PODFILE CHECKSUM: 8c90c25c7a6bc16ec7b3ed7968df16467ab0fc35

COCOAPODS: 1.15.2
COCOAPODS: 1.16.2
4 changes: 2 additions & 2 deletions example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"react-native": "0.79.3",
"react-native-fast-image": "^8.6.3",
"react-native-nitro-image": "..",
"react-native-nitro-modules": "^0.26.3",
"react-native-nitro-modules": "^0.26.4",
"react-native-safe-area-context": "^5.4.1",
"react-native-screens": "^4.11.1"
},
Expand All @@ -36,4 +36,4 @@
"engines": {
"node": ">=18"
}
}
}
7 changes: 7 additions & 0 deletions ios/HybridImageFactory.swift
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,13 @@ class HybridImageFactory: HybridImageFactorySpec {
return HybridImage(uiImage: uiImage)
}
}

/**
* Load Image from URL
*/
func loadFromAssetAsync(assetId assetId: String, options: AssetImageLoadOptions?) throws -> Promise<any HybridImageSpec> {
throw RuntimeError.error(withMessage: "Not implemented!")
}

/**
* Load Image from file path
Expand Down
Loading
Loading