@ovok/native 1.5.2 → 1.5.3

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.
Files changed (79) hide show
  1. package/lib/commonjs/modules/background-sync/android-background-sync.js +35 -2
  2. package/lib/commonjs/modules/background-sync/android-background-sync.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/constants/measurement-field-catalog.js +80 -88
  4. package/lib/commonjs/modules/bt-management/constants/measurement-field-catalog.js.map +1 -1
  5. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js +95 -40
  6. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  7. package/lib/commonjs/modules/data-sync/components/android/android-health-sync.js +1 -1
  8. package/lib/commonjs/modules/data-sync/components/android/android-health-sync.js.map +1 -1
  9. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js +94 -12
  10. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  11. package/lib/commonjs/modules/data-sync/components/apple/apple-health-sync.js +1 -1
  12. package/lib/commonjs/modules/data-sync/components/apple/apple-health-sync.js.map +1 -1
  13. package/lib/commonjs/modules/data-sync/index.js +11 -0
  14. package/lib/commonjs/modules/data-sync/index.js.map +1 -1
  15. package/lib/commonjs/modules/data-sync/services/managers/sync-state-manager.js +15 -1
  16. package/lib/commonjs/modules/data-sync/services/managers/sync-state-manager.js.map +1 -1
  17. package/lib/commonjs/modules/data-sync/types/health-authorization-status.js +6 -0
  18. package/lib/commonjs/modules/data-sync/types/health-authorization-status.js.map +1 -0
  19. package/lib/module/modules/background-sync/android-background-sync.js +33 -1
  20. package/lib/module/modules/background-sync/android-background-sync.js.map +1 -1
  21. package/lib/module/modules/bt-management/constants/measurement-field-catalog.js +81 -89
  22. package/lib/module/modules/bt-management/constants/measurement-field-catalog.js.map +1 -1
  23. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js +95 -40
  24. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  25. package/lib/module/modules/data-sync/components/android/android-health-sync.js +1 -1
  26. package/lib/module/modules/data-sync/components/android/android-health-sync.js.map +1 -1
  27. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js +95 -13
  28. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  29. package/lib/module/modules/data-sync/components/apple/apple-health-sync.js +1 -1
  30. package/lib/module/modules/data-sync/components/apple/apple-health-sync.js.map +1 -1
  31. package/lib/module/modules/data-sync/index.js +1 -0
  32. package/lib/module/modules/data-sync/index.js.map +1 -1
  33. package/lib/module/modules/data-sync/services/managers/sync-state-manager.js +15 -1
  34. package/lib/module/modules/data-sync/services/managers/sync-state-manager.js.map +1 -1
  35. package/lib/module/modules/data-sync/types/health-authorization-status.js +4 -0
  36. package/lib/module/modules/data-sync/types/health-authorization-status.js.map +1 -0
  37. package/lib/typescript/commonjs/src/modules/background-sync/android-background-sync.d.ts +24 -1
  38. package/lib/typescript/commonjs/src/modules/background-sync/android-background-sync.d.ts.map +1 -1
  39. package/lib/typescript/commonjs/src/modules/bt-management/constants/measurement-field-catalog.d.ts.map +1 -1
  40. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts +1 -1
  41. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  42. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-sync.d.ts.map +1 -1
  43. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts +1 -1
  44. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  45. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-sync.d.ts.map +1 -1
  46. package/lib/typescript/commonjs/src/modules/data-sync/components/data-sync.d.ts +2 -2
  47. package/lib/typescript/commonjs/src/modules/data-sync/index.d.ts +1 -0
  48. package/lib/typescript/commonjs/src/modules/data-sync/index.d.ts.map +1 -1
  49. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
  50. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-state-manager.d.ts +1 -0
  51. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-state-manager.d.ts.map +1 -1
  52. package/lib/typescript/commonjs/src/modules/data-sync/types/android-health-connect-authorization-provider-props.d.ts +3 -0
  53. package/lib/typescript/commonjs/src/modules/data-sync/types/android-health-connect-authorization-provider-props.d.ts.map +1 -1
  54. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +5 -1
  55. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  56. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +15 -0
  57. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -0
  58. package/lib/typescript/module/src/modules/background-sync/android-background-sync.d.ts +24 -1
  59. package/lib/typescript/module/src/modules/background-sync/android-background-sync.d.ts.map +1 -1
  60. package/lib/typescript/module/src/modules/bt-management/constants/measurement-field-catalog.d.ts.map +1 -1
  61. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts +1 -1
  62. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  63. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-sync.d.ts.map +1 -1
  64. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts +1 -1
  65. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  66. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-sync.d.ts.map +1 -1
  67. package/lib/typescript/module/src/modules/data-sync/components/data-sync.d.ts +2 -2
  68. package/lib/typescript/module/src/modules/data-sync/index.d.ts +1 -0
  69. package/lib/typescript/module/src/modules/data-sync/index.d.ts.map +1 -1
  70. package/lib/typescript/module/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
  71. package/lib/typescript/module/src/modules/data-sync/services/managers/sync-state-manager.d.ts +1 -0
  72. package/lib/typescript/module/src/modules/data-sync/services/managers/sync-state-manager.d.ts.map +1 -1
  73. package/lib/typescript/module/src/modules/data-sync/types/android-health-connect-authorization-provider-props.d.ts +3 -0
  74. package/lib/typescript/module/src/modules/data-sync/types/android-health-connect-authorization-provider-props.d.ts.map +1 -1
  75. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +5 -1
  76. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  77. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +15 -0
  78. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -0
  79. package/package.json +2 -2
