react-native-rook-sdk 0.5.0 → 0.6.1
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/build.gradle +1 -1
- package/android/src/main/java/com/rooksdk/RookSdkModule.kt +15 -6
- package/ios/RookSdk.mm +35 -10
- package/lib/commonjs/context/RookSyncGateProvider.js +3 -4
- package/lib/commonjs/context/RookSyncGateProvider.js.map +1 -1
- package/lib/commonjs/context/RookSyncGateReducer.js +5 -0
- package/lib/commonjs/context/RookSyncGateReducer.js.map +1 -1
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js +0 -11
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js.map +1 -1
- package/lib/commonjs/hooks/useRookAppleHealth.js +13 -1
- package/lib/commonjs/hooks/useRookAppleHealth.js.map +1 -1
- package/lib/commonjs/hooks/useRookConfiguration.js +2 -2
- package/lib/commonjs/hooks/useRookConfiguration.js.map +1 -1
- package/lib/commonjs/hooks/useRookDataSources.js +4 -4
- package/lib/commonjs/hooks/useRookDataSources.js.map +1 -1
- package/lib/commonjs/hooks/useRookPermissions.js +26 -6
- package/lib/commonjs/hooks/useRookPermissions.js.map +1 -1
- package/lib/commonjs/hooks/useRookSummaries.js +0 -11
- package/lib/commonjs/hooks/useRookSummaries.js.map +1 -1
- package/lib/commonjs/modules/hook/useRookAutoSync.js +36 -11
- package/lib/commonjs/modules/hook/useRookAutoSync.js.map +1 -1
- package/lib/commonjs/modules/utils/errors.js +3 -2
- package/lib/commonjs/modules/utils/errors.js.map +1 -1
- package/lib/commonjs/utils/credentials.js +1 -1
- package/lib/commonjs/utils/index.js +13 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/commonjs/utils/pollingPermissions.js +39 -0
- package/lib/commonjs/utils/pollingPermissions.js.map +1 -0
- package/lib/module/context/RookSyncGateProvider.js +3 -4
- package/lib/module/context/RookSyncGateProvider.js.map +1 -1
- package/lib/module/context/RookSyncGateReducer.js +5 -0
- package/lib/module/context/RookSyncGateReducer.js.map +1 -1
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js +1 -12
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js.map +1 -1
- package/lib/module/hooks/useRookAppleHealth.js +13 -1
- package/lib/module/hooks/useRookAppleHealth.js.map +1 -1
- package/lib/module/hooks/useRookConfiguration.js +2 -2
- package/lib/module/hooks/useRookConfiguration.js.map +1 -1
- package/lib/module/hooks/useRookDataSources.js +4 -4
- package/lib/module/hooks/useRookDataSources.js.map +1 -1
- package/lib/module/hooks/useRookPermissions.js +27 -7
- package/lib/module/hooks/useRookPermissions.js.map +1 -1
- package/lib/module/hooks/useRookSummaries.js +0 -11
- package/lib/module/hooks/useRookSummaries.js.map +1 -1
- package/lib/module/modules/hook/useRookAutoSync.js +36 -11
- package/lib/module/modules/hook/useRookAutoSync.js.map +1 -1
- package/lib/module/modules/utils/errors.js +3 -2
- package/lib/module/modules/utils/errors.js.map +1 -1
- package/lib/module/utils/credentials.js +1 -1
- package/lib/module/utils/index.js +1 -0
- package/lib/module/utils/index.js.map +1 -1
- package/lib/module/utils/pollingPermissions.js +31 -0
- package/lib/module/utils/pollingPermissions.js.map +1 -0
- package/lib/typescript/src/context/RookSyncGateProvider.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts +3 -0
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAndroidBackgroundSteps.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts +2 -0
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookDataSources.d.ts +6 -2
- package/lib/typescript/src/hooks/useRookDataSources.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookPermissions.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookSummaries.d.ts +0 -1
- package/lib/typescript/src/hooks/useRookSummaries.d.ts.map +1 -1
- package/lib/typescript/src/modules/hook/useRookAutoSync.d.ts +3 -5
- package/lib/typescript/src/modules/hook/useRookAutoSync.d.ts.map +1 -1
- package/lib/typescript/src/modules/utils/errors.d.ts +1 -0
- package/lib/typescript/src/modules/utils/errors.d.ts.map +1 -1
- package/lib/typescript/src/utils/index.d.ts +1 -0
- package/lib/typescript/src/utils/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/pollingPermissions.d.ts +3 -0
- package/lib/typescript/src/utils/pollingPermissions.d.ts.map +1 -0
- package/package.json +1 -1
- package/react-native-rook-sdk.podspec +1 -1
|
@@ -7,6 +7,6 @@ exports.credentials = void 0;
|
|
|
7
7
|
// dev credentials reactNative
|
|
8
8
|
const credentials = exports.credentials = {
|
|
9
9
|
uuid: '283b8dc0-5be3-4b27-b190-6fbd219f617c',
|
|
10
|
-
pdw: '
|
|
10
|
+
pdw: '3GuGAhlE2hmVywPHjg7ResTn6of69qSllHRB'
|
|
11
11
|
};
|
|
12
12
|
//# sourceMappingURL=credentials.js.map
|
|
@@ -45,6 +45,18 @@ Object.defineProperty(exports, "packageInfo", {
|
|
|
45
45
|
return _packageInfo.packageInfo;
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
|
+
Object.defineProperty(exports, "pollingForAndroidPermissions", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _pollingPermissions.pollingForAndroidPermissions;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "pollingForHCPermissions", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _pollingPermissions.pollingForHCPermissions;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
48
60
|
var _credentials = require("./credentials");
|
|
49
61
|
var _isRunningOnAndroid = _interopRequireDefault(require("./isRunningOnAndroid"));
|
|
50
62
|
var _getRookModule = require("./getRookModule");
|
|
@@ -52,5 +64,6 @@ var _isModuleReady = require("./isModuleReady");
|
|
|
52
64
|
var _isRunningOniOS = require("./isRunningOniOS");
|
|
53
65
|
var _isValidDate = require("./isValidDate");
|
|
54
66
|
var _packageInfo = require("./packageInfo");
|
|
67
|
+
var _pollingPermissions = require("./pollingPermissions");
|
|
55
68
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
56
69
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_credentials","require","_isRunningOnAndroid","_interopRequireDefault","_getRookModule","_isModuleReady","_isRunningOniOS","_isValidDate","_packageInfo","obj","__esModule","default"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_credentials","require","_isRunningOnAndroid","_interopRequireDefault","_getRookModule","_isModuleReady","_isRunningOniOS","_isValidDate","_packageInfo","_pollingPermissions","obj","__esModule","default"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,mBAAA,GAAAR,OAAA;AAG8B,SAAAE,uBAAAO,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA","ignoreList":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.pollingForHCPermissions = exports.pollingForAndroidPermissions = void 0;
|
|
7
|
+
var _getRookModule = require("./getRookModule");
|
|
8
|
+
const timeout = new Promise((_, reject) => setTimeout(() => reject(new Error('Polling timed out after 1 minute')), 60000));
|
|
9
|
+
const pollBackgroundPermissions = async () => {
|
|
10
|
+
const rookSync = (0, _getRookModule.getRookModule)();
|
|
11
|
+
let hasEnabledBackground = false;
|
|
12
|
+
while (!hasEnabledBackground) {
|
|
13
|
+
hasEnabledBackground = await rookSync.hasAndroidBackgroundPermissions();
|
|
14
|
+
if (!hasEnabledBackground) {
|
|
15
|
+
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return true;
|
|
19
|
+
};
|
|
20
|
+
const pollHCPermissions = async () => {
|
|
21
|
+
const rookSync = (0, _getRookModule.getRookModule)();
|
|
22
|
+
let hasEnabledBackground = false;
|
|
23
|
+
while (!hasEnabledBackground) {
|
|
24
|
+
hasEnabledBackground = await rookSync.checkPermissions();
|
|
25
|
+
if (!hasEnabledBackground) {
|
|
26
|
+
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return true;
|
|
30
|
+
};
|
|
31
|
+
const pollingForAndroidPermissions = () => {
|
|
32
|
+
return Promise.race([pollBackgroundPermissions(), timeout]);
|
|
33
|
+
};
|
|
34
|
+
exports.pollingForAndroidPermissions = pollingForAndroidPermissions;
|
|
35
|
+
const pollingForHCPermissions = () => {
|
|
36
|
+
return Promise.race([pollHCPermissions(), timeout]);
|
|
37
|
+
};
|
|
38
|
+
exports.pollingForHCPermissions = pollingForHCPermissions;
|
|
39
|
+
//# sourceMappingURL=pollingPermissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_getRookModule","require","timeout","Promise","_","reject","setTimeout","Error","pollBackgroundPermissions","rookSync","getRookModule","hasEnabledBackground","hasAndroidBackgroundPermissions","resolve","pollHCPermissions","checkPermissions","pollingForAndroidPermissions","race","exports","pollingForHCPermissions"],"sourceRoot":"../../../src","sources":["utils/pollingPermissions.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAEA,MAAMC,OAAO,GAAG,IAAIC,OAAO,CAAC,CAACC,CAAC,EAAEC,MAAM,KACpCC,UAAU,CAAC,MAAMD,MAAM,CAAC,IAAIE,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,KAAK,CAC/E,CAAC;AAED,MAAMC,yBAAyB,GAAG,MAAAA,CAAA,KAAY;EAC5C,MAAMC,QAAQ,GAAG,IAAAC,4BAAa,EAAC,CAAC;EAEhC,IAAIC,oBAAoB,GAAG,KAAK;EAEhC,OAAO,CAACA,oBAAoB,EAAE;IAC5BA,oBAAoB,GAAG,MAAMF,QAAQ,CAACG,+BAA+B,CAAC,CAAC;IAEvE,IAAI,CAACD,oBAAoB,EAAE;MACzB,MAAM,IAAIR,OAAO,CAAEU,OAAO,IAAKP,UAAU,CAACO,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3D;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,iBAAiB,GAAG,MAAAA,CAAA,KAAY;EACpC,MAAML,QAAQ,GAAG,IAAAC,4BAAa,EAAC,CAAC;EAEhC,IAAIC,oBAAoB,GAAG,KAAK;EAEhC,OAAO,CAACA,oBAAoB,EAAE;IAC5BA,oBAAoB,GAAG,MAAMF,QAAQ,CAACM,gBAAgB,CAAC,CAAC;IACxD,IAAI,CAACJ,oBAAoB,EAAE;MACzB,MAAM,IAAIR,OAAO,CAAEU,OAAO,IAAKP,UAAU,CAACO,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3D;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAEM,MAAMG,4BAA4B,GAAGA,CAAA,KAAM;EAChD,OAAOb,OAAO,CAACc,IAAI,CAAC,CAACT,yBAAyB,CAAC,CAAC,EAAEN,OAAO,CAAC,CAAC;AAC7D,CAAC;AAACgB,OAAA,CAAAF,4BAAA,GAAAA,4BAAA;AAEK,MAAMG,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,OAAOhB,OAAO,CAACc,IAAI,CAAC,CAACH,iBAAiB,CAAC,CAAC,EAAEZ,OAAO,CAAC,CAAC;AACrD,CAAC;AAACgB,OAAA,CAAAC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
|
|
@@ -10,7 +10,8 @@ const initialState = {
|
|
|
10
10
|
environment: 'sandbox',
|
|
11
11
|
password: '',
|
|
12
12
|
ready: false,
|
|
13
|
-
userID: ''
|
|
13
|
+
userID: '',
|
|
14
|
+
permissions: 0
|
|
14
15
|
};
|
|
15
16
|
const RookSyncGateProvider = ({
|
|
16
17
|
environment,
|
|
@@ -24,9 +25,7 @@ const RookSyncGateProvider = ({
|
|
|
24
25
|
const {
|
|
25
26
|
startBackgroundServices
|
|
26
27
|
} = useRookAutoSync({
|
|
27
|
-
|
|
28
|
-
password,
|
|
29
|
-
environment,
|
|
28
|
+
state,
|
|
30
29
|
enableBackground: enableBackgroundSync
|
|
31
30
|
});
|
|
32
31
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useReducer","useEffect","rookSyncGateReducer","RookSyncGateContext","credentials","getRookModule","packageInfo","useRookAutoSync","initialState","clientUUID","environment","password","ready","userID","RookSyncGateProvider","children","enableLogs","enableBackgroundSync","state","dispatch","startBackgroundServices","enableBackground","initModule","type","rookSyncModule","initRook","debug","uuid","pdw","error","console","log","createElement","Provider","value"],"sourceRoot":"../../../src","sources":["context/RookSyncGateProvider.tsx"],"mappings":"AAAA;AACA,OAAOA,KAAK,IAAIC,UAAU,EAAWC,SAAS,QAAQ,OAAO;AAC7D,SAASC,mBAAmB,QAAQ,uBAAuB,CAAC,CAAC;;AAK7D,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,WAAW,EAAEC,aAAa,EAAEC,WAAW,QAAQ,UAAU;AAClE,SAASC,eAAe,QAAQ,iCAAiC;AAEjE,MAAMC,YAA+B,GAAG;EACtCC,UAAU,EAAE,EAAE;EACdC,WAAW,EAAE,SAAS;EACtBC,QAAQ,EAAE,EAAE;EACZC,KAAK,EAAE,KAAK;EACZC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"names":["React","useReducer","useEffect","rookSyncGateReducer","RookSyncGateContext","credentials","getRookModule","packageInfo","useRookAutoSync","initialState","clientUUID","environment","password","ready","userID","permissions","RookSyncGateProvider","children","enableLogs","enableBackgroundSync","state","dispatch","startBackgroundServices","enableBackground","initModule","type","rookSyncModule","initRook","debug","uuid","pdw","error","console","log","createElement","Provider","value"],"sourceRoot":"../../../src","sources":["context/RookSyncGateProvider.tsx"],"mappings":"AAAA;AACA,OAAOA,KAAK,IAAIC,UAAU,EAAWC,SAAS,QAAQ,OAAO;AAC7D,SAASC,mBAAmB,QAAQ,uBAAuB,CAAC,CAAC;;AAK7D,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,WAAW,EAAEC,aAAa,EAAEC,WAAW,QAAQ,UAAU;AAClE,SAASC,eAAe,QAAQ,iCAAiC;AAEjE,MAAMC,YAA+B,GAAG;EACtCC,UAAU,EAAE,EAAE;EACdC,WAAW,EAAE,SAAS;EACtBC,QAAQ,EAAE,EAAE;EACZC,KAAK,EAAE,KAAK;EACZC,MAAM,EAAE,EAAE;EACVC,WAAW,EAAE;AACf,CAAC;AAED,MAAMC,oBAAmD,GAAGA,CAAC;EAC3DL,WAAW;EACXD,UAAU;EACVE,QAAQ;EACRK,QAAQ;EACRC,UAAU,GAAG,KAAK;EAClBC;AACF,CAAC,KAAK;EACJ,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGpB,UAAU,CAACE,mBAAmB,EAAEM,YAAY,CAAC;EAEvE,MAAM;IAAEa;EAAwB,CAAC,GAAGd,eAAe,CAAC;IAClDY,KAAK;IACLG,gBAAgB,EAAEJ;EACpB,CAAC,CAAC;EAEFjB,SAAS,CAAC,MAAM;IACdsB,UAAU,CAAC,CAAC;EACd,CAAC,EAAE,CAACb,WAAW,EAAED,UAAU,EAAEE,QAAQ,CAAC,CAAC;EAEvC,MAAMY,UAAU,GAAG,MAAAA,CAAA,KAA2B;IAC5CH,QAAQ,CAAC;MAAEI,IAAI,EAAE,sBAAsB;MAAEd;IAAY,CAAC,CAAC;IACvDU,QAAQ,CAAC;MAAEI,IAAI,EAAE,iBAAiB;MAAEf;IAAW,CAAC,CAAC;IACjDW,QAAQ,CAAC;MAAEI,IAAI,EAAE,cAAc;MAAEb;IAAS,CAAC,CAAC;IAE5C,IAAI;MACF,MAAMc,cAAc,GAAGpB,aAAa,CAAC,CAAC;MAEtC,MAAMoB,cAAc,CAACC,QAAQ,CAAC;QAC5BhB,WAAW,EAAEJ,WAAW,CAACqB,KAAK,GAAG,aAAa,GAAGjB,WAAW;QAC5DD,UAAU,EAAEH,WAAW,CAACqB,KAAK,GAAGvB,WAAW,CAACwB,IAAI,GAAGnB,UAAU;QAC7DE,QAAQ,EAAEL,WAAW,CAACqB,KAAK,GAAGvB,WAAW,CAACyB,GAAG,GAAGlB,QAAQ;QACxDM,UAAU;QACVK,gBAAgB,EAAEJ;MACpB,CAAC,CAAC;MAEF,IAAIA,oBAAoB,EAAEG,uBAAuB,CAAC,CAAC;MAEnDD,QAAQ,CAAC;QAAEI,IAAI,EAAE,WAAW;QAAEZ,KAAK,EAAE;MAAK,CAAC,CAAC;IAC9C,CAAC,CAAC,OAAOkB,KAAK,EAAE;MACdC,OAAO,CAACC,GAAG,CAACF,KAAK,CAAC;IACpB;EACF,CAAC;EAED,oBACE/B,KAAA,CAAAkC,aAAA,CAAC9B,mBAAmB,CAAC+B,QAAQ;IAACC,KAAK,EAAE;MAAEhB,KAAK;MAAEC;IAAS;EAAE,GACtDJ,QAC2B,CAAC;AAEnC,CAAC;AAED,eAAeD,oBAAoB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["rookSyncGateReducer","state","action","type","ready","environment","clientUUID","password","userID"],"sourceRoot":"../../../src","sources":["context/RookSyncGateReducer.ts"],"mappings":"AAEA,OAAO,MAAMA,mBAAmB,GAAGA,CACjCC,KAAwB,EACxBC,MAAc,KACQ;EACtB,QAAQA,MAAM,CAACC,IAAI;IACjB,KAAK,WAAW;MACd,OAAO;QAAE,GAAGF,KAAK;QAAEG,KAAK,EAAEF,MAAM,CAACE;MAAM,CAAC;IAC1C,KAAK,sBAAsB;MACzB,OAAO;QAAE,GAAGH,KAAK;QAAEI,WAAW,EAAEH,MAAM,CAACG;MAAY,CAAC;IACtD,KAAK,iBAAiB;MACpB,OAAO;QAAE,GAAGJ,KAAK;QAAEK,UAAU,EAAEJ,MAAM,CAACI;MAAW,CAAC;IACpD,KAAK,cAAc;MACjB,OAAO;QAAE,GAAGL,KAAK;QAAEM,QAAQ,EAAEL,MAAM,CAACK;MAAS,CAAC;IAChD,KAAK,aAAa;MAChB,OAAO;QAAE,GAAGN,KAAK;QAAEO,MAAM,EAAEN,MAAM,CAACM;MAAO,CAAC;IAC5C;MACE,
|
|
1
|
+
{"version":3,"names":["rookSyncGateReducer","state","action","type","ready","environment","clientUUID","password","userID","permissions"],"sourceRoot":"../../../src","sources":["context/RookSyncGateReducer.ts"],"mappings":"AAEA,OAAO,MAAMA,mBAAmB,GAAGA,CACjCC,KAAwB,EACxBC,MAAc,KACQ;EACtB,QAAQA,MAAM,CAACC,IAAI;IACjB,KAAK,WAAW;MACd,OAAO;QAAE,GAAGF,KAAK;QAAEG,KAAK,EAAEF,MAAM,CAACE;MAAM,CAAC;IAC1C,KAAK,sBAAsB;MACzB,OAAO;QAAE,GAAGH,KAAK;QAAEI,WAAW,EAAEH,MAAM,CAACG;MAAY,CAAC;IACtD,KAAK,iBAAiB;MACpB,OAAO;QAAE,GAAGJ,KAAK;QAAEK,UAAU,EAAEJ,MAAM,CAACI;MAAW,CAAC;IACpD,KAAK,cAAc;MACjB,OAAO;QAAE,GAAGL,KAAK;QAAEM,QAAQ,EAAEL,MAAM,CAACK;MAAS,CAAC;IAChD,KAAK,aAAa;MAChB,OAAO;QAAE,GAAGN,KAAK;QAAEO,MAAM,EAAEN,MAAM,CAACM;MAAO,CAAC;IAC5C,KAAK,iBAAiB;MACpB,OAAO;QACL,GAAGP,KAAK;QACRQ,WAAW,EAAER,KAAK,CAACQ,WAAW,GAAG;MACnC,CAAC;IACH;MACE,OAAOR,KAAK;EAChB;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useRef } from 'react';
|
|
2
2
|
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
3
3
|
import { getRookModule, isModuleReady, isRunningOnAndroid } from '../utils';
|
|
4
4
|
export const useRookAndroidBackgroundSteps = () => {
|
|
@@ -8,17 +8,6 @@ export const useRookAndroidBackgroundSteps = () => {
|
|
|
8
8
|
ready
|
|
9
9
|
}
|
|
10
10
|
} = useRookSyncGateContext();
|
|
11
|
-
const startServices = useCallback(async () => {
|
|
12
|
-
try {
|
|
13
|
-
if (!ready) return;
|
|
14
|
-
const hasPermissions = await rookSync.current.hasStepsPermissions();
|
|
15
|
-
const isAlreadyStarted = await rookSync.current.isBackgroundAndroidStepsActive();
|
|
16
|
-
if (hasPermissions && !isAlreadyStarted) await rookSync.current.enableBackgroundAndroidSteps();
|
|
17
|
-
} catch (error) {}
|
|
18
|
-
}, [ready]);
|
|
19
|
-
useEffect(() => {
|
|
20
|
-
startServices();
|
|
21
|
-
}, [ready, startServices]);
|
|
22
11
|
|
|
23
12
|
/**
|
|
24
13
|
* The function `isStepsAvailable` checks if steps data is available.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOnAndroid","useRookAndroidBackgroundSteps","rookSync","state","ready","isStepsAvailable","current","hasStepsPermissions","requestStepsPermissions","enableBackgroundAndroidSteps","disableBackgroundAndroidSteps","isBackgroundAndroidStepsActive","syncTodayAndroidStepsCount","syncTodayHealthConnectStepsCount"],"sourceRoot":"../../../src","sources":["hooks/useRookAndroidBackgroundSteps.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SAASC,aAAa,EAAEC,aAAa,EAAEC,kBAAkB,QAAQ,UAAU;AAE3E,OAAO,MAAMC,6BAA6B,GAAGA,CAAA,KAAM;EACjD,MAAMC,QAAQ,GAAGN,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJK,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGP,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;EACE,MAAMQ,gBAAgB,GAAG,MAAAA,CAAA,KAA8B;IACrDL,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACD,gBAAgB,CAAC,CAAC;EAC5C,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAME,mBAAmB,GAAG,MAAAA,CAAA,KAA8B;IACxDP,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACC,mBAAmB,CAAC,CAAC;EAC/C,CAAC;;EAED;AACF;AACA;AACA;AACA;EACE,MAAMC,uBAAuB,GAAGA,CAAA,KAAwB;IACtDR,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACE,uBAAuB,CAAC,CAAC;EACnD,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMC,4BAA4B,GAAG,MAAAA,CAAA,KAA8B;IACjET,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACG,4BAA4B,CAAC,CAAC;EACxD,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMC,6BAA6B,GAAGA,CAAA,KAAwB;IAC5DV,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACI,6BAA6B,CAAC,CAAC;EACzD,CAAC;;EAED;AACF;AACA;AACA;AACA;EACE,MAAMC,8BAA8B,GAAGA,CAAA,KAAwB;IAC7DX,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACK,8BAA8B,CAAC,CAAC;EAC1D,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMC,0BAA0B,GAAGA,CAAA,KAAuB;IACxDZ,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACM,0BAA0B,CAAC,CAAC;EACtD,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMC,gCAAgC,GAAGA,CAAA,KAAuB;IAC9Db,kBAAkB,CAAC,CAAC;IACpBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACO,gCAAgC,CAAC,CAAC;EAC5D,CAAC;EAED,OAAO;IACLT,KAAK;IACLC,gBAAgB;IAChBE,mBAAmB;IACnBC,uBAAuB;IACvBC,4BAA4B;IAC5BC,6BAA6B;IAC7BC,8BAA8B;IAC9BC,0BAA0B;IAC1BC;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -32,10 +32,22 @@ export const useRookAppleHealth = () => {
|
|
|
32
32
|
isModuleReady(ready);
|
|
33
33
|
return rookSync.current.disableBackGroundUpdates();
|
|
34
34
|
};
|
|
35
|
+
const isBackGroundForSummariesEnable = async () => {
|
|
36
|
+
isRunningOniOS();
|
|
37
|
+
isModuleReady(ready);
|
|
38
|
+
return rookSync.current.isBackGroundForSummariesEnable();
|
|
39
|
+
};
|
|
40
|
+
const isBackGroundForEventsEnable = async () => {
|
|
41
|
+
isRunningOniOS();
|
|
42
|
+
isModuleReady(ready);
|
|
43
|
+
return rookSync.current.isBackGroundForEventsEnable();
|
|
44
|
+
};
|
|
35
45
|
return {
|
|
36
46
|
ready,
|
|
37
47
|
enableBackGroundUpdates,
|
|
38
|
-
disableBackGroundUpdates
|
|
48
|
+
disableBackGroundUpdates,
|
|
49
|
+
isBackGroundForEventsEnable,
|
|
50
|
+
isBackGroundForSummariesEnable
|
|
39
51
|
};
|
|
40
52
|
};
|
|
41
53
|
//# sourceMappingURL=useRookAppleHealth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOniOS","useRookAppleHealth","rookSync","state","ready","enableBackGroundUpdates","current","disableBackGroundUpdates"],"sourceRoot":"../../../src","sources":["hooks/useRookAppleHealth.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SAASC,aAAa,EAAEC,aAAa,EAAEC,cAAc,QAAQ,UAAU;AAEvE,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EACtC,MAAMC,QAAQ,GAAGN,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJK,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGP,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;AACA;AACA;EACE,MAAMQ,uBAAuB,GAAGA,CAAA,KAAwB;IACtDL,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACD,uBAAuB,CAAC,CAAC;EACnD,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,MAAME,wBAAwB,GAAGA,CAAA,KAAwB;IACvDP,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACC,wBAAwB,CAAC,CAAC;EACpD,CAAC;EAED,OAAO;
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOniOS","useRookAppleHealth","rookSync","state","ready","enableBackGroundUpdates","current","disableBackGroundUpdates","isBackGroundForSummariesEnable","isBackGroundForEventsEnable"],"sourceRoot":"../../../src","sources":["hooks/useRookAppleHealth.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SAASC,aAAa,EAAEC,aAAa,EAAEC,cAAc,QAAQ,UAAU;AAEvE,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EACtC,MAAMC,QAAQ,GAAGN,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJK,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGP,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;AACA;AACA;EACE,MAAMQ,uBAAuB,GAAGA,CAAA,KAAwB;IACtDL,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACD,uBAAuB,CAAC,CAAC;EACnD,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,MAAME,wBAAwB,GAAGA,CAAA,KAAwB;IACvDP,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACC,wBAAwB,CAAC,CAAC;EACpD,CAAC;EAED,MAAMC,8BAA8B,GAAG,MAAAA,CAAA,KAA2B;IAChER,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACE,8BAA8B,CAAC,CAAC;EAC1D,CAAC;EAED,MAAMC,2BAA2B,GAAG,MAAAA,CAAA,KAA2B;IAC7DT,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACK,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACI,OAAO,CAACG,2BAA2B,CAAC,CAAC;EACvD,CAAC;EAED,OAAO;IACLL,KAAK;IACLC,uBAAuB;IACvBE,wBAAwB;IACxBE,2BAA2B;IAC3BD;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -20,7 +20,7 @@ export const useRookConfiguration = () => {
|
|
|
20
20
|
const getUserID = async () => {
|
|
21
21
|
isModuleReady(ready);
|
|
22
22
|
const result = await rookSync.current.getUserID();
|
|
23
|
-
dispatch({
|
|
23
|
+
if (result) dispatch({
|
|
24
24
|
type: 'SET_USER_ID',
|
|
25
25
|
userID: result
|
|
26
26
|
});
|
|
@@ -36,11 +36,11 @@ export const useRookConfiguration = () => {
|
|
|
36
36
|
*/
|
|
37
37
|
const updateUserID = async userID => {
|
|
38
38
|
isModuleReady(ready);
|
|
39
|
+
const result = await rookSync.current.updateUserID(userID);
|
|
39
40
|
dispatch({
|
|
40
41
|
type: 'SET_USER_ID',
|
|
41
42
|
userID
|
|
42
43
|
});
|
|
43
|
-
const result = await rookSync.current.updateUserID(userID);
|
|
44
44
|
return result;
|
|
45
45
|
};
|
|
46
46
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOnAndroid","isRunningOniOS","useRookConfiguration","rookSync","state","ready","clientUUID","password","environment","dispatch","getUserID","result","current","type","userID","updateUserID","clearUserID","syncUserTimeZone","removeUserFromRook","enableAppleHealthSync","enableSync","disableAppleHealthSync","disableSync","isAppleHealthSyncEnabled","isSyncEnable","scheduleAndroidYesterdaySync","doOnEnd","scheduleYesterdaySync","clientPassword"],"sourceRoot":"../../../src","sources":["hooks/useRookConfiguration.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SACEC,aAAa,EACbC,aAAa,EACbC,kBAAkB,EAClBC,cAAc,QACT,UAAU;AAIjB,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,MAAMC,QAAQ,GAAGP,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJM,KAAK,EAAE;MAAEC,KAAK;MAAEC,UAAU;MAAEC,QAAQ;MAAEC;IAAY,CAAC;IACnDC;EACF,CAAC,GAAGZ,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;EACE,MAAMa,SAAS,GAAG,MAAAA,CAAA,KAA6B;IAC7CX,aAAa,CAACM,KAAK,CAAC;IAEpB,MAAMM,
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOnAndroid","isRunningOniOS","useRookConfiguration","rookSync","state","ready","clientUUID","password","environment","dispatch","getUserID","result","current","type","userID","updateUserID","clearUserID","syncUserTimeZone","removeUserFromRook","enableAppleHealthSync","enableSync","disableAppleHealthSync","disableSync","isAppleHealthSyncEnabled","isSyncEnable","scheduleAndroidYesterdaySync","doOnEnd","scheduleYesterdaySync","clientPassword"],"sourceRoot":"../../../src","sources":["hooks/useRookConfiguration.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,18 +13,18 @@ export const useRookDataSources = () => {
|
|
|
13
13
|
* Request the sources data are available in Rook
|
|
14
14
|
* @returns An array of DataSource objects
|
|
15
15
|
*/
|
|
16
|
-
const getAvailableDataSources =
|
|
16
|
+
const getAvailableDataSources = options => {
|
|
17
17
|
isModuleReady(ready);
|
|
18
|
-
return rookSync.current.getAvailableDataSources();
|
|
18
|
+
return rookSync.current.getAvailableDataSources(options);
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* Present or show a connections page with the data sources available
|
|
23
23
|
* @returns An array of DataSource objects
|
|
24
24
|
*/
|
|
25
|
-
const presentDataSourceView =
|
|
25
|
+
const presentDataSourceView = options => {
|
|
26
26
|
isModuleReady(ready);
|
|
27
|
-
return rookSync.current.presentDataSourceView();
|
|
27
|
+
return rookSync.current.presentDataSourceView(options);
|
|
28
28
|
};
|
|
29
29
|
return {
|
|
30
30
|
ready,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","useRookDataSources","rookSync","state","ready","getAvailableDataSources","current","presentDataSourceView"],"sourceRoot":"../../../src","sources":["hooks/useRookDataSources.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SAASC,aAAa,EAAEC,aAAa,QAAQ,UAAU;
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","useRookDataSources","rookSync","state","ready","getAvailableDataSources","options","current","presentDataSourceView"],"sourceRoot":"../../../src","sources":["hooks/useRookDataSources.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SAASC,aAAa,EAAEC,aAAa,QAAQ,UAAU;AAOvD,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EACtC,MAAMC,QAAQ,GAAGL,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJI,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGN,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;EACE,MAAMO,uBAAuB,GAC3BC,OAAiB,IACS;IAC1BN,aAAa,CAACI,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACK,OAAO,CAACF,uBAAuB,CAACC,OAAO,CAAC;EAC1D,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAME,qBAAqB,GAAIF,OAAiB,IAAuB;IACrEN,aAAa,CAACI,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACK,OAAO,CAACC,qBAAqB,CAACF,OAAO,CAAC;EACxD,CAAC;EAED,OAAO;IACLF,KAAK;IACLC,uBAAuB;IACvBG;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { useRef } from 'react';
|
|
2
2
|
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
3
|
-
import { getRookModule, isModuleReady, isRunningOniOS, packageInfo, isRunningOnAndroid } from '../utils';
|
|
3
|
+
import { getRookModule, isModuleReady, isRunningOniOS, packageInfo, isRunningOnAndroid, pollingForAndroidPermissions, pollingForHCPermissions } from '../utils';
|
|
4
4
|
export const useRookPermissions = () => {
|
|
5
5
|
const rookSync = useRef(getRookModule());
|
|
6
6
|
const {
|
|
7
7
|
state: {
|
|
8
8
|
ready
|
|
9
|
-
}
|
|
9
|
+
},
|
|
10
|
+
dispatch
|
|
10
11
|
} = useRookSyncGateContext();
|
|
11
12
|
|
|
12
13
|
/**
|
|
@@ -37,6 +38,11 @@ export const useRookPermissions = () => {
|
|
|
37
38
|
const requestAllAppleHealthPermissions = async () => {
|
|
38
39
|
isRunningOniOS();
|
|
39
40
|
isModuleReady(ready);
|
|
41
|
+
setTimeout(() => {
|
|
42
|
+
dispatch({
|
|
43
|
+
type: 'SET_PERMISSIONS'
|
|
44
|
+
});
|
|
45
|
+
}, 60000);
|
|
40
46
|
await rookSync.current.requestAllPermissions();
|
|
41
47
|
};
|
|
42
48
|
|
|
@@ -46,16 +52,28 @@ export const useRookPermissions = () => {
|
|
|
46
52
|
const requestAllHealthConnectPermissions = async () => {
|
|
47
53
|
isRunningOnAndroid();
|
|
48
54
|
isModuleReady(ready);
|
|
55
|
+
pollingForHCPermissions().then(() => dispatch({
|
|
56
|
+
type: 'SET_PERMISSIONS'
|
|
57
|
+
})).catch(() => {});
|
|
49
58
|
await rookSync.current.requestPermissions();
|
|
50
59
|
};
|
|
51
60
|
|
|
52
61
|
/**
|
|
53
62
|
* The function `requestAllPermissions` requests all permissions
|
|
54
63
|
*/
|
|
55
|
-
const requestAllPermissions = () => {
|
|
64
|
+
const requestAllPermissions = async () => {
|
|
56
65
|
isModuleReady(ready);
|
|
57
|
-
if (packageInfo.isAndroid)
|
|
58
|
-
|
|
66
|
+
if (packageInfo.isAndroid) {
|
|
67
|
+
pollingForHCPermissions().then(() => dispatch({
|
|
68
|
+
type: 'SET_PERMISSIONS'
|
|
69
|
+
})).catch(() => {});
|
|
70
|
+
return rookSync.current.requestPermissions();
|
|
71
|
+
}
|
|
72
|
+
const result = await rookSync.current.requestAllPermissions();
|
|
73
|
+
dispatch({
|
|
74
|
+
type: 'SET_PERMISSIONS'
|
|
75
|
+
});
|
|
76
|
+
return result;
|
|
59
77
|
};
|
|
60
78
|
|
|
61
79
|
/**
|
|
@@ -64,8 +82,7 @@ export const useRookPermissions = () => {
|
|
|
64
82
|
const openHealthConnectSettings = async () => {
|
|
65
83
|
isRunningOnAndroid();
|
|
66
84
|
isModuleReady(ready);
|
|
67
|
-
|
|
68
|
-
return result;
|
|
85
|
+
return rookSync.current.openHealthConnectSettings();
|
|
69
86
|
};
|
|
70
87
|
|
|
71
88
|
/**
|
|
@@ -76,6 +93,9 @@ export const useRookPermissions = () => {
|
|
|
76
93
|
const requestAndroidBackgroundPermissions = () => {
|
|
77
94
|
isRunningOnAndroid();
|
|
78
95
|
isModuleReady(ready);
|
|
96
|
+
pollingForAndroidPermissions().then(() => dispatch({
|
|
97
|
+
type: 'SET_PERMISSIONS'
|
|
98
|
+
})).catch(() => {});
|
|
79
99
|
return rookSync.current.requestAndroidBackgroundPermissions();
|
|
80
100
|
};
|
|
81
101
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOniOS","packageInfo","isRunningOnAndroid","useRookPermissions","rookSync","state","ready","checkAvailability","isAndroid","current","Promise","resolve","healthConnectHasPermissions","checkPermissions","requestAllAppleHealthPermissions","requestAllPermissions","requestAllHealthConnectPermissions","
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOniOS","packageInfo","isRunningOnAndroid","pollingForAndroidPermissions","pollingForHCPermissions","useRookPermissions","rookSync","state","ready","dispatch","checkAvailability","isAndroid","current","Promise","resolve","healthConnectHasPermissions","checkPermissions","requestAllAppleHealthPermissions","setTimeout","type","requestAllPermissions","requestAllHealthConnectPermissions","then","catch","requestPermissions","result","openHealthConnectSettings","requestAndroidBackgroundPermissions","hasAndroidBackgroundPermissions"],"sourceRoot":"../../../src","sources":["hooks/useRookPermissions.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,16 +9,6 @@ export const useRookSummaries = () => {
|
|
|
9
9
|
}
|
|
10
10
|
} = useRookSyncGateContext();
|
|
11
11
|
|
|
12
|
-
/**
|
|
13
|
-
* The function `syncYesterdaySummaries` checks if a module is ready and then synchronizes
|
|
14
|
-
* yesterday's summaries.
|
|
15
|
-
* @returns A Promise that resolves to a boolean value.
|
|
16
|
-
*/
|
|
17
|
-
const syncSummaries = () => {
|
|
18
|
-
isModuleReady(ready);
|
|
19
|
-
return rookSync.current.syncYesterdaySummaries();
|
|
20
|
-
};
|
|
21
|
-
|
|
22
12
|
/**
|
|
23
13
|
* Checks if in the specific date the health kit contains available data
|
|
24
14
|
* @param {'SLEEP' | 'PHYSICAL' | 'BODY'} props.type - specifies the type of summary that you want to sync
|
|
@@ -85,7 +75,6 @@ export const useRookSummaries = () => {
|
|
|
85
75
|
return {
|
|
86
76
|
ready,
|
|
87
77
|
shouldSyncFor,
|
|
88
|
-
syncSummaries,
|
|
89
78
|
reSyncFailedSummaries,
|
|
90
79
|
syncSleepSummary,
|
|
91
80
|
syncPhysicalSummary,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isValidDate","packageInfo","useRookSummaries","rookSync","state","ready","
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isValidDate","packageInfo","useRookSummaries","rookSync","state","ready","shouldSyncFor","props","type","date","isAndroid","Promise","resolve","current","syncSleepSummary","syncPhysicalSummary","syncBodySummary","reSyncFailedSummaries","syncPendingSummaries"],"sourceRoot":"../../../src","sources":["hooks/useRookSummaries.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SACEC,aAAa,EACbC,aAAa,EACbC,WAAW,EACXC,WAAW,QACN,UAAU;AAOjB,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,QAAQ,GAAGP,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJM,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGR,sBAAsB,CAAC,CAAC;;EAE5B;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAMS,aAAa,GAAIC,KAAyB,IAAuB;IACrER,aAAa,CAACM,KAAK,CAAC;IAEpB,MAAM;MAAEG,IAAI;MAAEC;IAAK,CAAC,GAAGF,KAAK;IAE5B,IAAI,CAACN,WAAW,CAACS,SAAS,EAAE;MAC1B,OAAO,IAAIC,OAAO,CAAWC,OAAO,IAAKA,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD;IAEA,OAAOT,QAAQ,CAACU,OAAO,CAACP,aAAa,CAACE,IAAI,EAAEC,IAAI,CAAC;EACnD,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,MAAMK,gBAAgB,GAAIL,IAAY,IAAuB;IAC3DV,aAAa,CAACM,KAAK,CAAC;IACpBL,WAAW,CAACS,IAAI,CAAC;IAEjB,OAAON,QAAQ,CAACU,OAAO,CAACC,gBAAgB,CAACL,IAAI,CAAC;EAChD,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,MAAMM,mBAAmB,GAAIN,IAAY,IAAuB;IAC9DV,aAAa,CAACM,KAAK,CAAC;IACpBL,WAAW,CAACS,IAAI,CAAC;IAEjB,OAAON,QAAQ,CAACU,OAAO,CAACE,mBAAmB,CAACN,IAAI,CAAC;EACnD,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,MAAMO,eAAe,GAAIP,IAAY,IAAuB;IAC1DV,aAAa,CAACM,KAAK,CAAC;IACpBL,WAAW,CAACS,IAAI,CAAC;IAEjB,OAAON,QAAQ,CAACU,OAAO,CAACG,eAAe,CAACP,IAAI,CAAC;EAC/C,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAMQ,qBAAqB,GAAGA,CAAA,KAAwB;IACpDlB,aAAa,CAACM,KAAK,CAAC;IACpB,OAAOF,QAAQ,CAACU,OAAO,CAACK,oBAAoB,CAAC,CAAC;EAChD,CAAC;EAED,OAAO;IACLb,KAAK;IACLC,aAAa;IACbW,qBAAqB;IACrBH,gBAAgB;IAChBC,mBAAmB;IACnBC;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -3,10 +3,13 @@ import { useEffect, useRef } from 'react';
|
|
|
3
3
|
import { AppState, Platform } from 'react-native';
|
|
4
4
|
import { errors } from '../utils/errors';
|
|
5
5
|
import { getRookModule } from '../../utils';
|
|
6
|
-
export const useRookAutoSync =
|
|
6
|
+
export const useRookAutoSync = ({
|
|
7
|
+
enableBackground,
|
|
8
|
+
state
|
|
9
|
+
}) => {
|
|
7
10
|
const appState = useRef(AppState.currentState);
|
|
8
11
|
useEffect(() => {
|
|
9
|
-
if (!
|
|
12
|
+
if (!enableBackground) return;
|
|
10
13
|
const subscription = AppState.addEventListener('change', nextAppState => {
|
|
11
14
|
if (
|
|
12
15
|
// Check previous state to check if he app was inactive or in background
|
|
@@ -20,23 +23,38 @@ export const useRookAutoSync = props => {
|
|
|
20
23
|
subscription.remove();
|
|
21
24
|
};
|
|
22
25
|
}, []);
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (!state.ready || state.permissions === 0) return;
|
|
28
|
+
startBackgroundServices();
|
|
29
|
+
}, [state.ready, state.permissions, state.userID]);
|
|
23
30
|
const startBackgroundServices = () => {
|
|
24
31
|
if (Platform.OS === 'android') startAndroidBackgroundSync();else startIOSBackgroundSync();
|
|
25
32
|
};
|
|
26
33
|
const startAndroidBackgroundSync = async () => {
|
|
27
34
|
try {
|
|
28
35
|
const rookSyncModule = getRookModule();
|
|
36
|
+
const userID = await rookSyncModule.getUserID();
|
|
37
|
+
if (!userID) {
|
|
38
|
+
console.log(errors.noUserIDAndroidBackground);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
29
41
|
const hasHCPermissions = await rookSyncModule.checkPermissions();
|
|
30
42
|
const hasAndroidPermissions = await rookSyncModule.hasAndroidBackgroundPermissions();
|
|
43
|
+
const {
|
|
44
|
+
clientUUID,
|
|
45
|
+
password,
|
|
46
|
+
environment
|
|
47
|
+
} = state;
|
|
31
48
|
if (hasHCPermissions && hasAndroidPermissions) {
|
|
32
49
|
await rookSyncModule.scheduleYesterdaySync({
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
50
|
+
clientPassword: password,
|
|
51
|
+
clientUUID,
|
|
52
|
+
doOnEnd: 'oldest',
|
|
53
|
+
environment
|
|
37
54
|
});
|
|
38
|
-
|
|
39
|
-
|
|
55
|
+
await rookSyncModule.enableBackgroundAndroidSteps();
|
|
56
|
+
console.log('ROOK - Background enabled successfully');
|
|
57
|
+
} else console.log(errors.autoStartAndroidBackgroundSync);
|
|
40
58
|
} catch (error) {
|
|
41
59
|
console.log(error);
|
|
42
60
|
}
|
|
@@ -44,10 +62,17 @@ export const useRookAutoSync = props => {
|
|
|
44
62
|
const startIOSBackgroundSync = async () => {
|
|
45
63
|
try {
|
|
46
64
|
const rookSyncModule = getRookModule();
|
|
65
|
+
const userID = await rookSyncModule.getUserID();
|
|
66
|
+
if (!userID) {
|
|
67
|
+
console.error(errors.noUserIDAndroidBackground);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
47
70
|
await rookSyncModule.getTodaySteps();
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
71
|
+
await rookSyncModule.enableBackGroundUpdates();
|
|
72
|
+
console.log('ROOK - Background enabled successfully');
|
|
73
|
+
} catch (err) {
|
|
74
|
+
const error = err;
|
|
75
|
+
if (error.message && error.message.includes('emptyUserId')) console.error(errors.noUserIDAndroidBackground);else console.error(errors.autoStartIOSBackgroundSync);
|
|
51
76
|
}
|
|
52
77
|
};
|
|
53
78
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","AppState","Platform","errors","getRookModule","useRookAutoSync","
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","AppState","Platform","errors","getRookModule","useRookAutoSync","enableBackground","state","appState","currentState","subscription","addEventListener","nextAppState","current","match","startBackgroundServices","remove","ready","permissions","userID","OS","startAndroidBackgroundSync","startIOSBackgroundSync","rookSyncModule","getUserID","console","log","noUserIDAndroidBackground","hasHCPermissions","checkPermissions","hasAndroidPermissions","hasAndroidBackgroundPermissions","clientUUID","password","environment","scheduleYesterdaySync","clientPassword","doOnEnd","enableBackgroundAndroidSteps","autoStartAndroidBackgroundSync","error","getTodaySteps","enableBackGroundUpdates","err","message","includes","autoStartIOSBackgroundSync"],"sourceRoot":"../../../../src","sources":["modules/hook/useRookAutoSync.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export const errors = {
|
|
2
|
-
autoStartAndroidBackgroundSync: 'We try to start the background sync but some permissions are missing on android, please grant permissions on health connect and android permissions, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/grantpermissons/#request-permissions',
|
|
3
|
-
autoStartIOSBackgroundSync: 'We try to start the background sync but some permissions are
|
|
2
|
+
autoStartAndroidBackgroundSync: 'ROOK - We try to start the background sync but some permissions are missing on android, please grant permissions on health connect and android permissions, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/grantpermissons/#request-permissions',
|
|
3
|
+
autoStartIOSBackgroundSync: 'ROOK - We try to start the background sync but some error occurred please check the permissions are granted and data exists in the device, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/grantpermissons/#request-permissions',
|
|
4
|
+
noUserIDAndroidBackground: "ROOK - We couldn't start the background sync cause there is no user registered, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/updateuserid/"
|
|
4
5
|
};
|
|
5
6
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["errors","autoStartAndroidBackgroundSync","autoStartIOSBackgroundSync"],"sourceRoot":"../../../../src","sources":["modules/utils/errors.ts"],"mappings":"AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,8BAA8B,EAC5B,
|
|
1
|
+
{"version":3,"names":["errors","autoStartAndroidBackgroundSync","autoStartIOSBackgroundSync","noUserIDAndroidBackground"],"sourceRoot":"../../../../src","sources":["modules/utils/errors.ts"],"mappings":"AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,8BAA8B,EAC5B,wQAAwQ;EAE1QC,0BAA0B,EACxB,wPAAwP;EAC1PC,yBAAyB,EACvB;AACJ,CAAC","ignoreList":[]}
|
|
@@ -5,4 +5,5 @@ export { isModuleReady } from './isModuleReady';
|
|
|
5
5
|
export { isRunningOniOS } from './isRunningOniOS';
|
|
6
6
|
export { isValidDate } from './isValidDate';
|
|
7
7
|
export { packageInfo } from './packageInfo';
|
|
8
|
+
export { pollingForAndroidPermissions, pollingForHCPermissions } from './pollingPermissions';
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["credentials","default","isRunningOnAndroid","getRookModule","isModuleReady","isRunningOniOS","isValidDate","packageInfo"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"AAAA,SAASA,WAAW,QAAQ,eAAe;AAC3C,SAASC,OAAO,IAAIC,kBAAkB,QAAQ,sBAAsB;AACpE,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,WAAW,QAAQ,eAAe","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["credentials","default","isRunningOnAndroid","getRookModule","isModuleReady","isRunningOniOS","isValidDate","packageInfo","pollingForAndroidPermissions","pollingForHCPermissions"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"AAAA,SAASA,WAAW,QAAQ,eAAe;AAC3C,SAASC,OAAO,IAAIC,kBAAkB,QAAQ,sBAAsB;AACpE,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,WAAW,QAAQ,eAAe;AAC3C,SACEC,4BAA4B,EAC5BC,uBAAuB,QAClB,sBAAsB","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { getRookModule } from './getRookModule';
|
|
2
|
+
const timeout = new Promise((_, reject) => setTimeout(() => reject(new Error('Polling timed out after 1 minute')), 60000));
|
|
3
|
+
const pollBackgroundPermissions = async () => {
|
|
4
|
+
const rookSync = getRookModule();
|
|
5
|
+
let hasEnabledBackground = false;
|
|
6
|
+
while (!hasEnabledBackground) {
|
|
7
|
+
hasEnabledBackground = await rookSync.hasAndroidBackgroundPermissions();
|
|
8
|
+
if (!hasEnabledBackground) {
|
|
9
|
+
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return true;
|
|
13
|
+
};
|
|
14
|
+
const pollHCPermissions = async () => {
|
|
15
|
+
const rookSync = getRookModule();
|
|
16
|
+
let hasEnabledBackground = false;
|
|
17
|
+
while (!hasEnabledBackground) {
|
|
18
|
+
hasEnabledBackground = await rookSync.checkPermissions();
|
|
19
|
+
if (!hasEnabledBackground) {
|
|
20
|
+
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return true;
|
|
24
|
+
};
|
|
25
|
+
export const pollingForAndroidPermissions = () => {
|
|
26
|
+
return Promise.race([pollBackgroundPermissions(), timeout]);
|
|
27
|
+
};
|
|
28
|
+
export const pollingForHCPermissions = () => {
|
|
29
|
+
return Promise.race([pollHCPermissions(), timeout]);
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=pollingPermissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getRookModule","timeout","Promise","_","reject","setTimeout","Error","pollBackgroundPermissions","rookSync","hasEnabledBackground","hasAndroidBackgroundPermissions","resolve","pollHCPermissions","checkPermissions","pollingForAndroidPermissions","race","pollingForHCPermissions"],"sourceRoot":"../../../src","sources":["utils/pollingPermissions.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,iBAAiB;AAE/C,MAAMC,OAAO,GAAG,IAAIC,OAAO,CAAC,CAACC,CAAC,EAAEC,MAAM,KACpCC,UAAU,CAAC,MAAMD,MAAM,CAAC,IAAIE,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,KAAK,CAC/E,CAAC;AAED,MAAMC,yBAAyB,GAAG,MAAAA,CAAA,KAAY;EAC5C,MAAMC,QAAQ,GAAGR,aAAa,CAAC,CAAC;EAEhC,IAAIS,oBAAoB,GAAG,KAAK;EAEhC,OAAO,CAACA,oBAAoB,EAAE;IAC5BA,oBAAoB,GAAG,MAAMD,QAAQ,CAACE,+BAA+B,CAAC,CAAC;IAEvE,IAAI,CAACD,oBAAoB,EAAE;MACzB,MAAM,IAAIP,OAAO,CAAES,OAAO,IAAKN,UAAU,CAACM,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3D;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,iBAAiB,GAAG,MAAAA,CAAA,KAAY;EACpC,MAAMJ,QAAQ,GAAGR,aAAa,CAAC,CAAC;EAEhC,IAAIS,oBAAoB,GAAG,KAAK;EAEhC,OAAO,CAACA,oBAAoB,EAAE;IAC5BA,oBAAoB,GAAG,MAAMD,QAAQ,CAACK,gBAAgB,CAAC,CAAC;IACxD,IAAI,CAACJ,oBAAoB,EAAE;MACzB,MAAM,IAAIP,OAAO,CAAES,OAAO,IAAKN,UAAU,CAACM,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3D;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAMG,4BAA4B,GAAGA,CAAA,KAAM;EAChD,OAAOZ,OAAO,CAACa,IAAI,CAAC,CAACR,yBAAyB,CAAC,CAAC,EAAEN,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,OAAO,MAAMe,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,OAAOd,OAAO,CAACa,IAAI,CAAC,CAACH,iBAAiB,CAAC,CAAC,EAAEX,OAAO,CAAC,CAAC;AACrD,CAAC","ignoreList":[]}
|