expo-json-utils 0.7.0 → 0.8.0
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,16 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 0.8.0 — 2023-07-28
|
|
14
|
+
|
|
15
|
+
_This version does not introduce any user-facing changes._
|
|
16
|
+
|
|
17
|
+
## 0.7.1 - 2023-07-10
|
|
18
|
+
|
|
19
|
+
### 🛠 Breaking changes
|
|
20
|
+
|
|
21
|
+
- [ios] Prefix category methods to reduce likelihood of conflicts. ([#23441](https://github.com/expo/expo/pull/23441) by [@wschurman](https://github.com/wschurman))
|
|
22
|
+
|
|
13
23
|
## 0.7.0 — 2023-06-21
|
|
14
24
|
|
|
15
25
|
### 📚 3rd party library updates
|
package/android/build.gradle
CHANGED
|
@@ -3,7 +3,7 @@ apply plugin: 'kotlin-android'
|
|
|
3
3
|
apply plugin: 'maven-publish'
|
|
4
4
|
|
|
5
5
|
group = 'host.exp.exponent'
|
|
6
|
-
version = '0.
|
|
6
|
+
version = '0.8.0'
|
|
7
7
|
|
|
8
8
|
buildscript {
|
|
9
9
|
def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
|
|
@@ -67,7 +67,7 @@ android {
|
|
|
67
67
|
minSdkVersion safeExtGet("minSdkVersion", 21)
|
|
68
68
|
targetSdkVersion safeExtGet("targetSdkVersion", 33)
|
|
69
69
|
versionCode 31
|
|
70
|
-
versionName '0.
|
|
70
|
+
versionName '0.8.0'
|
|
71
71
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
72
72
|
}
|
|
73
73
|
lintOptions {
|
|
@@ -6,14 +6,14 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
6
6
|
|
|
7
7
|
@interface NSDictionary<__covariant KeyType, __covariant ObjectType> (EXJSONUtils)
|
|
8
8
|
|
|
9
|
-
- (NSString *)
|
|
10
|
-
- (nullable NSString *)
|
|
11
|
-
- (NSNumber *)
|
|
12
|
-
- (nullable NSNumber *)
|
|
13
|
-
- (NSArray *)
|
|
14
|
-
- (nullable NSArray *)
|
|
15
|
-
- (NSDictionary *)
|
|
16
|
-
- (nullable NSDictionary *)
|
|
9
|
+
- (NSString *)expo_stringForKey:(KeyType)key;
|
|
10
|
+
- (nullable NSString *)expo_nullableStringForKey:(KeyType)key;
|
|
11
|
+
- (NSNumber *)expo_numberForKey:(KeyType)key;
|
|
12
|
+
- (nullable NSNumber *)expo_nullableNumberForKey:(KeyType)key;
|
|
13
|
+
- (NSArray *)expo_arrayForKey:(KeyType)key;
|
|
14
|
+
- (nullable NSArray *)expo_nullableArrayForKey:(KeyType)key;
|
|
15
|
+
- (NSDictionary *)expo_dictionaryForKey:(KeyType)key;
|
|
16
|
+
- (nullable NSDictionary *)expo_nullableDictionaryForKey:(KeyType)key;
|
|
17
17
|
|
|
18
18
|
@end
|
|
19
19
|
|
|
@@ -19,35 +19,35 @@
|
|
|
19
19
|
|
|
20
20
|
@implementation NSDictionary (EXJSONUtils)
|
|
21
21
|
|
|
22
|
-
- (NSString *)
|
|
22
|
+
- (NSString *)expo_stringForKey:(id)key {
|
|
23
23
|
return EXGetNonNullManifestValue(NSString, key);
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
- (nullable NSString *)
|
|
26
|
+
- (nullable NSString *)expo_nullableStringForKey:(id)key {
|
|
27
27
|
return EXGetNullableManifestValue(NSString, key);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
- (NSNumber *)
|
|
30
|
+
- (NSNumber *)expo_numberForKey:(id)key {
|
|
31
31
|
return EXGetNonNullManifestValue(NSNumber, key);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
- (nullable NSNumber *)
|
|
34
|
+
- (nullable NSNumber *)expo_nullableNumberForKey:(id)key {
|
|
35
35
|
return EXGetNullableManifestValue(NSNumber, key);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
- (NSArray *)
|
|
38
|
+
- (NSArray *)expo_arrayForKey:(id)key {
|
|
39
39
|
return EXGetNonNullManifestValue(NSArray, key);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
- (nullable NSArray *)
|
|
42
|
+
- (nullable NSArray *)expo_nullableArrayForKey:(id)key {
|
|
43
43
|
return EXGetNullableManifestValue(NSArray, key);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
- (NSDictionary *)
|
|
46
|
+
- (NSDictionary *)expo_dictionaryForKey:(id)key {
|
|
47
47
|
return EXGetNonNullManifestValue(NSDictionary, key);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
- (nullable NSDictionary *)
|
|
50
|
+
- (nullable NSDictionary *)expo_nullableDictionaryForKey:(id)key {
|
|
51
51
|
return EXGetNullableManifestValue(NSDictionary, key);
|
|
52
52
|
}
|
|
53
53
|
|
|
@@ -22,51 +22,51 @@
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
- (void)test_stringForKey {
|
|
25
|
-
XCTAssertEqual([self.testData
|
|
26
|
-
XCTAssertThrows([self.testData
|
|
27
|
-
XCTAssertThrows([self.testData
|
|
25
|
+
XCTAssertEqual([self.testData expo_stringForKey:@"string"], @"hello");
|
|
26
|
+
XCTAssertThrows([self.testData expo_stringForKey:@"number"]);
|
|
27
|
+
XCTAssertThrows([self.testData expo_stringForKey:@"nonexistent"]);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
- (void)test_nullableStringForKey {
|
|
31
|
-
XCTAssertEqual([self.testData
|
|
32
|
-
XCTAssertNil([self.testData
|
|
33
|
-
XCTAssertThrows([self.testData
|
|
31
|
+
XCTAssertEqual([self.testData expo_nullableStringForKey:@"string"], @"hello");
|
|
32
|
+
XCTAssertNil([self.testData expo_nullableStringForKey:@"nonexistent"]);
|
|
33
|
+
XCTAssertThrows([self.testData expo_nullableStringForKey:@"number"]);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
- (void)test_numberForKey {
|
|
37
|
-
XCTAssertEqual([self.testData
|
|
38
|
-
XCTAssertThrows([self.testData
|
|
39
|
-
XCTAssertThrows([self.testData
|
|
37
|
+
XCTAssertEqual([self.testData expo_numberForKey:@"number"], @2);
|
|
38
|
+
XCTAssertThrows([self.testData expo_numberForKey:@"string"]);
|
|
39
|
+
XCTAssertThrows([self.testData expo_numberForKey:@"nonexistent"]);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
- (void)test_nullableNumberForKey {
|
|
43
|
-
XCTAssertEqual([self.testData
|
|
44
|
-
XCTAssertNil([self.testData
|
|
45
|
-
XCTAssertThrows([self.testData
|
|
43
|
+
XCTAssertEqual([self.testData expo_nullableNumberForKey:@"number"], @2);
|
|
44
|
+
XCTAssertNil([self.testData expo_nullableNumberForKey:@"nonexistent"]);
|
|
45
|
+
XCTAssertThrows([self.testData expo_nullableNumberForKey:@"string"]);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
- (void)test_dictionaryForKey {
|
|
49
|
-
XCTAssertEqual([self.testData
|
|
50
|
-
XCTAssertThrows([self.testData
|
|
51
|
-
XCTAssertThrows([self.testData
|
|
49
|
+
XCTAssertEqual([self.testData expo_dictionaryForKey:@"dictionary"], @{});
|
|
50
|
+
XCTAssertThrows([self.testData expo_dictionaryForKey:@"string"]);
|
|
51
|
+
XCTAssertThrows([self.testData expo_dictionaryForKey:@"nonexistent"]);
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
- (void)test_nullableDictionaryForKey {
|
|
55
|
-
XCTAssertEqual([self.testData
|
|
56
|
-
XCTAssertNil([self.testData
|
|
57
|
-
XCTAssertThrows([self.testData
|
|
55
|
+
XCTAssertEqual([self.testData expo_nullableDictionaryForKey:@"dictionary"], @{});
|
|
56
|
+
XCTAssertNil([self.testData expo_nullableDictionaryForKey:@"nonexistent"]);
|
|
57
|
+
XCTAssertThrows([self.testData expo_nullableDictionaryForKey:@"string"]);
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
- (void)arrayForKey {
|
|
61
|
-
XCTAssertEqual([self.testData
|
|
62
|
-
XCTAssertThrows([self.testData
|
|
63
|
-
XCTAssertThrows([self.testData
|
|
61
|
+
XCTAssertEqual([self.testData expo_arrayForKey:@"array"], @[]);
|
|
62
|
+
XCTAssertThrows([self.testData expo_arrayForKey:@"string"]);
|
|
63
|
+
XCTAssertThrows([self.testData expo_arrayForKey:@"nonexistent"]);
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
- (void)test_nullableArrayForKey {
|
|
67
|
-
XCTAssertEqual([self.testData
|
|
68
|
-
XCTAssertNil([self.testData
|
|
69
|
-
XCTAssertThrows([self.testData
|
|
67
|
+
XCTAssertEqual([self.testData expo_nullableArrayForKey:@"array"], @[]);
|
|
68
|
+
XCTAssertNil([self.testData expo_nullableArrayForKey:@"nonexistent"]);
|
|
69
|
+
XCTAssertThrows([self.testData expo_nullableArrayForKey:@"string"]);
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
@end
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-json-utils",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Utilities for reading NSDictionaries (iOS) and JSONObjects (Android).",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"keywords": [
|
|
@@ -19,5 +19,5 @@
|
|
|
19
19
|
"author": "650 Industries, Inc.",
|
|
20
20
|
"license": "MIT",
|
|
21
21
|
"homepage": "https://docs.expo.dev/versions/latest/sdk/module-template",
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "663654577a7068c641b5e9474efbc502e3f334ea"
|
|
23
23
|
}
|