@@ -8,36 +8,118 @@ var _reactNativeHealthkit = require("@kingstinct/react-native-healthkit");
8
8
  var React = _interopRequireWildcard(require("react"));
9
9
  var _jsxRuntime = require("react/jsx-runtime");
10
10
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ const getNotRequestedIdentifiers = async (identifiers, getStatus) => {
12
+ const statuses = await Promise.all(identifiers.map(async identifier => ({
13
+ identifier,
14
+ status: await getStatus(identifier)
15
+ })));
16
+ return statuses.filter(({
17
+ status
18
+ }) => status === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest).map(({
19
+ identifier
20
+ }) => identifier);
21
+ };
11
22
  const AppleHealthAuthorizationProvider = exports.AppleHealthAuthorizationProvider = /*#__PURE__*/React.memo(({
12
23
  readIdentifiers,
13
24
  writeIdentifiers,
14
25
  fallback,
15
26
  children,
16
27
  skipRequest,
17
- renderManualRequestUI
28
+ renderManualRequestUI,
29
+ onAuthorizationStatusChange
18
30
  }) => {
19
31
  const [authorizationStatus, requestAuthorization] = (0, _reactNativeHealthkit.useHealthkitAuthorization)(readIdentifiers, writeIdentifiers);
20
- const shouldRenderManualRequestUI = renderManualRequestUI && authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest && !skipRequest;
21
- const shouldRenderFallback = fallback && authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest && !skipRequest;
32
+ const [requestState, setRequestState] = React.useState("unknown");
33
+ const [notRequestedReadIdentifiers, setNotRequestedReadIdentifiers] = React.useState(readIdentifiers);
34
+ const [notRequestedWriteIdentifiers, setNotRequestedWriteIdentifiers] = React.useState(writeIdentifiers || []);
35
+ const [requestError, setRequestError] = React.useState();
36
+ const requestKey = `${readIdentifiers.join(",")}::${(writeIdentifiers || []).join(",")}`;
37
+ const identifiersRef = React.useRef({
38
+ readIdentifiers,
39
+ writeIdentifiers
40
+ });
41
+ identifiersRef.current = {
42
+ readIdentifiers,
43
+ writeIdentifiers
44
+ };
45
+ const previousRequestKey = React.useRef(requestKey);
46
+ const status = React.useMemo(() => ({
47
+ error: requestError,
48
+ state: requestState,
49
+ notRequestedReadIdentifiers,
50
+ notRequestedWriteIdentifiers
51
+ }), [notRequestedReadIdentifiers, notRequestedWriteIdentifiers, requestError, requestState]);
52
+ React.useEffect(() => {
53
+ onAuthorizationStatusChange?.(status);
54
+ }, [onAuthorizationStatusChange, status]);
55
+ const inspectAuthorization = React.useCallback(async () => {
56
+ const {
57
+ readIdentifiers: currentRead,
58
+ writeIdentifiers: currentWrite
59
+ } = identifiersRef.current;
60
+ const [notRequestedRead, notRequestedWrite] = await Promise.all([getNotRequestedIdentifiers(currentRead, identifier => (0, _reactNativeHealthkit.getRequestStatusForAuthorization)([identifier])), getNotRequestedIdentifiers(currentWrite || [], identifier => (0, _reactNativeHealthkit.getRequestStatusForAuthorization)([], [identifier]))]);
61
+ setNotRequestedReadIdentifiers(notRequestedRead);
62
+ setNotRequestedWriteIdentifiers(notRequestedWrite);
63
+ }, []);
64
+ const requestAccess = React.useCallback(async () => {
65
+ setRequestState("requesting");
66
+ try {
67
+ await requestAuthorization();
68
+ await inspectAuthorization();
69
+ setRequestError(undefined);
70
+ setRequestState("ready");
71
+ } catch (error) {
72
+ const normalizedError = error instanceof Error ? error : new Error(String(error));
73
+ setRequestError(normalizedError);
74
+ setRequestState("error");
75
+ }
76
+ }, [inspectAuthorization, requestAuthorization]);
22
77
  React.useEffect(() => {
23
- if (renderManualRequestUI) {
78
+ if (previousRequestKey.current === requestKey) {
24
79
  return;
25
80
  }
26
- requestAuthorization();
27
- }, [readIdentifiers, writeIdentifiers, requestAuthorization, renderManualRequestUI]);
28
- if (!authorizationStatus) {
29
- return null;
81
+ previousRequestKey.current = requestKey;
82
+ setRequestError(undefined);
83
+ setRequestState(authorizationStatus === null ? "unknown" : authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest ? "shouldRequest" : "ready");
84
+ setNotRequestedReadIdentifiers(readIdentifiers);
85
+ setNotRequestedWriteIdentifiers(writeIdentifiers || []);
86
+ }, [authorizationStatus, readIdentifiers, requestKey, writeIdentifiers]);
87
+ React.useEffect(() => {
88
+ if (authorizationStatus === null) {
89
+ return;
90
+ }
91
+ void inspectAuthorization().catch(error => {
92
+ const normalizedError = error instanceof Error ? error : new Error(String(error));
93
+ setRequestError(normalizedError);
94
+ setRequestState("error");
95
+ });
96
+ setRequestState(currentState => currentState === "unknown" ? authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest ? "shouldRequest" : "ready" : currentState);
97
+ }, [authorizationStatus, inspectAuthorization]);
98
+ React.useEffect(() => {
99
+ if (renderManualRequestUI || skipRequest || authorizationStatus !== _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest || requestState !== "shouldRequest") {
100
+ return;
101
+ }
102
+ void requestAccess();
103
+ }, [authorizationStatus, requestAccess, renderManualRequestUI, requestState, skipRequest]);
104
+ const needsAuthorization = requestState === "shouldRequest" || requestState === "requesting" || requestState === "unknown" && authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.shouldRequest;
105
+ const shouldRenderManualRequestUI = renderManualRequestUI && needsAuthorization && requestState !== "requesting" && !skipRequest;
106
+ const shouldRenderFallback = fallback && needsAuthorization && !skipRequest;
107
+ if (skipRequest || requestState === "ready" || requestState === "unknown" && authorizationStatus === _reactNativeHealthkit.HKAuthorizationRequestStatus.unnecessary) {
108
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
109
+ children: children
110
+ });
30
111
  }
