Skip to content

Commit de5ff03

Browse files
committed
add initial iOS support
1 parent 998b2e9 commit de5ff03

File tree

6 files changed

+78
-33
lines changed

6 files changed

+78
-33
lines changed

ios/RNFirebaseImage.h

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
//
2+
// RNFirebaseImage.h
3+
// RNFirebaseUi
4+
//
5+
// Created by erez rokah on 7/11/17.
6+
// Copyright © 2017 Rumors. All rights reserved.
7+
//
8+
9+
#import <React/RCTViewManager.h>
10+
11+
@interface RCTFirebaseImageView : RCTViewManager
12+
13+
@property (nonatomic, copy) NSString *path;
14+
15+
@end

ios/RNFirebaseImage.m

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
//
2+
// RNFirebaseImage.m
3+
// RNFirebaseUi
4+
//
5+
// Created by erez rokah on 7/11/17.
6+
// Copyright © 2017 Rumors. All rights reserved.
7+
//
8+
9+
10+
#import "RNFirebaseImage.h"
11+
#import "Firebase.h"
12+
#import <FirebaseStorageUI/FirebaseStorageUI.h>
13+
14+
@implementation RCTFirebaseImageView
15+
16+
RCT_EXPORT_MODULE()
17+
18+
UIImageView *_imageView;
19+
20+
- (UIView *)view
21+
{
22+
_imageView = [[UIImageView alloc] init];
23+
24+
return _imageView;
25+
}
26+
27+
- (void)setPath:(NSString *)path
28+
{
29+
_path = path;
30+
31+
// Reference to an image file in Firebase Storage
32+
FIRStorageReference *reference = [[FIRStorage storage] referenceWithPath:_path];
33+
34+
// Placeholder image
35+
UIImage *placeholderImage;
36+
37+
// Load the image using SDWebImage
38+
[_imageView sd_setImageWithStorageReference:reference placeholderImage:placeholderImage];
39+
}
40+
41+
@end

ios/RNFirebaseUi.h

Lines changed: 0 additions & 11 deletions
This file was deleted.

ios/RNFirebaseUi.m

Lines changed: 0 additions & 13 deletions
This file was deleted.

ios/RNFirebaseUi.podspec

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,5 @@ Pod::Spec.new do |s|
1717

1818

1919
s.dependency "React"
20-
#s.dependency "others"
21-
20+
s.dependency 'FirebaseUI/Storage', '~> 4.0'
2221
end

ios/RNFirebaseUi.xcodeproj/project.pbxproj

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
B3E7B58A1CC2AC0600A0062D /* RNFirebaseUi.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* RNFirebaseUi.m */; };
10+
B3E7B58A1CC2AC0600A0062D /* RNFirebaseImage.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* RNFirebaseImage.m */; };
1111
/* End PBXBuildFile section */
1212

1313
/* Begin PBXCopyFilesBuildPhase section */
@@ -24,8 +24,8 @@
2424

2525
/* Begin PBXFileReference section */
2626
134814201AA4EA6300B7C361 /* libRNFirebaseUi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNFirebaseUi.a; sourceTree = BUILT_PRODUCTS_DIR; };
27-
B3E7B5881CC2AC0600A0062D /* RNFirebaseUi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNFirebaseUi.h; sourceTree = "<group>"; };
28-
B3E7B5891CC2AC0600A0062D /* RNFirebaseUi.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNFirebaseUi.m; sourceTree = "<group>"; };
27+
B3E7B5891CC2AC0600A0062D /* RNFirebaseImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNFirebaseImage.m; sourceTree = "<group>"; };
28+
BA43A3101F14BB0300791965 /* RNFirebaseImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RNFirebaseImage.h; sourceTree = "<group>"; };
2929
/* End PBXFileReference section */
3030

3131
/* Begin PBXFrameworksBuildPhase section */
@@ -50,8 +50,8 @@
5050
58B511D21A9E6C8500147676 = {
5151
isa = PBXGroup;
5252
children = (
53-
B3E7B5881CC2AC0600A0062D /* RNFirebaseUi.h */,
54-
B3E7B5891CC2AC0600A0062D /* RNFirebaseUi.m */,
53+
B3E7B5891CC2AC0600A0062D /* RNFirebaseImage.m */,
54+
BA43A3101F14BB0300791965 /* RNFirebaseImage.h */,
5555
134814211AA4EA7D00B7C361 /* Products */,
5656
);
5757
sourceTree = "<group>";
@@ -112,7 +112,7 @@
112112
isa = PBXSourcesBuildPhase;
113113
buildActionMask = 2147483647;
114114
files = (
115-
B3E7B58A1CC2AC0600A0062D /* RNFirebaseUi.m in Sources */,
115+
B3E7B58A1CC2AC0600A0062D /* RNFirebaseImage.m in Sources */,
116116
);
117117
runOnlyForDeploymentPostprocessing = 0;
118118
};
@@ -196,11 +196,18 @@
196196
58B511F01A9E6C8500147676 /* Debug */ = {
197197
isa = XCBuildConfiguration;
198198
buildSettings = {
199+
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
200+
FRAMEWORK_SEARCH_PATHS = (
201+
"$(inherited)",
202+
"${BUILT_PRODUCTS_DIR}",
203+
"${PROJECT_DIR}/../../../ios/Pods/**",
204+
);
199205
HEADER_SEARCH_PATHS = (
200-
"$(inherited)",
206+
"$(inherited)",
201207
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
202208
"$(SRCROOT)/../../../React/**",
203209
"$(SRCROOT)/../../react-native/React/**",
210+
"${SRCROOT}/../../../ios/Pods/**",
204211
);
205212
LIBRARY_SEARCH_PATHS = "$(inherited)";
206213
OTHER_LDFLAGS = "-ObjC";
@@ -212,11 +219,18 @@
212219
58B511F11A9E6C8500147676 /* Release */ = {
213220
isa = XCBuildConfiguration;
214221
buildSettings = {
222+
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
223+
FRAMEWORK_SEARCH_PATHS = (
224+
"$(inherited)",
225+
"${BUILT_PRODUCTS_DIR}",
226+
"${PROJECT_DIR}/../../../ios/Pods/**",
227+
);
215228
HEADER_SEARCH_PATHS = (
216229
"$(inherited)",
217230
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
218231
"$(SRCROOT)/../../../React/**",
219232
"$(SRCROOT)/../../react-native/React/**",
233+
"${SRCROOT}/../../../ios/Pods/**",
220234
);
221235
LIBRARY_SEARCH_PATHS = "$(inherited)";
222236
OTHER_LDFLAGS = "-ObjC";

0 commit comments

Comments
 (0)