react-native-spike-sdk 1.0.7 → 1.0.8
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/ios/SpikeConnectionListener.swift +4 -4
- package/ios/SpikeSdk.m +1 -1
- package/ios/SpikeSdk.swift +16 -4
- package/lib/commonjs/SpikeWebhookConnection.js +23 -3
- package/lib/commonjs/SpikeWebhookConnection.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/SpikeWebhookConnection.js +24 -4
- package/lib/module/SpikeWebhookConnection.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/SpikeWebhookConnection.d.ts +6 -1
- package/lib/typescript/SpikeWebhookConnection.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native-spike-sdk.podspec +2 -2
- package/src/SpikeWebhookConnection.ts +44 -4
- package/src/index.ts +2 -0
|
@@ -4,14 +4,14 @@ import SpikeSDK
|
|
|
4
4
|
class SpikeConnectionListener: SpikeWebhookConnectionListener {
|
|
5
5
|
|
|
6
6
|
private let connectionUUID: String
|
|
7
|
-
private var
|
|
7
|
+
private var onLog: (String, String) -> Void
|
|
8
8
|
|
|
9
|
-
init(connectionUUID: String,
|
|
9
|
+
init(connectionUUID: String, onLog: @escaping (String, String) -> Void) {
|
|
10
10
|
self.connectionUUID = connectionUUID
|
|
11
|
-
self.
|
|
11
|
+
self.onLog = onLog
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
func onBackgroundLog(log: String) {
|
|
15
|
-
|
|
15
|
+
onLog(connectionUUID, log)
|
|
16
16
|
}
|
|
17
17
|
}
|
package/ios/SpikeSdk.m
CHANGED
|
@@ -102,7 +102,7 @@ RCT_EXTERN_METHOD(getBackgroundDeliveryDataTypes: (NSString)connectionUUID
|
|
|
102
102
|
withResolver: (RCTPromiseResolveBlock)resolve
|
|
103
103
|
withRejecter: (RCTPromiseRejectBlock)reject)
|
|
104
104
|
|
|
105
|
-
RCT_EXTERN_METHOD(
|
|
105
|
+
RCT_EXTERN_METHOD(setListener: (NSString)connectionUUID
|
|
106
106
|
withResolver: (RCTPromiseResolveBlock)resolve
|
|
107
107
|
withRejecter: (RCTPromiseRejectBlock)reject)
|
|
108
108
|
|
package/ios/SpikeSdk.swift
CHANGED
|
@@ -457,7 +457,7 @@ class SpikeSdk: RCTEventEmitter {
|
|
|
457
457
|
}
|
|
458
458
|
}
|
|
459
459
|
|
|
460
|
-
@objc(
|
|
460
|
+
@objc(setListener:
|
|
461
461
|
withResolver:
|
|
462
462
|
withRejecter:)
|
|
463
463
|
func setListener(connectionUUID: String,
|
|
@@ -469,8 +469,9 @@ class SpikeSdk: RCTEventEmitter {
|
|
|
469
469
|
}
|
|
470
470
|
|
|
471
471
|
do {
|
|
472
|
-
let
|
|
473
|
-
|
|
472
|
+
let listener = createListener(connectionUUID: connectionUUID)
|
|
473
|
+
try connection.setListener(listener: listener)
|
|
474
|
+
resolve(Void())
|
|
474
475
|
} catch let error {
|
|
475
476
|
spikeReject(with: error, reject: reject)
|
|
476
477
|
}
|
|
@@ -483,7 +484,7 @@ class SpikeSdk: RCTEventEmitter {
|
|
|
483
484
|
"onDebug",
|
|
484
485
|
"onInfo",
|
|
485
486
|
"onError",
|
|
486
|
-
"
|
|
487
|
+
"onBackgroundLog",
|
|
487
488
|
]
|
|
488
489
|
}
|
|
489
490
|
|
|
@@ -505,6 +506,17 @@ class SpikeSdk: RCTEventEmitter {
|
|
|
505
506
|
}
|
|
506
507
|
}
|
|
507
508
|
}
|
|
509
|
+
|
|
510
|
+
private func createListener(connectionUUID: String) -> SpikeWebhookConnectionListener {
|
|
511
|
+
return SpikeConnectionListener(connectionUUID: connectionUUID) { [weak self] connectionUUID, log in
|
|
512
|
+
let body = [
|
|
513
|
+
"connectionUUID": connectionUUID,
|
|
514
|
+
"log": log
|
|
515
|
+
]
|
|
516
|
+
self?.sendEvent(withName: "onBackgroundLog", body: body)
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
|
|
508
520
|
|
|
509
521
|
private func spikeReject(with error: Error, reject: RCTPromiseRejectBlock) {
|
|
510
522
|
let errorString = SpikeExceptionMapper.handleSpikeError(error)
|
|
@@ -10,6 +10,7 @@ var _SpikeException = require("./SpikeException");
|
|
|
10
10
|
var _SpikeSdk = require("./SpikeSdk");
|
|
11
11
|
var _SpikeDataType = require("./DataTypes/SpikeDataType");
|
|
12
12
|
class SpikeWebhookConnection extends _SpikeConnection.SpikeConnection {
|
|
13
|
+
webhookListener = null;
|
|
13
14
|
async getCallbackUrl() {
|
|
14
15
|
if (!_SpikeSdk.SpikeSdk) throw new _SpikeException.SpikeException();
|
|
15
16
|
return await _SpikeSdk.SpikeSdk.getCallbackUrl(this.connectionUUID);
|
|
@@ -37,13 +38,32 @@ class SpikeWebhookConnection extends _SpikeConnection.SpikeConnection {
|
|
|
37
38
|
const dataTypes = await _SpikeSdk.SpikeSdk.getBackgroundDeliveryDataTypes(this.connectionUUID);
|
|
38
39
|
return dataTypes.map(type => this.convertDataType(type));
|
|
39
40
|
}
|
|
40
|
-
async
|
|
41
|
-
if (_reactNative.Platform.OS !== 'ios') return
|
|
41
|
+
async setListener(listener) {
|
|
42
|
+
if (_reactNative.Platform.OS !== 'ios') return;
|
|
42
43
|
if (!_SpikeSdk.SpikeSdk) throw new _SpikeException.SpikeException();
|
|
43
|
-
|
|
44
|
+
this.setupListener(listener);
|
|
45
|
+
await _SpikeSdk.SpikeSdk.setListener(this.connectionUUID);
|
|
44
46
|
}
|
|
45
47
|
async close() {
|
|
46
48
|
await super.close();
|
|
49
|
+
this.removeListeners();
|
|
50
|
+
}
|
|
51
|
+
setupListener(listener) {
|
|
52
|
+
var _this$eventListener;
|
|
53
|
+
if (!_SpikeSdk.SpikeSdk) return;
|
|
54
|
+
this.removeListeners();
|
|
55
|
+
this.eventListener = new _reactNative.NativeEventEmitter(_SpikeSdk.SpikeSdk);
|
|
56
|
+
this.webhookListener = listener;
|
|
57
|
+
(_this$eventListener = this.eventListener) === null || _this$eventListener === void 0 ? void 0 : _this$eventListener.addListener('onBackgroundLog', data => {
|
|
58
|
+
var _this$webhookListener;
|
|
59
|
+
if (this.connectionUUID !== data.connectionUUID) return;
|
|
60
|
+
(_this$webhookListener = this.webhookListener) === null || _this$webhookListener === void 0 ? void 0 : _this$webhookListener.onBackgroundLog(data.log);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
removeListeners() {
|
|
64
|
+
if (!this.eventListener) return;
|
|
65
|
+
this.eventListener.removeAllListeners('onBackgroundLog');
|
|
66
|
+
this.eventListener = undefined;
|
|
47
67
|
}
|
|
48
68
|
convertDataType(dataType) {
|
|
49
69
|
if (dataType === 'activities_summary') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_SpikeConnection","_SpikeException","_SpikeSdk","_SpikeDataType","SpikeWebhookConnection","SpikeConnection","getCallbackUrl","SpikeSdk","SpikeException","connectionUUID","extractAndPostData","dataType","json","rawValue","data","JSON","parse","extractAndPostDataInRange","from","to","getTime","enableBackgroundDelivery","dataTypes","Platform","OS","map","type","getBackgroundDeliveryDataTypes","convertDataType","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_SpikeConnection","_SpikeException","_SpikeSdk","_SpikeDataType","SpikeWebhookConnection","SpikeConnection","webhookListener","getCallbackUrl","SpikeSdk","SpikeException","connectionUUID","extractAndPostData","dataType","json","rawValue","data","JSON","parse","extractAndPostDataInRange","from","to","getTime","enableBackgroundDelivery","dataTypes","Platform","OS","map","type","getBackgroundDeliveryDataTypes","convertDataType","setListener","listener","setupListener","close","removeListeners","_this$eventListener","eventListener","NativeEventEmitter","addListener","_this$webhookListener","onBackgroundLog","log","removeAllListeners","undefined","SpikeActivitiesSummaryDataType","SpikeActivitiesStreamDataType","SpikeBreathingDataType","SpikeCaloriesDataType","SpikeDistanceDataType","SpikeGlucoseDataType","SpikeHeartDataType","SpikeOxygenSaturationDataType","SpikeSleepDataType","SpikeStepsDataType","SpikeBodyDataType","exports"],"sourceRoot":"../../src","sources":["SpikeWebhookConnection.ts"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_SpikeDataTypes","require","_Spike","_SpikeConnection","_SpikeWebhookConnection","_default","setEnvironment","createConnection","createWebhookConnection","unpackConnection","getBackgroundConnections","ensurePermissionsAreGranted","initialize","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AASA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,uBAAA,GAAAH,OAAA;AAAkE,IAAAI,QAAA,
|
|
1
|
+
{"version":3,"names":["_SpikeDataTypes","require","_Spike","_SpikeConnection","_SpikeWebhookConnection","_default","setEnvironment","createConnection","createWebhookConnection","unpackConnection","getBackgroundConnections","ensurePermissionsAreGranted","initialize","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AASA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,uBAAA,GAAAH,OAAA;AAAkE,IAAAI,QAAA,GAKnD;EACbC,cAAc,EAAdA,qBAAc;EACdC,gBAAgB,EAAhBA,uBAAgB;EAChBC,uBAAuB,EAAvBA,8BAAuB;EACvBC,gBAAgB,EAAhBA,uBAAgB;EAChBC,wBAAwB,EAAxBA,+BAAwB;EACxBC,2BAA2B,EAA3BA,kCAA2B;EAC3BC,UAAU,EAAVA;AACF,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAT,QAAA"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Platform } from 'react-native';
|
|
1
|
+
import { NativeEventEmitter, Platform } from 'react-native';
|
|
2
2
|
import { SpikeConnection } from './SpikeConnection';
|
|
3
3
|
import { SpikeException } from './SpikeException';
|
|
4
4
|
import { SpikeSdk } from './SpikeSdk';
|
|
5
5
|
import { SpikeActivitiesStreamDataType, SpikeActivitiesSummaryDataType, SpikeBodyDataType, SpikeBreathingDataType, SpikeCaloriesDataType, SpikeDistanceDataType, SpikeGlucoseDataType, SpikeHeartDataType, SpikeOxygenSaturationDataType, SpikeSleepDataType, SpikeStepsDataType } from './DataTypes/SpikeDataType';
|
|
6
6
|
export class SpikeWebhookConnection extends SpikeConnection {
|
|
7
|
+
webhookListener = null;
|
|
7
8
|
async getCallbackUrl() {
|
|
8
9
|
if (!SpikeSdk) throw new SpikeException();
|
|
9
10
|
return await SpikeSdk.getCallbackUrl(this.connectionUUID);
|
|
@@ -31,13 +32,32 @@ export class SpikeWebhookConnection extends SpikeConnection {
|
|
|
31
32
|
const dataTypes = await SpikeSdk.getBackgroundDeliveryDataTypes(this.connectionUUID);
|
|
32
33
|
return dataTypes.map(type => this.convertDataType(type));
|
|
33
34
|
}
|
|
34
|
-
async
|
|
35
|
-
if (Platform.OS !== 'ios') return
|
|
35
|
+
async setListener(listener) {
|
|
36
|
+
if (Platform.OS !== 'ios') return;
|
|
36
37
|
if (!SpikeSdk) throw new SpikeException();
|
|
37
|
-
|
|
38
|
+
this.setupListener(listener);
|
|
39
|
+
await SpikeSdk.setListener(this.connectionUUID);
|
|
38
40
|
}
|
|
39
41
|
async close() {
|
|
40
42
|
await super.close();
|
|
43
|
+
this.removeListeners();
|
|
44
|
+
}
|
|
45
|
+
setupListener(listener) {
|
|
46
|
+
var _this$eventListener;
|
|
47
|
+
if (!SpikeSdk) return;
|
|
48
|
+
this.removeListeners();
|
|
49
|
+
this.eventListener = new NativeEventEmitter(SpikeSdk);
|
|
50
|
+
this.webhookListener = listener;
|
|
51
|
+
(_this$eventListener = this.eventListener) === null || _this$eventListener === void 0 ? void 0 : _this$eventListener.addListener('onBackgroundLog', data => {
|
|
52
|
+
var _this$webhookListener;
|
|
53
|
+
if (this.connectionUUID !== data.connectionUUID) return;
|
|
54
|
+
(_this$webhookListener = this.webhookListener) === null || _this$webhookListener === void 0 ? void 0 : _this$webhookListener.onBackgroundLog(data.log);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
removeListeners() {
|
|
58
|
+
if (!this.eventListener) return;
|
|
59
|
+
this.eventListener.removeAllListeners('onBackgroundLog');
|
|
60
|
+
this.eventListener = undefined;
|
|
41
61
|
}
|
|
42
62
|
convertDataType(dataType) {
|
|
43
63
|
if (dataType === 'activities_summary') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","SpikeConnection","SpikeException","SpikeSdk","SpikeActivitiesStreamDataType","SpikeActivitiesSummaryDataType","SpikeBodyDataType","SpikeBreathingDataType","SpikeCaloriesDataType","SpikeDistanceDataType","SpikeGlucoseDataType","SpikeHeartDataType","SpikeOxygenSaturationDataType","SpikeSleepDataType","SpikeStepsDataType","SpikeWebhookConnection","getCallbackUrl","connectionUUID","extractAndPostData","dataType","json","rawValue","data","JSON","parse","extractAndPostDataInRange","from","to","getTime","enableBackgroundDelivery","dataTypes","OS","map","type","getBackgroundDeliveryDataTypes","convertDataType","
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","Platform","SpikeConnection","SpikeException","SpikeSdk","SpikeActivitiesStreamDataType","SpikeActivitiesSummaryDataType","SpikeBodyDataType","SpikeBreathingDataType","SpikeCaloriesDataType","SpikeDistanceDataType","SpikeGlucoseDataType","SpikeHeartDataType","SpikeOxygenSaturationDataType","SpikeSleepDataType","SpikeStepsDataType","SpikeWebhookConnection","webhookListener","getCallbackUrl","connectionUUID","extractAndPostData","dataType","json","rawValue","data","JSON","parse","extractAndPostDataInRange","from","to","getTime","enableBackgroundDelivery","dataTypes","OS","map","type","getBackgroundDeliveryDataTypes","convertDataType","setListener","listener","setupListener","close","removeListeners","_this$eventListener","eventListener","addListener","_this$webhookListener","onBackgroundLog","log","removeAllListeners","undefined"],"sourceRoot":"../../src","sources":["SpikeWebhookConnection.ts"],"mappings":"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"}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SpikeDataTypes","setEnvironment","createConnection","createWebhookConnection","unpackConnection","getBackgroundConnections","ensurePermissionsAreGranted","initialize","SpikeConnection","SpikeWebhookConnection"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,cAAc,QAAQ,6BAA6B;AAG5D,SACEC,cAAc,EACdC,gBAAgB,EAChBC,uBAAuB,EACvBC,gBAAgB,EAChBC,wBAAwB,EACxBC,2BAA2B,EAC3BC,UAAU,QACL,SAAS;AAChB,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,sBAAsB,QAAQ,0BAA0B;
|
|
1
|
+
{"version":3,"names":["SpikeDataTypes","setEnvironment","createConnection","createWebhookConnection","unpackConnection","getBackgroundConnections","ensurePermissionsAreGranted","initialize","SpikeConnection","SpikeWebhookConnection"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,cAAc,QAAQ,6BAA6B;AAG5D,SACEC,cAAc,EACdC,gBAAgB,EAChBC,uBAAuB,EACvBC,gBAAgB,EAChBC,wBAAwB,EACxBC,2BAA2B,EAC3BC,UAAU,QACL,SAAS;AAChB,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,sBAAsB,QAAQ,0BAA0B;AAKjE,eAAe;EACbR,cAAc;EACdC,gBAAgB;EAChBC,uBAAuB;EACvBC,gBAAgB;EAChBC,wBAAwB;EACxBC,2BAA2B;EAC3BC;AACF,CAAC;AAED,SACEC,eAAe,EACfC,sBAAsB,EACtBT,cAAc"}
|
|
@@ -2,14 +2,19 @@ import { SpikeConnection } from './SpikeConnection';
|
|
|
2
2
|
import type { SpikeWebhookJob } from './DataModels/SpikeWebhookJob';
|
|
3
3
|
import type { SpikeDataEntry } from './DataModels/SpikeData';
|
|
4
4
|
import { SpikeDataType } from './DataTypes/SpikeDataType';
|
|
5
|
+
import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
|
|
5
6
|
export declare class SpikeWebhookConnection extends SpikeConnection {
|
|
7
|
+
private eventListener;
|
|
8
|
+
private webhookListener;
|
|
6
9
|
getCallbackUrl(): Promise<string>;
|
|
7
10
|
extractAndPostData<DataEntry extends SpikeDataEntry>(dataType: SpikeDataType<DataEntry>): Promise<SpikeWebhookJob>;
|
|
8
11
|
extractAndPostDataInRange<DataEntry extends SpikeDataEntry>(dataType: SpikeDataType<DataEntry>, from: Date, to: Date): Promise<SpikeWebhookJob>;
|
|
9
12
|
enableBackgroundDelivery<DataEntry extends SpikeDataEntry>(dataTypes: SpikeDataType<DataEntry>[]): Promise<void>;
|
|
10
13
|
getBackgroundDeliveryDataTypes<DataEntry extends SpikeDataEntry>(): Promise<SpikeDataType<DataEntry>[]>;
|
|
11
|
-
|
|
14
|
+
setListener(listener: SpikeWebhookConnectionListener | null): Promise<void>;
|
|
12
15
|
close(): Promise<void>;
|
|
16
|
+
private setupListener;
|
|
17
|
+
private removeListeners;
|
|
13
18
|
private convertDataType;
|
|
14
19
|
}
|
|
15
20
|
//# sourceMappingURL=SpikeWebhookConnection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpikeWebhookConnection.d.ts","sourceRoot":"","sources":["../../src/SpikeWebhookConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAML,aAAa,EAOd,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"SpikeWebhookConnection.d.ts","sourceRoot":"","sources":["../../src/SpikeWebhookConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAML,aAAa,EAOd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAOvF,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,OAAO,CAAC,aAAa,CAAiC;IAEtD,OAAO,CAAC,eAAe,CAA+C;IAEhE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAMjC,kBAAkB,CAAC,SAAS,SAAS,cAAc,EACvD,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,GACjC,OAAO,CAAC,eAAe,CAAC;IAWrB,yBAAyB,CAAC,SAAS,SAAS,cAAc,EAC9D,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,EAClC,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,IAAI,GACP,OAAO,CAAC,eAAe,CAAC;IAarB,wBAAwB,CAAC,SAAS,SAAS,cAAc,EAC7D,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC;IAUV,8BAA8B,CAClC,SAAS,SAAS,cAAc,KAC7B,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;IAUlC,WAAW,CACf,QAAQ,EAAE,8BAA8B,GAAG,IAAI,GAC9C,OAAO,CAAC,IAAI,CAAC;IASV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;CA4BxB"}
|
|
@@ -4,6 +4,7 @@ import type { SpikeDataEntry } from './DataModels/SpikeData';
|
|
|
4
4
|
import { SpikeConnection } from './SpikeConnection';
|
|
5
5
|
import { SpikeWebhookConnection } from './SpikeWebhookConnection';
|
|
6
6
|
import type { SpikeLogger } from './SpikeLogger';
|
|
7
|
+
import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
|
|
7
8
|
import type { SpikeEnvironment } from './SpikeEnvironment';
|
|
8
9
|
declare const _default: {
|
|
9
10
|
setEnvironment: (env: SpikeEnvironment) => Promise<void>;
|
|
@@ -15,5 +16,5 @@ declare const _default: {
|
|
|
15
16
|
initialize: () => void;
|
|
16
17
|
};
|
|
17
18
|
export default _default;
|
|
18
|
-
export { SpikeConnection, SpikeWebhookConnection, SpikeDataTypes, SpikeDataType, SpikeDataEntry, SpikeLogger, SpikeEnvironment, };
|
|
19
|
+
export { SpikeConnection, SpikeWebhookConnection, SpikeDataTypes, SpikeDataType, SpikeDataEntry, SpikeLogger, SpikeWebhookConnectionListener, SpikeEnvironment, };
|
|
19
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;;;;;;;;;;AAE3D,wBAQE;AAEF,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,cAAc,EACd,WAAW,EACX,gBAAgB,GACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;;;;;;;;;;AAE3D,wBAQE;AAEF,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,cAAc,EACd,WAAW,EACX,8BAA8B,EAC9B,gBAAgB,GACjB,CAAC"}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ folly_compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1
|
|
|
5
5
|
|
|
6
6
|
Pod::Spec.new do |s|
|
|
7
7
|
s.name = "react-native-spike-sdk"
|
|
8
|
-
s.version = "1.0.
|
|
8
|
+
s.version = "1.0.8"
|
|
9
9
|
s.summary = "Spike API for health and productivity data from wearables and IoT devices"
|
|
10
10
|
|
|
11
11
|
s.description = <<-DESC
|
|
@@ -25,7 +25,7 @@ Pod::Spec.new do |s|
|
|
|
25
25
|
s.swift_version = "5"
|
|
26
26
|
|
|
27
27
|
s.dependency "React-Core"
|
|
28
|
-
s.dependency "SpikeSDK", "1.0.
|
|
28
|
+
s.dependency "SpikeSDK", "1.0.12"
|
|
29
29
|
|
|
30
30
|
# Don't install the dependencies when we run `pod install` in the old architecture.
|
|
31
31
|
if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Platform } from 'react-native';
|
|
1
|
+
import { NativeEventEmitter, Platform } from 'react-native';
|
|
2
2
|
import { SpikeConnection } from './SpikeConnection';
|
|
3
3
|
import { SpikeException } from './SpikeException';
|
|
4
4
|
import { SpikeSdk } from './SpikeSdk';
|
|
@@ -18,8 +18,18 @@ import {
|
|
|
18
18
|
SpikeSleepDataType,
|
|
19
19
|
SpikeStepsDataType,
|
|
20
20
|
} from './DataTypes/SpikeDataType';
|
|
21
|
+
import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
|
|
22
|
+
|
|
23
|
+
interface IBackgroundLog {
|
|
24
|
+
connectionUUID: string;
|
|
25
|
+
log: string;
|
|
26
|
+
}
|
|
21
27
|
|
|
22
28
|
export class SpikeWebhookConnection extends SpikeConnection {
|
|
29
|
+
private eventListener: NativeEventEmitter | undefined;
|
|
30
|
+
|
|
31
|
+
private webhookListener: SpikeWebhookConnectionListener | null = null;
|
|
32
|
+
|
|
23
33
|
async getCallbackUrl(): Promise<string> {
|
|
24
34
|
if (!SpikeSdk) throw new SpikeException();
|
|
25
35
|
|
|
@@ -80,15 +90,45 @@ export class SpikeWebhookConnection extends SpikeConnection {
|
|
|
80
90
|
return dataTypes.map((type) => this.convertDataType(type));
|
|
81
91
|
}
|
|
82
92
|
|
|
83
|
-
async
|
|
84
|
-
|
|
93
|
+
async setListener(
|
|
94
|
+
listener: SpikeWebhookConnectionListener | null
|
|
95
|
+
): Promise<void> {
|
|
96
|
+
if (Platform.OS !== 'ios') return;
|
|
85
97
|
if (!SpikeSdk) throw new SpikeException();
|
|
86
98
|
|
|
87
|
-
|
|
99
|
+
this.setupListener(listener);
|
|
100
|
+
|
|
101
|
+
await SpikeSdk.setListener(this.connectionUUID);
|
|
88
102
|
}
|
|
89
103
|
|
|
90
104
|
async close(): Promise<void> {
|
|
91
105
|
await super.close();
|
|
106
|
+
|
|
107
|
+
this.removeListeners();
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
private setupListener(listener: SpikeWebhookConnectionListener | null) {
|
|
111
|
+
if (!SpikeSdk) return;
|
|
112
|
+
|
|
113
|
+
this.removeListeners();
|
|
114
|
+
|
|
115
|
+
this.eventListener = new NativeEventEmitter(SpikeSdk);
|
|
116
|
+
this.webhookListener = listener;
|
|
117
|
+
|
|
118
|
+
this.eventListener?.addListener(
|
|
119
|
+
'onBackgroundLog',
|
|
120
|
+
(data: IBackgroundLog) => {
|
|
121
|
+
if (this.connectionUUID !== data.connectionUUID) return;
|
|
122
|
+
this.webhookListener?.onBackgroundLog(data.log);
|
|
123
|
+
}
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
private removeListeners() {
|
|
128
|
+
if (!this.eventListener) return;
|
|
129
|
+
|
|
130
|
+
this.eventListener.removeAllListeners('onBackgroundLog');
|
|
131
|
+
this.eventListener = undefined;
|
|
92
132
|
}
|
|
93
133
|
|
|
94
134
|
private convertDataType<DataEntry extends SpikeDataEntry>(
|
package/src/index.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
import { SpikeConnection } from './SpikeConnection';
|
|
14
14
|
import { SpikeWebhookConnection } from './SpikeWebhookConnection';
|
|
15
15
|
import type { SpikeLogger } from './SpikeLogger';
|
|
16
|
+
import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
|
|
16
17
|
import type { SpikeEnvironment } from './SpikeEnvironment';
|
|
17
18
|
|
|
18
19
|
export default {
|
|
@@ -32,5 +33,6 @@ export {
|
|
|
32
33
|
SpikeDataType,
|
|
33
34
|
SpikeDataEntry,
|
|
34
35
|
SpikeLogger,
|
|
36
|
+
SpikeWebhookConnectionListener,
|
|
35
37
|
SpikeEnvironment,
|
|
36
38
|
};
|