31
112
  if (shouldRenderManualRequestUI) {
32
- return renderManualRequestUI?.(requestAuthorization);
113
+ return renderManualRequestUI?.(requestAccess);
33
114
  }
34
115
  if (shouldRenderFallback) {
35
116
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
36
117
  children: fallback || null
37
118
  });
38
119
  }
39
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
40
- children: children
41
- });
120
+ if (requestState === "error" || requestState === "unknown") {
121
+ return null;
122
+ }
123
+ return null;
42
124
  });
43
125
  //# sourceMappingURL=apple-health-authorization-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeHealthkit","require","React","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AppleHealthAuthorizationProvider","exports","memo","readIdentifiers","writeIdentifiers","fallback","children","skipRequest","renderManualRequestUI","authorizationStatus","requestAuthorization","useHealthkitAuthorization","shouldRenderManualRequestUI","HKAuthorizationRequestStatus","shouldRequest","shouldRenderFallback","useEffect","jsx","Fragment"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/components/apple/apple-health-authorization-provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA+B,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAIxB,MAAMkB,gCAAgC,GAAAC,OAAA,CAAAD,gCAAA,gBAAGtB,KAAK,CAACwB,IAAI,CACxD,CAAC;EACCC,eAAe;EACfC,gBAAgB;EAChBC,QAAQ;EACRC,QAAQ;EACRC,WAAW;EACXC;AAC8D,CAAC,KAAK;EACpE,MAAM,CAACC,mBAAmB,EAAEC,oBAAoB,CAAC,GAC/C,IAAAC,+CAAyB,EAACR,eAAe,EAAEC,gBAAgB,CAAC;EAE9D,MAAMQ,2BAA2B,GAC/BJ,qBAAqB,IACrBC,mBAAmB,KAAKI,kDAA4B,CAACC,aAAa,IAClE,CAACP,WAAW;EAEd,MAAMQ,oBAAoB,GACxBV,QAAQ,IACRI,mBAAmB,KAAKI,kDAA4B,CAACC,aAAa,IAClE,CAACP,WAAW;EAEd7B,KAAK,CAACsC,SAAS,CAAC,MAAM;IACpB,IAAIR,qBAAqB,EAAE;MACzB;IACF;IAEAE,oBAAoB,CAAC,CAAC;EACxB,CAAC,EAAE,CACDP,eAAe,EACfC,gBAAgB,EAChBM,oBAAoB,EACpBF,qBAAqB,CACtB,CAAC;EAEF,IAAI,CAACC,mBAAmB,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,IAAIG,2BAA2B,EAAE;IAC/B,OAAOJ,qBAAqB,GAAGE,oBAAoB,CAAC;EACtD;EAEA,IAAIK,oBAAoB,EAAE;IACxB,oBAAO,IAAAnC,WAAA,CAAAqC,GAAA,EAAArC,WAAA,CAAAsC,QAAA;MAAAZ,QAAA,EAAGD,QAAQ,IAAI;IAAI,CAAG,CAAC;EAChC;EAEA,oBAAO,IAAAzB,WAAA,CAAAqC,GAAA,EAAArC,WAAA,CAAAsC,QAAA;IAAAZ,QAAA,EAAGA;EAAQ,CAAG,CAAC;AACxB,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeHealthkit","require","React","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getNotRequestedIdentifiers","identifiers","getStatus","statuses","Promise","all","map","identifier","status","filter","HKAuthorizationRequestStatus","shouldRequest","AppleHealthAuthorizationProvider","exports","memo","readIdentifiers","writeIdentifiers","fallback","children","skipRequest","renderManualRequestUI","onAuthorizationStatusChange","authorizationStatus","requestAuthorization","useHealthkitAuthorization","requestState","setRequestState","useState","notRequestedReadIdentifiers","setNotRequestedReadIdentifiers","notRequestedWriteIdentifiers","setNotRequestedWriteIdentifiers","requestError","setRequestError","requestKey","join","identifiersRef","useRef","current","previousRequestKey","useMemo","error","state","useEffect","inspectAuthorization","useCallback","currentRead","currentWrite","notRequestedRead","notRequestedWrite","getRequestStatusForAuthorization","requestAccess","undefined","normalizedError","Error","String","catch","currentState","needsAuthorization","shouldRenderManualRequestUI","shouldRenderFallback","unnecessary","jsx","Fragment"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/components/apple/apple-health-authorization-provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -76,7 +76,7 @@ const AppleHealthSync = exports.AppleHealthSync = /*#__PURE__*/React.memo(({
