Skip to content

Commit 211262c

Browse files
authored
2.4.0 #188
2 parents bcfbeb1 + af98f5c commit 211262c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+5819
-413
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,7 @@ Colors:
357357
* `detailTextColor`
358358
* `separatorColor`
359359
* `headerTextColor`
360+
* `headerBackgroundColor`
360361
* `footerTextColor`
361362

362363
Base font:

RNTableView/RNTableView.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
@property(nonatomic, strong) UIFont *detailFont;
6060
@property(nonatomic, strong) UIFont *headerFont;
6161
@property(nonatomic, strong) UIColor *headerTextColor;
62+
@property(nonatomic, strong) UIColor *headerBackgroundColor;
6263
@property(nonatomic, strong) UIFont *footerFont;
6364
@property(nonatomic, strong) UIColor *footerTextColor;
6465

RNTableView/RNTableView.m

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,11 @@ - (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view
306306
if (self.headerFont){
307307
header.textLabel.font = self.headerFont;
308308
}
309+
310+
if (self.headerBackgroundColor) {
311+
312+
header.contentView.backgroundColor = self.headerBackgroundColor;
313+
}
309314
}
310315

311316
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
@@ -594,6 +599,15 @@ - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEd
594599

595600
[_sections[indexPath.section][@"items"] removeObjectAtIndex:indexPath.row];
596601
[self.tableView reloadData];
602+
} else if (editingStyle == UITableViewCellEditingStyleInsert) {
603+
NSMutableDictionary *newValue = [self dataForRow:indexPath.item section:indexPath.section];
604+
newValue[@"target"] = self.reactTag;
605+
newValue[@"selectedIndex"] = [NSNumber numberWithInteger:indexPath.item];
606+
newValue[@"selectedSection"] = [NSNumber numberWithInteger:indexPath.section];
607+
newValue[@"mode"] = @"insert";
608+
609+
self.onChange(newValue);
610+
[self.tableView reloadData];
597611
}
598612
}
599613

RNTableView/RNTableViewManager.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ - (NSArray *)customDirectEventTypes
5656
RCT_EXPORT_VIEW_PROPERTY(selectedBackgroundColor, UIColor)
5757
RCT_EXPORT_VIEW_PROPERTY(detailTextColor, UIColor)
5858
RCT_EXPORT_VIEW_PROPERTY(headerTextColor, UIColor)
59+
RCT_EXPORT_VIEW_PROPERTY(headerBackgroundColor, UIColor)
5960
RCT_EXPORT_VIEW_PROPERTY(footerTextColor, UIColor)
6061
RCT_EXPORT_VIEW_PROPERTY(separatorColor, UIColor)
6162
RCT_EXPORT_VIEW_PROPERTY(moveWithinSectionOnly, BOOL)

example/.babelrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"presets": ["react-native"]
2+
"presets": ["module:metro-react-native-babel-preset"]
33
}

example/.flowconfig

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,33 +16,55 @@
1616
; Ignore polyfills
1717
.*/Libraries/polyfills/.*
1818

19+
; Ignore metro
20+
.*/node_modules/metro/.*
21+
1922
[include]
2023

2124
[libs]
2225
node_modules/react-native/Libraries/react-native/react-native-interface.js
2326
node_modules/react-native/flow/
27+
node_modules/react-native/flow-github/
2428

2529
[options]
2630
emoji=true
2731

32+
esproposal.optional_chaining=enable
33+
esproposal.nullish_coalescing=enable
34+
2835
module.system=haste
36+
module.system.haste.use_name_reducers=true
37+
# get basename
38+
module.system.haste.name_reducers='^.*/\([a-zA-Z0-9$_.-]+\.js\(\.flow\)?\)$' -> '\1'
39+
# strip .js or .js.flow suffix
40+
module.system.haste.name_reducers='^\(.*\)\.js\(\.flow\)?$' -> '\1'
41+
# strip .ios suffix
42+
module.system.haste.name_reducers='^\(.*\)\.ios$' -> '\1'
43+
module.system.haste.name_reducers='^\(.*\)\.android$' -> '\1'
44+
module.system.haste.name_reducers='^\(.*\)\.native$' -> '\1'
45+
module.system.haste.paths.blacklist=.*/__tests__/.*
46+
module.system.haste.paths.blacklist=.*/__mocks__/.*
47+
module.system.haste.paths.blacklist=<PROJECT_ROOT>/node_modules/react-native/Libraries/Animated/src/polyfills/.*
48+
module.system.haste.paths.whitelist=<PROJECT_ROOT>/node_modules/react-native/Libraries/.*
2949

