@ua/react-native-airship 20.1.0 → 21.0.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/android/gradle.properties +4 -4
- package/android/src/main/java/com/urbanairship/reactnative/AirshipModule.kt +132 -166
- package/android/src/main/java/com/urbanairship/reactnative/ReactAutopilot.kt +26 -3
- package/android/src/main/java/com/urbanairship/reactnative/ReactMessageView.kt +71 -55
- package/android/src/main/java/com/urbanairship/reactnative/ReactNotificationProvider.kt +0 -5
- package/android/src/oldarch/java/com/urbanairship/reactnative/AirshipSpec.kt +14 -2
- package/ios/AirshipReactNative.swift +106 -25
- package/ios/MessageWebViewWrapper.swift +6 -6
- package/ios/ProxyDataMigrator.swift +1 -0
- package/ios/RTNAirship.mm +40 -2
- package/lib/commonjs/AirshipFeatureFlagManager.js +53 -14
- package/lib/commonjs/AirshipFeatureFlagManager.js.map +1 -1
- package/lib/commonjs/NativeRTNAirship.js.map +1 -1
- package/lib/module/AirshipFeatureFlagManager.js +51 -13
- package/lib/module/AirshipFeatureFlagManager.js.map +1 -1
- package/lib/module/NativeRTNAirship.js.map +1 -1
- package/lib/typescript/AirshipFeatureFlagManager.d.ts +39 -12
- package/lib/typescript/AirshipFeatureFlagManager.d.ts.map +1 -1
- package/lib/typescript/NativeRTNAirship.d.ts +4 -1
- package/lib/typescript/NativeRTNAirship.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native-airship.podspec +2 -3
- package/src/AirshipFeatureFlagManager.ts +47 -7
- package/src/NativeRTNAirship.ts +4 -1
package/ios/RTNAirship.mm
CHANGED
|
@@ -133,8 +133,8 @@ RCT_REMAP_METHOD(channelEnableChannelCreation,
|
|
|
133
133
|
RCT_REMAP_METHOD(pushGetActiveNotifications,
|
|
134
134
|
pushGetActiveNotifications:(RCTPromiseResolveBlock)resolve
|
|
135
135
|
reject:(RCTPromiseRejectBlock)reject) {
|
|
136
|
-
[AirshipReactNative.shared pushGetActiveNotificationsWithCompletionHandler:^(NSArray<NSDictionary<NSString *,id> *> *result) {
|
|
137
|
-
resolve
|
|
136
|
+
[AirshipReactNative.shared pushGetActiveNotificationsWithCompletionHandler:^(NSArray<NSDictionary<NSString *,id> *> *result, NSError *error) {
|
|
137
|
+
[self handleResult:result error:error resolve:resolve reject:reject];
|
|
138
138
|
}];
|
|
139
139
|
}
|
|
140
140
|
|
|
@@ -783,15 +783,53 @@ RCT_REMAP_METHOD(featureFlagManagerTrackInteraction,
|
|
|
783
783
|
|
|
784
784
|
RCT_REMAP_METHOD(featureFlagManagerFlag,
|
|
785
785
|
featureFlagManagerFlag:(NSString *)flagName
|
|
786
|
+
useResultCache:(BOOL)useResultCache
|
|
786
787
|
featureFlagManagerFlag:(RCTPromiseResolveBlock)resolve
|
|
787
788
|
reject:(RCTPromiseRejectBlock)reject) {
|
|
788
789
|
|
|
789
790
|
[AirshipReactNative.shared featureFlagManagerFlagWithFlagName:flagName
|
|
791
|
+
useResultCache:useResultCache
|
|
792
|
+
completionHandler:^(id result, NSError * _Nullable error) {
|
|
793
|
+
[self handleResult:result error:error resolve:resolve reject:reject];
|
|
794
|
+
}];
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
RCT_REMAP_METHOD(featureFlagManagerResultCacheGetFlag,
|
|
798
|
+
featureFlagManagerResultCacheGetFlag:(NSString *)flagName
|
|
799
|
+
featureFlagManagerResultCacheGetFlag:(RCTPromiseResolveBlock)resolve
|
|
800
|
+
reject:(RCTPromiseRejectBlock)reject) {
|
|
801
|
+
|
|
802
|
+
[AirshipReactNative.shared featureFlagManagerResultCacheGetFlagWithName:flagName
|
|
790
803
|
completionHandler:^(id result, NSError * _Nullable error) {
|
|
791
804
|
[self handleResult:result error:error resolve:resolve reject:reject];
|
|
792
805
|
}];
|
|
793
806
|
}
|
|
794
807
|
|
|
808
|
+
RCT_REMAP_METHOD(featureFlagManagerResultCacheSetFlag,
|
|
809
|
+
featureFlagManagerResultCacheSetFlag:(NSDictionary *)flag
|
|
810
|
+
ttl:(nonnull NSNumber *)ttl
|
|
811
|
+
featureFlagManagerResultCacheGetFlag:(RCTPromiseResolveBlock)resolve
|
|
812
|
+
reject:(RCTPromiseRejectBlock)reject) {
|
|
813
|
+
|
|
814
|
+
[AirshipReactNative.shared featureFlagManagerResultCacheSetFlagWithFlag:flag
|
|
815
|
+
ttl:ttl
|
|
816
|
+
completionHandler:^(NSError * _Nullable error) {
|
|
817
|
+
[self handleResult:nil error:error resolve:resolve reject:reject];
|
|
818
|
+
}];
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
RCT_REMAP_METHOD(featureFlagManagerResultCacheRemoveFlag,
|
|
822
|
+
featureFlagManagerResultCacheRemoveFlag:(NSString *)flagName
|
|
823
|
+
featureFlagManagerResultCacheRemoveFlag:(RCTPromiseResolveBlock)resolve
|
|
824
|
+
reject:(RCTPromiseRejectBlock)reject) {
|
|
825
|
+
|
|
826
|
+
[AirshipReactNative.shared featureFlagManagerResultCacheRemoveFlagWithName:flagName
|
|
827
|
+
completionHandler:^(NSError * _Nullable error) {
|
|
828
|
+
[self handleResult:nil error:error resolve:resolve reject:reject];
|
|
829
|
+
}];
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
|
|
795
833
|
RCT_REMAP_METHOD(liveActivityListAll,
|
|
796
834
|
liveActivityListAll:(RCTPromiseResolveBlock)resolve
|
|
797
835
|
reject:(RCTPromiseRejectBlock)reject) {
|
|
@@ -3,35 +3,74 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.AirshipFeatureFlagManager = void 0;
|
|
6
|
+
exports.AirshipFeatureFlagResultCache = exports.AirshipFeatureFlagManager = void 0;
|
|
7
7
|
/**
|
|
8
8
|
* Airship feature flag manager.
|
|
9
9
|
*/
|
|
10
10
|
class AirshipFeatureFlagManager {
|
|
11
|
+
/**
|
|
12
|
+
* Feature flag cache.
|
|
13
|
+
*/
|
|
14
|
+
|
|
11
15
|
constructor(module) {
|
|
12
16
|
this.module = module;
|
|
17
|
+
this.resultCache = new AirshipFeatureFlagResultCache(module);
|
|
13
18
|
}
|
|
14
19
|
|
|
15
20
|
/**
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
flag(flagName) {
|
|
23
|
-
return this.module.featureFlagManagerFlag(flagName);
|
|
21
|
+
* Retrieve a given flag's status and associated data by its name.
|
|
22
|
+
* @param {string} flagName The flag name
|
|
23
|
+
* @param {boolean} useResultCache If the response should use result cache or not.
|
|
24
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag requested.
|
|
25
|
+
* @throws {Error} when failed to fetch
|
|
26
|
+
*/
|
|
27
|
+
flag(flagName, useResultCache = true) {
|
|
28
|
+
return this.module.featureFlagManagerFlag(flagName, useResultCache);
|
|
24
29
|
}
|
|
25
30
|
|
|
26
31
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
* Tracks a feature flag interaction event.
|
|
33
|
+
* @param {FeatureFlag} flag The flag
|
|
34
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
35
|
+
* @throws {Error} when failed to fetch
|
|
36
|
+
*/
|
|
32
37
|
trackInteraction(flag) {
|
|
33
38
|
return this.module.featureFlagManagerTrackInteraction(flag);
|
|
34
39
|
}
|
|
35
40
|
}
|
|
36
41
|
exports.AirshipFeatureFlagManager = AirshipFeatureFlagManager;
|
|
42
|
+
class AirshipFeatureFlagResultCache {
|
|
43
|
+
constructor(module) {
|
|
44
|
+
this.module = module;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Retrieve a flag from the cache.
|
|
49
|
+
* @param {string} flagName The flag name
|
|
50
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag.
|
|
51
|
+
*/
|
|
52
|
+
flag(flagName) {
|
|
53
|
+
return this.module.featureFlagManagerResultCacheGetFlag(flagName);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Caches a feature flag.
|
|
58
|
+
* @param {FeatureFlag} flag The flag
|
|
59
|
+
* @param {FeatureFlag} ttl Cache TTL in milliseconds.
|
|
60
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
61
|
+
*/
|
|
62
|
+
cache(flag, ttl) {
|
|
63
|
+
return this.module.featureFlagManagerResultCacheSetFlag(flag, ttl);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Clears the cache for a given flag.
|
|
68
|
+
* @param {FeatureFlag} flagName The flag name
|
|
69
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
70
|
+
*/
|
|
71
|
+
removeCachedFlag(flagName) {
|
|
72
|
+
return this.module.featureFlagManagerResultCacheRemoveFlag(flagName);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.AirshipFeatureFlagResultCache = AirshipFeatureFlagResultCache;
|
|
37
76
|
//# sourceMappingURL=AirshipFeatureFlagManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AirshipFeatureFlagManager","constructor","module","flag","flagName","featureFlagManagerFlag","trackInteraction","featureFlagManagerTrackInteraction","exports"],"sourceRoot":"../../src","sources":["AirshipFeatureFlagManager.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACO,MAAMA,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"names":["AirshipFeatureFlagManager","constructor","module","resultCache","AirshipFeatureFlagResultCache","flag","flagName","useResultCache","featureFlagManagerFlag","trackInteraction","featureFlagManagerTrackInteraction","exports","featureFlagManagerResultCacheGetFlag","cache","ttl","featureFlagManagerResultCacheSetFlag","removeCachedFlag","featureFlagManagerResultCacheRemoveFlag"],"sourceRoot":"../../src","sources":["AirshipFeatureFlagManager.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACO,MAAMA,yBAAyB,CAAC;EACrC;AACF;AACA;;EAGEC,WAAWA,CAAkBC,MAAW,EAAE;IAAA,KAAbA,MAAW,GAAXA,MAAW;IACtC,IAAI,CAACC,WAAW,GAAG,IAAIC,6BAA6B,CAACF,MAAM,CAAC;EAC9D;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACSG,IAAIA,CACTC,QAAgB,EAChBC,cAAuB,GAAG,IAAI,EACR;IACtB,OAAO,IAAI,CAACL,MAAM,CAACM,sBAAsB,CAACF,QAAQ,EAAEC,cAAc,CAAC;EACrE;;EAEA;AACF;AACA;AACA;AACA;AACA;EACSE,gBAAgBA,CAACJ,IAAiB,EAAiB;IACxD,OAAO,IAAI,CAACH,MAAM,CAACQ,kCAAkC,CAACL,IAAI,CAAC;EAC7D;AACF;AAACM,OAAA,CAAAX,yBAAA,GAAAA,yBAAA;AAEM,MAAMI,6BAA6B,CAAC;EACzCH,WAAWA,CAAkBC,MAAW,EAAE;IAAA,KAAbA,MAAW,GAAXA,MAAW;EAAG;;EAE3C;AACF;AACA;AACA;AACA;EACSG,IAAIA,CAACC,QAAgB,EAAwB;IAClD,OAAO,IAAI,CAACJ,MAAM,CAACU,oCAAoC,CAACN,QAAQ,CAAC;EACnE;;EAEA;AACF;AACA;AACA;AACA;AACA;EACSO,KAAKA,CAACR,IAAiB,EAAES,GAAW,EAAiB;IAC1D,OAAO,IAAI,CAACZ,MAAM,CAACa,oCAAoC,CAACV,IAAI,EAAES,GAAG,CAAC;EACpE;;EAEA;AACF;AACA;AACA;AACA;EACSE,gBAAgBA,CAACV,QAAgB,EAAiB;IACvD,OAAO,IAAI,CAACJ,MAAM,CAACe,uCAAuC,CAACX,QAAQ,CAAC;EACtE;AACF;AAACK,OAAA,CAAAP,6BAAA,GAAAA,6BAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeRTNAirship.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeRTNAirship.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAwIpCC,gCAAmB,CAACC,YAAY,CAAO,YAAY,CAAC"}
|
|
@@ -2,29 +2,67 @@
|
|
|
2
2
|
* Airship feature flag manager.
|
|
3
3
|
*/
|
|
4
4
|
export class AirshipFeatureFlagManager {
|
|
5
|
+
/**
|
|
6
|
+
* Feature flag cache.
|
|
7
|
+
*/
|
|
8
|
+
|
|
5
9
|
constructor(module) {
|
|
6
10
|
this.module = module;
|
|
11
|
+
this.resultCache = new AirshipFeatureFlagResultCache(module);
|
|
7
12
|
}
|
|
8
13
|
|
|
9
14
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
flag(flagName) {
|
|
17
|
-
return this.module.featureFlagManagerFlag(flagName);
|
|
15
|
+
* Retrieve a given flag's status and associated data by its name.
|
|
16
|
+
* @param {string} flagName The flag name
|
|
17
|
+
* @param {boolean} useResultCache If the response should use result cache or not.
|
|
18
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag requested.
|
|
19
|
+
* @throws {Error} when failed to fetch
|
|
20
|
+
*/
|
|
21
|
+
flag(flagName, useResultCache = true) {
|
|
22
|
+
return this.module.featureFlagManagerFlag(flagName, useResultCache);
|
|
18
23
|
}
|
|
19
24
|
|
|
20
25
|
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
* Tracks a feature flag interaction event.
|
|
27
|
+
* @param {FeatureFlag} flag The flag
|
|
28
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
29
|
+
* @throws {Error} when failed to fetch
|
|
30
|
+
*/
|
|
26
31
|
trackInteraction(flag) {
|
|
27
32
|
return this.module.featureFlagManagerTrackInteraction(flag);
|
|
28
33
|
}
|
|
29
34
|
}
|
|
35
|
+
export class AirshipFeatureFlagResultCache {
|
|
36
|
+
constructor(module) {
|
|
37
|
+
this.module = module;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Retrieve a flag from the cache.
|
|
42
|
+
* @param {string} flagName The flag name
|
|
43
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag.
|
|
44
|
+
*/
|
|
45
|
+
flag(flagName) {
|
|
46
|
+
return this.module.featureFlagManagerResultCacheGetFlag(flagName);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Caches a feature flag.
|
|
51
|
+
* @param {FeatureFlag} flag The flag
|
|
52
|
+
* @param {FeatureFlag} ttl Cache TTL in milliseconds.
|
|
53
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
54
|
+
*/
|
|
55
|
+
cache(flag, ttl) {
|
|
56
|
+
return this.module.featureFlagManagerResultCacheSetFlag(flag, ttl);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Clears the cache for a given flag.
|
|
61
|
+
* @param {FeatureFlag} flagName The flag name
|
|
62
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
63
|
+
*/
|
|
64
|
+
removeCachedFlag(flagName) {
|
|
65
|
+
return this.module.featureFlagManagerResultCacheRemoveFlag(flagName);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
30
68
|
//# sourceMappingURL=AirshipFeatureFlagManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AirshipFeatureFlagManager","constructor","module","flag","flagName","featureFlagManagerFlag","trackInteraction","featureFlagManagerTrackInteraction"],"sourceRoot":"../../src","sources":["AirshipFeatureFlagManager.ts"],"mappings":"AAEA;AACA;AACA;AACA,OAAO,MAAMA,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"names":["AirshipFeatureFlagManager","constructor","module","resultCache","AirshipFeatureFlagResultCache","flag","flagName","useResultCache","featureFlagManagerFlag","trackInteraction","featureFlagManagerTrackInteraction","featureFlagManagerResultCacheGetFlag","cache","ttl","featureFlagManagerResultCacheSetFlag","removeCachedFlag","featureFlagManagerResultCacheRemoveFlag"],"sourceRoot":"../../src","sources":["AirshipFeatureFlagManager.ts"],"mappings":"AAEA;AACA;AACA;AACA,OAAO,MAAMA,yBAAyB,CAAC;EACrC;AACF;AACA;;EAGEC,WAAWA,CAAkBC,MAAW,EAAE;IAAA,KAAbA,MAAW,GAAXA,MAAW;IACtC,IAAI,CAACC,WAAW,GAAG,IAAIC,6BAA6B,CAACF,MAAM,CAAC;EAC9D;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACSG,IAAIA,CACTC,QAAgB,EAChBC,cAAuB,GAAG,IAAI,EACR;IACtB,OAAO,IAAI,CAACL,MAAM,CAACM,sBAAsB,CAACF,QAAQ,EAAEC,cAAc,CAAC;EACrE;;EAEA;AACF;AACA;AACA;AACA;AACA;EACSE,gBAAgBA,CAACJ,IAAiB,EAAiB;IACxD,OAAO,IAAI,CAACH,MAAM,CAACQ,kCAAkC,CAACL,IAAI,CAAC;EAC7D;AACF;AAEA,OAAO,MAAMD,6BAA6B,CAAC;EACzCH,WAAWA,CAAkBC,MAAW,EAAE;IAAA,KAAbA,MAAW,GAAXA,MAAW;EAAG;;EAE3C;AACF;AACA;AACA;AACA;EACSG,IAAIA,CAACC,QAAgB,EAAwB;IAClD,OAAO,IAAI,CAACJ,MAAM,CAACS,oCAAoC,CAACL,QAAQ,CAAC;EACnE;;EAEA;AACF;AACA;AACA;AACA;AACA;EACSM,KAAKA,CAACP,IAAiB,EAAEQ,GAAW,EAAiB;IAC1D,OAAO,IAAI,CAACX,MAAM,CAACY,oCAAoC,CAACT,IAAI,EAAEQ,GAAG,CAAC;EACpE;;EAEA;AACF;AACA;AACA;AACA;EACSE,gBAAgBA,CAACT,QAAgB,EAAiB;IACvD,OAAO,IAAI,CAACJ,MAAM,CAACc,uCAAuC,CAACV,QAAQ,CAAC;EACtE;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeRTNAirship.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeRTNAirship.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;AAwIlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,YAAY,CAAC"}
|
|
@@ -4,21 +4,48 @@ import { FeatureFlag } from './types';
|
|
|
4
4
|
*/
|
|
5
5
|
export declare class AirshipFeatureFlagManager {
|
|
6
6
|
private readonly module;
|
|
7
|
+
/**
|
|
8
|
+
* Feature flag cache.
|
|
9
|
+
*/
|
|
10
|
+
readonly resultCache: AirshipFeatureFlagResultCache;
|
|
7
11
|
constructor(module: any);
|
|
8
12
|
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
flag(flagName: string): Promise<FeatureFlag>;
|
|
13
|
+
* Retrieve a given flag's status and associated data by its name.
|
|
14
|
+
* @param {string} flagName The flag name
|
|
15
|
+
* @param {boolean} useResultCache If the response should use result cache or not.
|
|
16
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag requested.
|
|
17
|
+
* @throws {Error} when failed to fetch
|
|
18
|
+
*/
|
|
19
|
+
flag(flagName: string, useResultCache?: boolean): Promise<FeatureFlag>;
|
|
16
20
|
/**
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
* Tracks a feature flag interaction event.
|
|
22
|
+
* @param {FeatureFlag} flag The flag
|
|
23
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
24
|
+
* @throws {Error} when failed to fetch
|
|
25
|
+
*/
|
|
22
26
|
trackInteraction(flag: FeatureFlag): Promise<void>;
|
|
23
27
|
}
|
|
28
|
+
export declare class AirshipFeatureFlagResultCache {
|
|
29
|
+
private readonly module;
|
|
30
|
+
constructor(module: any);
|
|
31
|
+
/**
|
|
32
|
+
* Retrieve a flag from the cache.
|
|
33
|
+
* @param {string} flagName The flag name
|
|
34
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag.
|
|
35
|
+
*/
|
|
36
|
+
flag(flagName: string): Promise<FeatureFlag>;
|
|
37
|
+
/**
|
|
38
|
+
* Caches a feature flag.
|
|
39
|
+
* @param {FeatureFlag} flag The flag
|
|
40
|
+
* @param {FeatureFlag} ttl Cache TTL in milliseconds.
|
|
41
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
42
|
+
*/
|
|
43
|
+
cache(flag: FeatureFlag, ttl: number): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Clears the cache for a given flag.
|
|
46
|
+
* @param {FeatureFlag} flagName The flag name
|
|
47
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
48
|
+
*/
|
|
49
|
+
removeCachedFlag(flagName: string): Promise<void>;
|
|
50
|
+
}
|
|
24
51
|
//# sourceMappingURL=AirshipFeatureFlagManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirshipFeatureFlagManager.d.ts","sourceRoot":"","sources":["../../src/AirshipFeatureFlagManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC;;GAEG;AACH,qBAAa,yBAAyB;
|
|
1
|
+
{"version":3,"file":"AirshipFeatureFlagManager.d.ts","sourceRoot":"","sources":["../../src/AirshipFeatureFlagManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC;;GAEG;AACH,qBAAa,yBAAyB;IAMxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC;;OAEG;IACH,SAAgB,WAAW,EAAE,6BAA6B,CAAC;gBAE9B,MAAM,EAAE,GAAG;IAIxC;;;;;;OAMG;IACI,IAAI,CACT,QAAQ,EAAE,MAAM,EAChB,cAAc,GAAE,OAAc,GAC7B,OAAO,CAAC,WAAW,CAAC;IAIvB;;;;;OAKG;IACI,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1D;AAED,qBAAa,6BAA6B;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,GAAG;IAExC;;;;OAIG;IACI,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAInD;;;;;OAKG;IACI,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D;;;;OAIG;IACI,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzD"}
|
|
@@ -77,8 +77,11 @@ export interface Spec extends TurboModule {
|
|
|
77
77
|
localeSetLocaleOverride(localeIdentifier: string): Promise<void>;
|
|
78
78
|
localeGetLocale(): Promise<string>;
|
|
79
79
|
localeClearLocaleOverride(): Promise<void>;
|
|
80
|
-
featureFlagManagerFlag(flagName: string): Promise<Object>;
|
|
80
|
+
featureFlagManagerFlag(flagName: string, userResultCache: boolean): Promise<Object>;
|
|
81
81
|
featureFlagManagerTrackInteraction(flag: Object): Promise<void>;
|
|
82
|
+
featureFlagManagerResultCacheGetFlag(flagName: string): Promise<Object>;
|
|
83
|
+
featureFlagManagerResultCacheSetFlag(flag: Object, ttl: number): Promise<void>;
|
|
84
|
+
featureFlagManagerResultCacheRemoveFlag(flagName: string): Promise<void>;
|
|
82
85
|
liveActivityListAll(): Promise<Object>;
|
|
83
86
|
liveActivityList(request: Object): Promise<Object>;
|
|
84
87
|
liveActivityStart(request: Object): Promise<Object>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeRTNAirship.d.ts","sourceRoot":"","sources":["../../src/NativeRTNAirship.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"NativeRTNAirship.d.ts","sourceRoot":"","sources":["../../src/NativeRTNAirship.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@ Pod::Spec.new do |s|
|
|
|
11
11
|
s.license = package["license"]
|
|
12
12
|
s.authors = package["author"]
|
|
13
13
|
|
|
14
|
-
s.platforms = { :ios => "
|
|
14
|
+
s.platforms = { :ios => "15.0" }
|
|
15
15
|
s.source = { :git => "https://github.com/urbanairship/react-native-module.git", :tag => "#{s.version}" }
|
|
16
16
|
|
|
17
17
|
s.source_files = "ios/**/*.{h,m,mm,swift}"
|
|
@@ -22,6 +22,5 @@ Pod::Spec.new do |s|
|
|
|
22
22
|
s.dependency "React-Core"
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
s.dependency "AirshipFrameworkProxy", "
|
|
26
|
-
|
|
25
|
+
s.dependency "AirshipFrameworkProxy", "12.1.0"
|
|
27
26
|
end
|
|
@@ -4,22 +4,30 @@ import { FeatureFlag } from './types';
|
|
|
4
4
|
* Airship feature flag manager.
|
|
5
5
|
*/
|
|
6
6
|
export class AirshipFeatureFlagManager {
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Feature flag cache.
|
|
9
|
+
*/
|
|
10
|
+
public readonly resultCache: AirshipFeatureFlagResultCache;
|
|
8
11
|
|
|
9
|
-
|
|
12
|
+
constructor(private readonly module: any) {
|
|
13
|
+
this.resultCache = new AirshipFeatureFlagResultCache(module);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
10
17
|
* Retrieve a given flag's status and associated data by its name.
|
|
11
18
|
* @param {string} flagName The flag name
|
|
12
|
-
* @
|
|
13
|
-
*
|
|
19
|
+
* @param {boolean} useResultCache If the response should use result cache or not.
|
|
20
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag requested.
|
|
14
21
|
* @throws {Error} when failed to fetch
|
|
15
22
|
*/
|
|
16
23
|
public flag(
|
|
17
|
-
flagName: string
|
|
24
|
+
flagName: string,
|
|
25
|
+
useResultCache: boolean = true
|
|
18
26
|
): Promise<FeatureFlag> {
|
|
19
|
-
return this.module.featureFlagManagerFlag(flagName);
|
|
27
|
+
return this.module.featureFlagManagerFlag(flagName, useResultCache);
|
|
20
28
|
}
|
|
21
29
|
|
|
22
|
-
|
|
30
|
+
/**
|
|
23
31
|
* Tracks a feature flag interaction event.
|
|
24
32
|
* @param {FeatureFlag} flag The flag
|
|
25
33
|
* @return {Promise<Void>} A promise with an empty result.
|
|
@@ -29,3 +37,35 @@ export class AirshipFeatureFlagManager {
|
|
|
29
37
|
return this.module.featureFlagManagerTrackInteraction(flag);
|
|
30
38
|
}
|
|
31
39
|
}
|
|
40
|
+
|
|
41
|
+
export class AirshipFeatureFlagResultCache {
|
|
42
|
+
constructor(private readonly module: any) {}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Retrieve a flag from the cache.
|
|
46
|
+
* @param {string} flagName The flag name
|
|
47
|
+
* @return {Promise<FeatureFlag>} A promise resolving to the feature flag.
|
|
48
|
+
*/
|
|
49
|
+
public flag(flagName: string): Promise<FeatureFlag> {
|
|
50
|
+
return this.module.featureFlagManagerResultCacheGetFlag(flagName);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Caches a feature flag.
|
|
55
|
+
* @param {FeatureFlag} flag The flag
|
|
56
|
+
* @param {FeatureFlag} ttl Cache TTL in milliseconds.
|
|
57
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
58
|
+
*/
|
|
59
|
+
public cache(flag: FeatureFlag, ttl: number): Promise<void> {
|
|
60
|
+
return this.module.featureFlagManagerResultCacheSetFlag(flag, ttl);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Clears the cache for a given flag.
|
|
65
|
+
* @param {FeatureFlag} flagName The flag name
|
|
66
|
+
* @return {Promise<Void>} A promise with an empty result.
|
|
67
|
+
*/
|
|
68
|
+
public removeCachedFlag(flagName: string): Promise<void> {
|
|
69
|
+
return this.module.featureFlagManagerResultCacheRemoveFlag(flagName);
|
|
70
|
+
}
|
|
71
|
+
}
|
package/src/NativeRTNAirship.ts
CHANGED
|
@@ -113,8 +113,11 @@ export interface Spec extends TurboModule {
|
|
|
113
113
|
localeClearLocaleOverride(): Promise<void>;
|
|
114
114
|
|
|
115
115
|
// Feature Flag Manager
|
|
116
|
-
featureFlagManagerFlag(flagName: string):Promise<Object>;
|
|
116
|
+
featureFlagManagerFlag(flagName: string, userResultCache: boolean):Promise<Object>;
|
|
117
117
|
featureFlagManagerTrackInteraction(flag: Object): Promise<void>;
|
|
118
|
+
featureFlagManagerResultCacheGetFlag(flagName: string): Promise<Object>;
|
|
119
|
+
featureFlagManagerResultCacheSetFlag(flag: Object, ttl: number): Promise<void>;
|
|
120
|
+
featureFlagManagerResultCacheRemoveFlag(flagName: string): Promise<void>;
|
|
118
121
|
|
|
119
122
|
// Live Activity
|
|
120
123
|
liveActivityListAll(): Promise<Object>;
|