76
76
  if (!serviceRef.current) {
77
77
  return;
78
78
  }
79
- const pauseReason = !isConnected ? "offline" : wifiOnly && type !== "wifi" ? "wifi-only" : undefined;
79
+ const pauseReason = isConnected === false ? "offline" : wifiOnly && type !== "wifi" ? "wifi-only" : undefined;
80
80
  if (pauseReason) {
81
81
  serviceRef.current.pauseSync(pauseReason);
82
82
  return;
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_netinfo","React","_interopRequireWildcard","_useListenChanges","_appleHealthSyncService","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AppleHealthSync","exports","memo","dataToSync","chunkSize","wifiOnly","backgroundDelivery","onError","onProgress","client","useClient","patient","useMedplumProfile","serviceRef","useRef","isConnected","type","useNetInfo","onErrorRef","onProgressRef","progressRef","updateProgress","useCallback","progress","current","measurementTypeKey","syncData","AppleHealthSyncService","getInstance","patientId","id","onSyncError","error","startSync","useEffect","useListenChanges","pauseReason","undefined","pauseSync","stopSync"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/components/apple/apple-health-sync.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_netinfo","React","_interopRequireWildcard","_useListenChanges","_appleHealthSyncService","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AppleHealthSync","exports","memo","dataToSync","chunkSize","wifiOnly","backgroundDelivery","onError","onProgress","client","useClient","patient","useMedplumProfile","serviceRef","useRef","isConnected","type","useNetInfo","onErrorRef","onProgressRef","progressRef","updateProgress","useCallback","progress","current","measurementTypeKey","syncData","AppleHealthSyncService","getInstance","patientId","id","onSyncError","error","startSync","useEffect","useListenChanges","pauseReason","undefined","pauseSync","stopSync"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/components/apple/apple-health-sync.tsx"],"mappings":"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","ignoreList":[]}
@@ -58,4 +58,15 @@ Object.keys(_androidHealthSyncProps).forEach(function (key) {
58
58
  }
59
59
  });
60
60
  });