3050
munge_underscores=true
3151

3252
module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub'
3353

54+
module.file_ext=.js
55+
module.file_ext=.jsx
56+
module.file_ext=.json
57+
module.file_ext=.native.js
58+
3459
suppress_type=$FlowIssue
3560
suppress_type=$FlowFixMe
3661
suppress_type=$FlowFixMeProps
3762
suppress_type=$FlowFixMeState
38-
suppress_type=$FixMe
3963

40-
suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)
41-
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+
64+
suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)
65+
suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+
4266
suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy
4367
suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError
4468

45-
unsafe.enable_getters_and_setters=true
46-
4769
[version]
48-
^0.56.0
70+
^0.78.0

example/.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,5 @@ buck-out/
5252
*/fastlane/Preview.html
5353
*/fastlane/screenshots
5454

55-
yarn.lock
55+
# Bundle artifact
56+
*.jsbundle

example/__tests__/App.js

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

example/android/app/build.gradle

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -94,13 +94,13 @@ def enableSeparateBuildPerCPUArchitecture = false
9494
def enableProguardInReleaseBuilds = false
9595

9696
android {
97-
compileSdkVersion 23
98-
buildToolsVersion "23.0.1"
97+
compileSdkVersion rootProject.ext.compileSdkVersion
98+
buildToolsVersion rootProject.ext.buildToolsVersion
9999

100100
defaultConfig {
101101
applicationId "com.tableviewdemo"
102-
minSdkVersion 16
103-
targetSdkVersion 22
102+
minSdkVersion rootProject.ext.minSdkVersion
103+
targetSdkVersion rootProject.ext.targetSdkVersion
104104
versionCode 1
105105
versionName "1.0"
106106
ndk {
@@ -137,9 +137,9 @@ android {
137137
}
138138

139139
dependencies {
140-
compile fileTree(dir: "libs", include: ["*.jar"])
141-
compile "com.android.support:appcompat-v7:23.0.1"
142-
compile "com.facebook.react:react-native:+" // From node_modules
140+
implementation fileTree(dir: "libs", include: ["*.jar"])
141+
implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
142+
implementation "com.facebook.react:react-native:+" // From node_modules
143143
}
144144

145145
// Run this once to be able to run the application with BUCK

example/android/app/proguard-rules.pro

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -15,56 +15,3 @@
1515
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
1616
# public *;
1717
#}
18-
19-
# Disabling obfuscation is useful if you collect stack traces from production crashes
20-
# (unless you are using a system that supports de-obfuscate the stack traces).
21-
-dontobfuscate
22-
23-
# React Native
24-
25-
# Keep our interfaces so they can be used by other ProGuard rules.
26-
# See http://sourceforge.net/p/proguard/bugs/466/
27-
-keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip
28-
-keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters
29-
-keep,allowobfuscation @interface com.facebook.common.internal.DoNotStrip
30-
31-
# Do not strip any method/class that is annotated with @DoNotStrip
32-
-keep @com.facebook.proguard.annotations.DoNotStrip class *
33-
-keep @com.facebook.common.internal.DoNotStrip class *
34-
-keepclassmembers class * {
35-
@com.facebook.proguard.annotations.DoNotStrip *;
36-
@com.facebook.common.internal.DoNotStrip *;
37-
}
38-
39-
-keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * {
40-
void set*(***);
41-
*** get*();
42-
}
43-
44-
-keep class * extends com.facebook.react.bridge.JavaScriptModule { *; }
45-
-keep class * extends com.facebook.react.bridge.NativeModule { *; }
46-
-keepclassmembers,includedescriptorclasses class * { native <methods>; }
47-
-keepclassmembers class * { @com.facebook.react.uimanager.UIProp <fields>; }
48-
-keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactProp <methods>; }
49-
-keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactPropGroup <methods>; }
50-
51-
-dontwarn com.facebook.react.**
52-
53-
# TextLayoutBuilder uses a non-public Android constructor within StaticLayout.
54-
# See libs/proxy/src/main/java/com/facebook/fbui/textlayoutbuilder/proxy for details.
55-
-dontwarn android.text.StaticLayout
56-
57-
# okhttp
58-
59-
-keepattributes Signature
60-
-keepattributes *Annotation*
61-
-keep class okhttp3.** { *; }
62-
-keep interface okhttp3.** { *; }
63-
-dontwarn okhttp3.**
64-
65-
# okio
66-
67-
-keep class sun.misc.Unsafe { *; }
68-
-dontwarn java.nio.file.*
69-
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
70-
-dontwarn okio.**

0 commit comments

Comments
 (0)