react-native-spike-sdk 1.0.6 → 1.0.7

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.
@@ -25,6 +25,8 @@ class SpikeDataTypeMapper {
25
25
  return SpikeDataTypes.sleep
26
26
  case "steps":
27
27
  return SpikeDataTypes.steps
28
+ case "body":
29
+ return SpikeDataTypes.body
28
30
  default:
29
31
  return SpikeDataTypes.activitiesSummary
30
32
  }
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(setListener: (NSString)connectionUUID
105
+ RCT_EXTERN_METHOD(getBackgroundLogs: (NSString)connectionUUID
106
106
  withResolver: (RCTPromiseResolveBlock)resolve
107
107
  withRejecter: (RCTPromiseRejectBlock)reject)
108
108
 
@@ -457,7 +457,7 @@ class SpikeSdk: RCTEventEmitter {
457
457
  }
458
458
  }
459
459
 
460
- @objc(setListener:
460
+ @objc(getBackgroundLogs:
461
461
  withResolver:
462
462
  withRejecter:)
463
463
  func setListener(connectionUUID: String,
@@ -469,9 +469,8 @@ class SpikeSdk: RCTEventEmitter {
469
469
  }
470
470
 
471
471
  do {
472
- let listener = createListener(connectionUUID: connectionUUID)
473
- try connection.setListener(listener: listener)
474
- resolve(Void())
472
+ let logs = try connection.getBackgroundLogs()
473
+ resolve(logs)
475
474
  } catch let error {
476
475
  spikeReject(with: error, reject: reject)
477
476
  }
@@ -507,16 +506,6 @@ class SpikeSdk: RCTEventEmitter {
507
506
  }
508
507
  }
509
508
 
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: "onSubmissionFailure", body: body)
517
- }
518
- }
519
-
520
509
  private func spikeReject(with error: Error, reject: RCTPromiseRejectBlock) {
521
510
  let errorString = SpikeExceptionMapper.handleSpikeError(error)
522
511
  reject(errorString, errorString, error)
@@ -10,7 +10,6 @@ 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;
14
13
  async getCallbackUrl() {
15
14
  if (!_SpikeSdk.SpikeSdk) throw new _SpikeException.SpikeException();
16
15
  return await _SpikeSdk.SpikeSdk.getCallbackUrl(this.connectionUUID);
@@ -38,32 +37,13 @@ class SpikeWebhookConnection extends _SpikeConnection.SpikeConnection {
38
37
  const dataTypes = await _SpikeSdk.SpikeSdk.getBackgroundDeliveryDataTypes(this.connectionUUID);
39
38
  return dataTypes.map(type => this.convertDataType(type));
40
39
  }
41
- async setListener(listener) {
42
- if (_reactNative.Platform.OS !== 'ios') return;
40
+ async getBackgroundLogs() {
41
+ if (_reactNative.Platform.OS !== 'ios') return [];
43
42
  if (!_SpikeSdk.SpikeSdk) throw new _SpikeException.SpikeException();
44
- this.setupListener(listener);
45
- await _SpikeSdk.SpikeSdk.setListener(this.connectionUUID);
43
+ return await _SpikeSdk.SpikeSdk.getBackgroundLogs(this.connectionUUID);
46
44
  }
47
45
  async close() {
48
46
  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('onSubmissionFailure', 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('onSubmissionFailure');
66
- this.eventListener = undefined;
67
47
  }
68
48
  convertDataType(dataType) {
69
49
  if (dataType === 'activities_summary') {
@@ -86,6 +66,8 @@ class SpikeWebhookConnection extends _SpikeConnection.SpikeConnection {
86
66
  return new _SpikeDataType.SpikeSleepDataType();
87
67
  } else if (dataType === 'steps') {
88
68
  return new _SpikeDataType.SpikeStepsDataType();
69
+ } else if (dataType === 'body') {
70
+ return new _SpikeDataType.SpikeBodyDataType();
89
71
  }
90
72
  return new _SpikeDataType.SpikeStepsDataType();
91
73
  }
@@ -1 +1 @@
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","exports"],"sourceRoot":"../../src","sources":["SpikeWebhookConnection.ts"],"mappings":"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"}
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","getBackgroundLogs","close","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,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
+ {"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,GAInD;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,10 +1,9 @@
1
- import { NativeEventEmitter, Platform } from 'react-native';
1
+ import { Platform } from 'react-native';
2
2
  import { SpikeConnection } from './SpikeConnection';
3
3
  import { SpikeException } from './SpikeException';
4
4
  import { SpikeSdk } from './SpikeSdk';
5
- import { SpikeActivitiesStreamDataType, SpikeActivitiesSummaryDataType, SpikeBreathingDataType, SpikeCaloriesDataType, SpikeDistanceDataType, SpikeGlucoseDataType, SpikeHeartDataType, SpikeOxygenSaturationDataType, SpikeSleepDataType, SpikeStepsDataType } from './DataTypes/SpikeDataType';
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;
8
7
  async getCallbackUrl() {
9
8
  if (!SpikeSdk) throw new SpikeException();
10
9
  return await SpikeSdk.getCallbackUrl(this.connectionUUID);
@@ -32,32 +31,13 @@ export class SpikeWebhookConnection extends SpikeConnection {
32
31
  const dataTypes = await SpikeSdk.getBackgroundDeliveryDataTypes(this.connectionUUID);
33
32
  return dataTypes.map(type => this.convertDataType(type));
34
33
  }
35
- async setListener(listener) {
36
- if (Platform.OS !== 'ios') return;
34
+ async getBackgroundLogs() {
35
+ if (Platform.OS !== 'ios') return [];
37
36
  if (!SpikeSdk) throw new SpikeException();
38
- this.setupListener(listener);
39
- await SpikeSdk.setListener(this.connectionUUID);
37
+ return await SpikeSdk.getBackgroundLogs(this.connectionUUID);
40
38
  }
41
39
  async close() {
42
40
  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('onSubmissionFailure', 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('onSubmissionFailure');
60
- this.eventListener = undefined;
61
41
  }
62
42
  convertDataType(dataType) {
63
43
  if (dataType === 'activities_summary') {
@@ -80,6 +60,8 @@ export class SpikeWebhookConnection extends SpikeConnection {
80
60
  return new SpikeSleepDataType();
81
61
  } else if (dataType === 'steps') {
82
62
  return new SpikeStepsDataType();
63
+ } else if (dataType === 'body') {
64
+ return new SpikeBodyDataType();
83
65
  }
84
66
  return new SpikeStepsDataType();
85
67
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NativeEventEmitter","Platform","SpikeConnection","SpikeException","SpikeSdk","SpikeActivitiesStreamDataType","SpikeActivitiesSummaryDataType","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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"}
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","getBackgroundLogs","close"],"sourceRoot":"../../src","sources":["SpikeWebhookConnection.ts"],"mappings":"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"}
@@ -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;AAKjE,eAAe;EACbR,cAAc;EACdC,gBAAgB;EAChBC,uBAAuB;EACvBC,gBAAgB;EAChBC,wBAAwB;EACxBC,2BAA2B;EAC3BC;AACF,CAAC;AAED,SACEC,eAAe,EACfC,sBAAsB,EACtBT,cAAc"}
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;AAIjE,eAAe;EACbR,cAAc;EACdC,gBAAgB;EAChBC,uBAAuB;EACvBC,gBAAgB;EAChBC,wBAAwB;EACxBC,2BAA2B;EAC3BC;AACF,CAAC;AAED,SACEC,eAAe,EACfC,sBAAsB,EACtBT,cAAc"}
@@ -1,20 +1,15 @@
1
1
  import { SpikeConnection } from './SpikeConnection';
2
2
  import type { SpikeWebhookJob } from './DataModels/SpikeWebhookJob';
3
- import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
4
3
  import type { SpikeDataEntry } from './DataModels/SpikeData';
5
4
  import { SpikeDataType } from './DataTypes/SpikeDataType';
6
5
  export declare class SpikeWebhookConnection extends SpikeConnection {
7
- private eventListener;
8
- private webhookListener;
9
6
  getCallbackUrl(): Promise<string>;
10
7
  extractAndPostData<DataEntry extends SpikeDataEntry>(dataType: SpikeDataType<DataEntry>): Promise<SpikeWebhookJob>;
11
8
  extractAndPostDataInRange<DataEntry extends SpikeDataEntry>(dataType: SpikeDataType<DataEntry>, from: Date, to: Date): Promise<SpikeWebhookJob>;
12
9
  enableBackgroundDelivery<DataEntry extends SpikeDataEntry>(dataTypes: SpikeDataType<DataEntry>[]): Promise<void>;
13
10
  getBackgroundDeliveryDataTypes<DataEntry extends SpikeDataEntry>(): Promise<SpikeDataType<DataEntry>[]>;
14
- setListener(listener: SpikeWebhookConnectionListener | null): Promise<void>;
11
+ getBackgroundLogs(): Promise<string[]>;
15
12
  close(): Promise<void>;
16
- private setupListener;
17
- private removeListeners;
18
13
  private convertDataType;
19
14
  }
20
15
  //# 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,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAKL,aAAa,EAOd,MAAM,2BAA2B,CAAC;AAOnC,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;CA0BxB"}
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;AAEnC,qBAAa,sBAAuB,SAAQ,eAAe;IACnD,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,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,OAAO,CAAC,eAAe;CA4BxB"}
@@ -4,7 +4,6 @@ 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';
8
7
  import type { SpikeEnvironment } from './SpikeEnvironment';
9
8
  declare const _default: {
10
9
  setEnvironment: (env: SpikeEnvironment) => Promise<void>;
@@ -16,5 +15,5 @@ declare const _default: {
16
15
  initialize: () => void;
17
16
  };
18
17
  export default _default;
19
- export { SpikeConnection, SpikeWebhookConnection, SpikeDataTypes, SpikeDataType, SpikeDataEntry, SpikeLogger, SpikeWebhookConnectionListener, SpikeEnvironment, };
18
+ export { SpikeConnection, SpikeWebhookConnection, SpikeDataTypes, SpikeDataType, SpikeDataEntry, SpikeLogger, SpikeEnvironment, };
20
19
  //# 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,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"}
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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-spike-sdk",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "Spike API for health and productivity data from wearables and IoT devices",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -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.6"
8
+ s.version = "1.0.7"
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.6"
28
+ s.dependency "SpikeSDK", "1.0.8"
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,13 +1,13 @@
1
- import { NativeEventEmitter, Platform } from 'react-native';
1
+ import { 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 type { SpikeWebhookJob } from './DataModels/SpikeWebhookJob';
6
- import type { SpikeWebhookConnectionListener } from './SpikeWebhookConnectionListener';
7
6
  import type { SpikeDataEntry } from './DataModels/SpikeData';
8
7
  import {
9
8
  SpikeActivitiesStreamDataType,
10
9
  SpikeActivitiesSummaryDataType,
10
+ SpikeBodyDataType,
11
11
  SpikeBreathingDataType,
12
12
  SpikeCaloriesDataType,
13
13
  SpikeDataType,
@@ -19,16 +19,7 @@ import {
19
19
  SpikeStepsDataType,
20
20
  } from './DataTypes/SpikeDataType';
21
21
 
22
- interface ISubmissionFailure {
23
- connectionUUID: string;
24
- log: string;
25
- }
26
-
27
22
  export class SpikeWebhookConnection extends SpikeConnection {
28
- private eventListener: NativeEventEmitter | undefined;
29
-
30
- private webhookListener: SpikeWebhookConnectionListener | null = null;
31
-
32
23
  async getCallbackUrl(): Promise<string> {
33
24
  if (!SpikeSdk) throw new SpikeException();
34
25
 
@@ -89,45 +80,15 @@ export class SpikeWebhookConnection extends SpikeConnection {
89
80
  return dataTypes.map((type) => this.convertDataType(type));
90
81
  }
91
82
 
92
- async setListener(
93
- listener: SpikeWebhookConnectionListener | null
94
- ): Promise<void> {
95
- if (Platform.OS !== 'ios') return;
83
+ async getBackgroundLogs(): Promise<string[]> {
84
+ if (Platform.OS !== 'ios') return [];
96
85
  if (!SpikeSdk) throw new SpikeException();
97
86
 
98
- this.setupListener(listener);
99
-
100
- await SpikeSdk.setListener(this.connectionUUID);
87
+ return await SpikeSdk.getBackgroundLogs(this.connectionUUID);
101
88
  }
102
89
 
103
90
  async close(): Promise<void> {
104
91
  await super.close();
105
-
106
- this.removeListeners();
107
- }
108
-
109
- private setupListener(listener: SpikeWebhookConnectionListener | null) {
110
- if (!SpikeSdk) return;
111
-
112
- this.removeListeners();
113
-
114
- this.eventListener = new NativeEventEmitter(SpikeSdk);
115
- this.webhookListener = listener;
116
-
117
- this.eventListener?.addListener(
118
- 'onSubmissionFailure',
119
- (data: ISubmissionFailure) => {
120
- if (this.connectionUUID !== data.connectionUUID) return;
121
- this.webhookListener?.onBackgroundLog(data.log);
122
- }
123
- );
124
- }
125
-
126
- private removeListeners() {
127
- if (!this.eventListener) return;
128
-
129
- this.eventListener.removeAllListeners('onSubmissionFailure');
130
- this.eventListener = undefined;
131
92
  }
132
93
 
133
94
  private convertDataType<DataEntry extends SpikeDataEntry>(
@@ -153,6 +114,8 @@ export class SpikeWebhookConnection extends SpikeConnection {
153
114
  return new SpikeSleepDataType();
154
115
  } else if (dataType === 'steps') {
155
116
  return new SpikeStepsDataType();
117
+ } else if (dataType === 'body') {
118
+ return new SpikeBodyDataType();
156
119
  }
157
120
  return new SpikeStepsDataType();
158
121
  }
package/src/index.ts CHANGED
@@ -13,7 +13,6 @@ 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';
17
16
  import type { SpikeEnvironment } from './SpikeEnvironment';
18
17
 
19
18
  export default {
@@ -33,6 +32,5 @@ export {
33
32
  SpikeDataType,
34
33
  SpikeDataEntry,
35
34
  SpikeLogger,
36
- SpikeWebhookConnectionListener,
37
35
  SpikeEnvironment,
38
36
  };