61
+ var _healthAuthorizationStatus = require("./types/health-authorization-status.js");
62
+ Object.keys(_healthAuthorizationStatus).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _healthAuthorizationStatus[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function () {
68
+ return _healthAuthorizationStatus[key];
69
+ }
70
+ });
71
+ });
61
72
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_dataSync","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_appleHealthSyncProps","_syncProgressList","_syncProgress","_androidHealthSyncProps"],"sourceRoot":"../../../../src","sources":["modules/data-sync/index.ts"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,qBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,qBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,qBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,qBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,iBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,iBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,iBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,iBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,aAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,aAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,aAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,aAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,uBAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,uBAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,uBAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,uBAAA,CAAAR,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_dataSync","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_appleHealthSyncProps","_syncProgressList","_syncProgress","_androidHealthSyncProps","_healthAuthorizationStatus"],"sourceRoot":"../../../../src","sources":["modules/data-sync/index.ts"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,qBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,qBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,qBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,qBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,iBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,iBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,iBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,iBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,aAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,aAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,aAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,aAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,uBAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,uBAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,uBAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,uBAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,0BAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,0BAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,0BAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,0BAAA,CAAAT,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -16,6 +16,7 @@ class SyncStateManager {
16
16
  * because the read cursor only advances once a read has returned.
17
17
  */
18
18
 
19
+ rerunRequested = false;
19
20
  shouldStopSync = false;
20
21
  initialDataFetched = false;
21
22
  latestObservationDates = [];
@@ -26,7 +27,19 @@ class SyncStateManager {
26
27
 
27
28
  /** Runs `sync`, or joins the run already under way. */
28
29
  async once(sync) {
29
- this.inFlight ??= sync().finally(() => {
30
+ if (this.inFlight) {
31
+ if (this.shouldStopSync) {
32
+ this.rerunRequested = true;
33
+ }
34
+ const inFlight = this.inFlight;
35
+ await inFlight;
36
+ if (this.rerunRequested && !this.inFlight) {
37
+ this.rerunRequested = false;
38
+ return this.once(sync);
39
+ }
40
+ return;
41
+ }
42
+ this.inFlight = sync().finally(() => {
30
43
  this.inFlight = undefined;
31
44
  });
32
45
  return this.inFlight;
@@ -37,6 +50,7 @@ class SyncStateManager {
37
50
  this.initialDataFetched = false;
38
51
  this.latestObservationDates = [];
39
52
  this.results = [];
53
+ this.rerunRequested = false;
40
54
  }
41
55
  pause(reason) {
42
56
  this.shouldStopSync = true;
@@ -1 +1 @@
1
- {"version":3,"names":["SyncStateManager","shouldStopSync","initialDataFetched","latestObservationDates","results","addResult","result","push","once","sync","inFlight","finally","undefined","reset","pauseReason","pause","reason","resume","exports"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/services/managers/sync-state-manager.ts"],"mappings":";;;;;;AAIO,MAAMA,gBAAgB,CAAC;EAC5B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAGSC,cAAc,GAAG,KAAK;EAEtBC,kBAAkB,GAAG,KAAK;EAC1BC,sBAAsB,GAGxB,EAAE;EACAC,OAAO,GAA0B,EAAE;EAE1CC,SAASA,CAACC,MAA2B,EAAQ;IAC3C,IAAI,CAACF,OAAO,CAACG,IAAI,CAACD,MAAM,CAAC;EAC3B;;EAEA;EACA,MAAME,IAAIA,CAACC,IAAyB,EAAiB;IACnD,IAAI,CAACC,QAAQ,KAAKD,IAAI,CAAC,CAAC,CAACE,OAAO,CAAC,MAAM;MACrC,IAAI,CAACD,QAAQ,GAAGE,SAAS;IAC3B,CAAC,CAAC;IAEF,OAAO,IAAI,CAACF,QAAQ;EACtB;EAEAG,KAAKA,CAAA,EAAS;IACZ,IAAI,CAACZ,cAAc,GAAG,KAAK;IAC3B,IAAI,CAACa,WAAW,GAAGF,SAAS;IAC5B,IAAI,CAACV,kBAAkB,GAAG,KAAK;IAC/B,IAAI,CAACC,sBAAsB,GAAG,EAAE;IAChC,IAAI,CAACC,OAAO,GAAG,EAAE;EACnB;EAEAW,KAAKA,CAACC,MAAwB,EAAQ;IACpC,IAAI,CAACf,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACa,WAAW,GAAGE,MAAM;EAC3B;EAEAC,MAAMA,CAAA,EAAS;IACb,IAAI,CAAChB,cAAc,GAAG,KAAK;IAC3B,IAAI,CAACa,WAAW,GAAGF,SAAS;EAC9B;AACF;AAACM,OAAA,CAAAlB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["SyncStateManager","rerunRequested","shouldStopSync","initialDataFetched","latestObservationDates","results","addResult","result","push","once","sync","inFlight","finally","undefined","reset","pauseReason","pause","reason","resume","exports"],"sourceRoot":"../../../../../../src","sources":["modules/data-sync/services/managers/sync-state-manager.ts"],"mappings":";;;;;;AAIO,MAAMA,gBAAgB,CAAC;EAC5B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAEUC,cAAc,GAAG,KAAK;EAEvBC,cAAc,GAAG,KAAK;EAEtBC,kBAAkB,GAAG,KAAK;EAC1BC,sBAAsB,GAGxB,EAAE;EACAC,OAAO,GAA0B,EAAE;EAE1CC,SAASA,CAACC,MAA2B,EAAQ;IAC3C,IAAI,CAACF,OAAO,CAACG,IAAI,CAACD,MAAM,CAAC;EAC3B;;EAEA;EACA,MAAME,IAAIA,CAACC,IAAyB,EAAiB;IACnD,IAAI,IAAI,CAACC,QAAQ,EAAE;MACjB,IAAI,IAAI,CAACT,cAAc,EAAE;QACvB,IAAI,CAACD,cAAc,GAAG,IAAI;MAC5B;MAEA,MAAMU,QAAQ,GAAG,IAAI,CAACA,QAAQ;MAE9B,MAAMA,QAAQ;MAEd,IAAI,IAAI,CAACV,cAAc,IAAI,CAAC,IAAI,CAACU,QAAQ,EAAE;QACzC,IAAI,CAACV,cAAc,GAAG,KAAK;QAE3B,OAAO,IAAI,CAACQ,IAAI,CAACC,IAAI,CAAC;MACxB;MAEA;IACF;IAEA,IAAI,CAACC,QAAQ,GAAGD,IAAI,CAAC,CAAC,CAACE,OAAO,CAAC,MAAM;MACnC,IAAI,CAACD,QAAQ,GAAGE,SAAS;IAC3B,CAAC,CAAC;IAEF,OAAO,IAAI,CAACF,QAAQ;EACtB;EAEAG,KAAKA,CAAA,EAAS;IACZ,IAAI,CAACZ,cAAc,GAAG,KAAK;IAC3B,IAAI,CAACa,WAAW,GAAGF,SAAS;IAC5B,IAAI,CAACV,kBAAkB,GAAG,KAAK;IAC/B,IAAI,CAACC,sBAAsB,GAAG,EAAE;IAChC,IAAI,CAACC,OAAO,GAAG,EAAE;IACjB,IAAI,CAACJ,cAAc,GAAG,KAAK;EAC7B;EAEAe,KAAKA,CAACC,MAAwB,EAAQ;IACpC,IAAI,CAACf,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACa,WAAW,GAAGE,MAAM;EAC3B;EAEAC,MAAMA,CAAA,EAAS;IACb,IAAI,CAAChB,cAAc,GAAG,KAAK;IAC3B,IAAI,CAACa,WAAW,GAAGF,SAAS;EAC9B;AACF;AAACM,OAAA,CAAAnB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=health-authorization-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["modules/data-sync/types/health-authorization-status.ts"],"mappings":"","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { AppRegistry, NativeModules, Platform } from "react-native";
4
+ import { AndroidHealthSyncService } from "../data-sync/services/android-health-sync-service.js";
4
5
  const ANDROID_HEALTH_CONNECT_BACKGROUND_TASK = "OvokHealthConnectBackgroundSync";
5
6
  const getNativeModule = () => {
6
7
  const nativeModule = NativeModules.OvokBackgroundSync;
@@ -46,6 +47,37 @@ const cancelAndroidHealthConnectSync = async () => {
46
47
  await getNativeModule().cancelHealthConnectSync();
47
48
  };
48
49
 
50
+ /**
51
+ * Runs one Health Connect import without mounting React components.
52
+ *
53
+ * Headless JS tasks have no React tree, so AndroidHealthSync cannot be rendered
54
+ * after the OS recreates the app process. The host app still restores its own
55
+ * client and patient identity, then calls this function with the same mapping
56
+ * it uses in the foreground.
57
+ */
58
+ const runAndroidHealthConnectSync = async ({
59
+ client,
60
+ patientId,
61
+ dataToSync,
62
+ chunkSize,
63
+ onError,
64
+ onProgress
65
+ }) => {
66
+ const progress = {};
67
+ const service = AndroidHealthSyncService.getInstance({
68
+ client,
69
+ patientId,
70
+ dataToSync,
71
+ chunkSize,
72
+ onSyncError: error => onError?.(error),
73
+ updateProgress: nextProgress => {
74
+ progress[nextProgress.measurementTypeKey] = nextProgress;
75
+ onProgress?.(progress);
76
+ }
77
+ });
78
+ await service.startSync();
79
+ };
80
+
49
81
  /**
50
82
  * Registers the JS entry point WorkManager invokes after process death. Call
51
83
  * this once from the app entry point, not from a screen component, so it is
@@ -57,5 +89,5 @@ const registerAndroidHealthConnectBackgroundTask = (task, taskName = ANDROID_HEA
57
89
  }
58
90
  AppRegistry.registerHeadlessTask(taskName, () => task);
59
91
  };
60
- export { ANDROID_HEALTH_CONNECT_BACKGROUND_TASK, cancelAndroidHealthConnectSync, registerAndroidHealthConnectBackgroundTask, scheduleAndroidHealthConnectSync, startAndroidBluetoothForegroundService, stopAndroidBluetoothForegroundService };
92
+ export { ANDROID_HEALTH_CONNECT_BACKGROUND_TASK, cancelAndroidHealthConnectSync, registerAndroidHealthConnectBackgroundTask, runAndroidHealthConnectSync, scheduleAndroidHealthConnectSync, startAndroidBluetoothForegroundService, stopAndroidBluetoothForegroundService };
61
93
  //# sourceMappingURL=android-background-sync.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AppRegistry","NativeModules","Platform","ANDROID_HEALTH_CONNECT_BACKGROUND_TASK","getNativeModule","nativeModule","OvokBackgroundSync","Error","startAndroidBluetoothForegroundService","options","OS","startBluetoothForegroundService","stopAndroidBluetoothForegroundService","stopBluetoothForegroundService","scheduleAndroidHealthConnectSync","scheduleHealthConnectSync","cancelAndroidHealthConnectSync","cancelHealthConnectSync","registerAndroidHealthConnectBackgroundTask","task","taskName","registerHeadlessTask"],"sourceRoot":"../../../../src","sources":["modules/background-sync/android-background-sync.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEnE,MAAMC,sCAAsC,GAC1C,iCAAiC;AAmCnC,MAAMC,eAAe,GAAGA,CAAA,KAAkC;EACxD,MAAMC,YAAY,GAAGJ,aAAa,CAACK,kBAEtB;EAEb,IAAI,CAACD,YAAY,EAAE;IACjB,MAAM,IAAIE,KAAK,CACb,8GACF,CAAC;EACH;EAEA,OAAOF,YAAY;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMG,sCAAsC,GAAG,MAAAA,CAC7CC,OAAiD,GAAG,CAAC,CAAC,KACpC;EAClB,IAAIP,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACO,+BAA+B,CAACF,OAAO,CAAC;AAClE,CAAC;AAED,MAAMG,qCAAqC,GAAG,MAAAA,CAAA,KAA2B;EACvE,IAAIV,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACS,8BAA8B,CAAC,CAAC;AAC1D,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMC,gCAAgC,GAAG,MAAAA,CACvCL,OAAkD,GAAG,CAAC,CAAC,KACrC;EAClB,IAAIP,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACW,yBAAyB,CAACN,OAAO,CAAC;AAC5D,CAAC;AAED,MAAMO,8BAA8B,GAAG,MAAAA,CAAA,KAA2B;EAChE,IAAId,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACa,uBAAuB,CAAC,CAAC;AACnD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMC,0CAA0C,GAAGA,CACjDC,IAAwC,EACxCC,QAAQ,GAAGjB,sCAAsC,KACxC;EACT,IAAID,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEAV,WAAW,CAACqB,oBAAoB,CAACD,QAAQ,EAAE,MAAMD,IAAI,CAAC;AACxD,CAAC;AAED,SACEhB,sCAAsC,EAItCa,8BAA8B,EAC9BE,0CAA0C,EAC1CJ,gCAAgC,EAChCN,sCAAsC,EACtCI,qCAAqC","ignoreList":[]}
1
+ {"version":3,"names":["AppRegistry","NativeModules","Platform","AndroidHealthSyncService","ANDROID_HEALTH_CONNECT_BACKGROUND_TASK","getNativeModule","nativeModule","OvokBackgroundSync","Error","startAndroidBluetoothForegroundService","options","OS","startBluetoothForegroundService","stopAndroidBluetoothForegroundService","stopBluetoothForegroundService","scheduleAndroidHealthConnectSync","scheduleHealthConnectSync","cancelAndroidHealthConnectSync","cancelHealthConnectSync","runAndroidHealthConnectSync","client","patientId","dataToSync","chunkSize","onError","onProgress","progress","service","getInstance","onSyncError","error","updateProgress","nextProgress","measurementTypeKey","startSync","registerAndroidHealthConnectBackgroundTask","task","taskName","registerHeadlessTask"],"sourceRoot":"../../../../src","sources":["modules/background-sync/android-background-sync.ts"],"mappings":";;AACA,SAASA,WAAW,EAAEC,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEnE,SAASC,wBAAwB,QAAQ,sDAAmD;AAI5F,MAAMC,sCAAsC,GAC1C,iCAAiC;AAoDnC,MAAMC,eAAe,GAAGA,CAAA,KAAkC;EACxD,MAAMC,YAAY,GAAGL,aAAa,CAACM,kBAEtB;EAEb,IAAI,CAACD,YAAY,EAAE;IACjB,MAAM,IAAIE,KAAK,CACb,8GACF,CAAC;EACH;EAEA,OAAOF,YAAY;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMG,sCAAsC,GAAG,MAAAA,CAC7CC,OAAiD,GAAG,CAAC,CAAC,KACpC;EAClB,IAAIR,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACO,+BAA+B,CAACF,OAAO,CAAC;AAClE,CAAC;AAED,MAAMG,qCAAqC,GAAG,MAAAA,CAAA,KAA2B;EACvE,IAAIX,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACS,8BAA8B,CAAC,CAAC;AAC1D,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMC,gCAAgC,GAAG,MAAAA,CACvCL,OAAkD,GAAG,CAAC,CAAC,KACrC;EAClB,IAAIR,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACW,yBAAyB,CAACN,OAAO,CAAC;AAC5D,CAAC;AAED,MAAMO,8BAA8B,GAAG,MAAAA,CAAA,KAA2B;EAChE,IAAIf,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEA,MAAMN,eAAe,CAAC,CAAC,CAACa,uBAAuB,CAAC,CAAC;AACnD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,2BAA2B,GAAG,MAAAA,CAAO;EACzCC,MAAM;EACNC,SAAS;EACTC,UAAU;EACVC,SAAS;EACTC,OAAO;EACPC;AACkC,CAAC,KAAoB;EACvD,MAAMC,QAA2D,GAAG,CAAC,CAAC;EAEtE,MAAMC,OAAO,GAAGxB,wBAAwB,CAACyB,WAAW,CAAC;IACnDR,MAAM;IACNC,SAAS;IACTC,UAAU;IACVC,SAAS;IACTM,WAAW,EAAGC,KAAK,IAAKN,OAAO,GAAGM,KAAK,CAAC;IACxCC,cAAc,EAAGC,YAAY,IAAK;MAChCN,QAAQ,CAACM,YAAY,CAACC,kBAAkB,CAAC,GAAGD,YAAY;MACxDP,UAAU,GAAGC,QAAQ,CAAC;IACxB;EACF,CAAC,CAAC;EAEF,MAAMC,OAAO,CAACO,SAAS,CAAC,CAAC;AAC3B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMC,0CAA0C,GAAGA,CACjDC,IAAwC,EACxCC,QAAQ,GAAGjC,sCAAsC,KACxC;EACT,IAAIF,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;IAC7B;EACF;EAEAX,WAAW,CAACsC,oBAAoB,CAACD,QAAQ,EAAE,MAAMD,IAAI,CAAC;AACxD,CAAC;AAED,SACEhC,sCAAsC,EAKtCa,8BAA8B,EAC9BkB,0CAA0C,EAC1ChB,2BAA2B,EAC3BJ,gCAAgC,EAChCN,sCAAsC,EACtCI,qCAAqC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { MeasurementTypeKey } from "@ovok/core";
3
+ import { MeasurementTypeKey, URINE_ANALYTE_DEFINITIONS } from "@ovok/core";
4
4
 
5
5
  /**
6
6
  * The measurement types a declaration may produce, the properties each one accepts, the
@@ -20,6 +20,85 @@ import { MeasurementTypeKey } from "@ovok/core";
20
20
  * record of something that was never measured. A "result" case must declare all of them.
21
21
  */
22
22
 
23
+ const urineAnalyteRanges = {
24
+ uro: {
25
+ min: 0.2,
26
+ max: 8,
27
+ normalMin: 0.1,
28
+ normalMax: 1
29
+ },
30
+ bld: {
31
+ min: 0,
32
+ max: 250,
33
+ normalMin: 0,
34
+ normalMax: 0
35
+ },
36
+ bil: {
37
+ min: 0,
38
+ max: 6,
39
+ normalMin: 0,
40
+ normalMax: 0
41
+ },
42
+ ket: {
43
+ min: 0,
44
+ max: 80,
45
+ normalMin: 0,
46
+ normalMax: 15
47
+ },
48
+ glu: {
49
+ min: 0,
50
+ max: 1000,
51
+ normalMin: 0,
52
+ normalMax: 0
53
+ },
54
+ pro: {
55
+ min: 0,
56
+ max: 300,
57
+ normalMin: 0,
58
+ normalMax: 14
59
+ },
60
+ ph: {
61
+ min: 5,
62
+ max: 8.5,
63
+ normalMin: 4.5,
64
+ normalMax: 8
65
+ },
66
+ nit: {
67
+ min: 0,
68
+ max: 1,
69
+ normalMin: 0,
70
+ normalMax: 0
71
+ },
72
+ leu: {
73
+ min: 0,
74
+ max: 500,
75
+ normalMin: 0,
76
+ normalMax: 25
77
+ },
78
+ sg: {
79
+ min: 1.005,
80
+ max: 1.03,
81
+ normalMin: 1.003,
82
+ normalMax: 1.03
83
+ },
84
+ vc: {
85
+ min: 0,
86
+ max: 100
87
+ }
88
+ };
89
+ const urineAnalyteCatalog = Object.fromEntries(Object.entries(urineAnalyteRanges).map(([key, range]) => {
90
+ const definition = URINE_ANALYTE_DEFINITIONS.find(analyte => analyte.key === key);
91
+ if (!definition) {
92
+ throw new Error(`Missing shared urine analyte definition for ${key}`);
93
+ }
94
+ return [key, {
95
+ ...range,
96
+ display: definition.display,
97
+ // UCUM's dimensionless unit is the safe declaration value when the
98
+ // analyte has no display unit (pH and specific gravity).
99
+ unit: definition.unit ?? "1"
100
+ }];
101
+ }));
23
102
  export const measurementFieldCatalog = {
24
103
  [MeasurementTypeKey.bloodPressure]: {
25
104
  systolic: {
@@ -104,93 +183,6 @@ export const measurementFieldCatalog = {
104
183
  required: true
105
184
  }
106
185
  },
107
- [MeasurementTypeKey.uricAcid]: {
108
- uro: {
109
- unit: "mg/dL",
110
- min: 0,
111
- max: 6,
112
- display: "Urobilinogen",
113
- normalMin: 0.1,
114
- normalMax: 1
115
- },
116
- bld: {
117
- unit: "RBC/µL",
118
- min: 0,
119
- max: 6,
120
- display: "Hemoglobin",
121
- normalMin: 0,
122
- normalMax: 0
123
- },
124
- bil: {
125
- unit: "mg/dL",
126
- min: 0,
127
- max: 6,
128
- display: "Bilirubin",
129
- normalMin: 0,
130
- normalMax: 0
131
- },
132
- ket: {
133
- unit: "mg/dL",
134
- min: 0,
135
- max: 6,
136
- display: "Ketones",
137
- normalMin: 0,
138
- normalMax: 15
139
- },
140
- glu: {
141
- unit: "mg/dL",
142
- min: 0,
143
- max: 6,
144
- display: "Glucose",
145
- normalMin: 0,
146
- normalMax: 0
147
- },
148
- pro: {
149
- unit: "mg/dL",
150
- min: 0,
151
- max: 6,
152
- display: "Protein",
153
- normalMin: 0,
154
- normalMax: 14
155
- },
156
- ph: {
157
- unit: "pH",
158
- min: 0,
159
- max: 14,
160
- display: "Urine pH",
161
- normalMin: 4.5,
162
- normalMax: 8
163
- },
164
- nit: {
165
- unit: "qualitative",
166
- min: 0,
167
- max: 6,
168
- display: "Nitrite",
169
- normalMin: 0,
170
- normalMax: 0
171
- },
172
- leu: {
173
- unit: "WBC/µL",
174
- min: 0,
175
- max: 6,
176
- display: "Leukocyte esterase",
177
- normalMin: 0,
178
- normalMax: 25
179
- },
180
- sg: {
181
- unit: "specific gravity",
182
- min: 0,
183
- max: 6,
184
- display: "Specific gravity",
185
- normalMin: 1.003,
186
- normalMax: 1.03
187
- },
188
- vc: {
189
- unit: "mg/dL",
190
- min: 0,
191
- max: 6,
192
- display: "Ascorbate (vitamin C)"
193
- }
194
- }
186
+ [MeasurementTypeKey.uricAcid]: urineAnalyteCatalog
195
187
  };
196
188
  //# sourceMappingURL=measurement-field-catalog.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MeasurementTypeKey","measurementFieldCatalog","bloodPressure","systolic","unit","min","max","required","diastolic","heartRate","bodyWeight","temperature","bodyTemp","bloodGlucose","bloodOxygenPulseRate","bloodOxygen","pulseRate","perfusionIndex","rrInterval","respiratoryRate","uricAcid","uro","display","normalMin","normalMax","bld","bil","ket","glu","pro","ph","nit","leu","sg","vc"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/constants/measurement-field-catalog.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MeasurementTypeKey","URINE_ANALYTE_DEFINITIONS","urineAnalyteRanges","uro","min","max","normalMin","normalMax","bld","bil","ket","glu","pro","ph","nit","leu","sg","vc","urineAnalyteCatalog","Object","fromEntries","entries","map","key","range","definition","find","analyte","Error","display","unit","measurementFieldCatalog","bloodPressure","systolic","required","diastolic","heartRate","bodyWeight","temperature","bodyTemp","bloodGlucose","bloodOxygenPulseRate","bloodOxygen","pulseRate","perfusionIndex","rrInterval","respiratoryRate","uricAcid"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/constants/measurement-field-catalog.ts"],"mappings":"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","ignoreList":[]}