@kingstinct/react-native-healthkit 4.4.5 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/README.md +1 -1
  2. package/ios/ReactNativeHealthkit.m +6 -0
  3. package/ios/ReactNativeHealthkit.swift +23 -0
  4. package/ios/ReactNativeHealthkit.xcodeproj/project.xcworkspace/xcuserdata/robertherber.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  5. package/lib/commonjs/hooks/useHealthkitAuthorization.js +41 -0
  6. package/lib/commonjs/hooks/useHealthkitAuthorization.js.map +1 -0
  7. package/lib/commonjs/hooks/useIsHealthDataAvailable.js +29 -0
  8. package/lib/commonjs/hooks/useIsHealthDataAvailable.js.map +1 -0
  9. package/lib/commonjs/hooks/useMostRecentCategorySample.js +27 -0
  10. package/lib/commonjs/hooks/useMostRecentCategorySample.js.map +1 -0
  11. package/lib/commonjs/hooks/useMostRecentQuantitySample.js +43 -0
  12. package/lib/commonjs/hooks/useMostRecentQuantitySample.js.map +1 -0
  13. package/lib/commonjs/hooks/useMostRecentWorkout.js +60 -0
  14. package/lib/commonjs/hooks/useMostRecentWorkout.js.map +1 -0
  15. package/lib/commonjs/hooks/useStatisticsForQuantity.js +35 -0
  16. package/lib/commonjs/hooks/useStatisticsForQuantity.js.map +1 -0
  17. package/lib/commonjs/hooks/useSubscribeToChanges.js +37 -0
  18. package/lib/commonjs/hooks/useSubscribeToChanges.js.map +1 -0
  19. package/lib/commonjs/index.ios.js +69 -393
  20. package/lib/commonjs/index.ios.js.map +1 -1
  21. package/lib/commonjs/index.js +3 -15
  22. package/lib/commonjs/index.js.map +1 -1
  23. package/lib/commonjs/native-types.js +249 -78
  24. package/lib/commonjs/native-types.js.map +1 -1
  25. package/lib/commonjs/types.js +13 -0
  26. package/lib/commonjs/types.js.map +1 -1
  27. package/lib/commonjs/utils/deleteQuantitySample.js +16 -0
  28. package/lib/commonjs/utils/deleteQuantitySample.js.map +1 -0
  29. package/lib/commonjs/utils/deserializeCategorySample.js +15 -0
  30. package/lib/commonjs/utils/deserializeCategorySample.js.map +1 -0
  31. package/lib/commonjs/utils/deserializeCorrelation.js +32 -0
  32. package/lib/commonjs/utils/deserializeCorrelation.js.map +1 -0
  33. package/lib/commonjs/utils/deserializeSample.js +17 -0
  34. package/lib/commonjs/utils/deserializeSample.js.map +1 -0
  35. package/lib/commonjs/utils/deserializeWorkout.js +17 -0
  36. package/lib/commonjs/utils/deserializeWorkout.js.map +1 -0
  37. package/lib/commonjs/utils/ensureMetadata.js +14 -0
  38. package/lib/commonjs/utils/ensureMetadata.js.map +1 -0
  39. package/lib/commonjs/utils/ensureUnit.js +23 -0
  40. package/lib/commonjs/utils/ensureUnit.js.map +1 -0
  41. package/lib/commonjs/utils/getDateOfBirth.js +19 -0
  42. package/lib/commonjs/utils/getDateOfBirth.js.map +1 -0
  43. package/lib/commonjs/utils/getMostRecentCategorySample.js +22 -0
  44. package/lib/commonjs/utils/getMostRecentCategorySample.js.map +1 -0
  45. package/lib/commonjs/utils/getMostRecentQuantitySample.js +22 -0
  46. package/lib/commonjs/utils/getMostRecentQuantitySample.js.map +1 -0
  47. package/lib/commonjs/utils/getMostRecentWorkout.js +24 -0
  48. package/lib/commonjs/utils/getMostRecentWorkout.js.map +1 -0
  49. package/lib/commonjs/utils/getPreferredUnit.js +19 -0
  50. package/lib/commonjs/utils/getPreferredUnit.js.map +1 -0
  51. package/lib/commonjs/utils/getPreferredUnits.js +19 -0
  52. package/lib/commonjs/utils/getPreferredUnits.js.map +1 -0
  53. package/lib/commonjs/utils/getPreferredUnitsTyped.js +46 -0
  54. package/lib/commonjs/utils/getPreferredUnitsTyped.js.map +1 -0
  55. package/lib/commonjs/utils/getRequestStatusForAuthorization.js +25 -0
  56. package/lib/commonjs/utils/getRequestStatusForAuthorization.js.map +1 -0
  57. package/lib/commonjs/utils/prepareOptions.js +27 -0
  58. package/lib/commonjs/utils/prepareOptions.js.map +1 -0
  59. package/lib/commonjs/utils/queryCategorySamples.js +24 -0
  60. package/lib/commonjs/utils/queryCategorySamples.js.map +1 -0
  61. package/lib/commonjs/utils/queryCorrelationSamples.js +24 -0
  62. package/lib/commonjs/utils/queryCorrelationSamples.js.map +1 -0
  63. package/lib/commonjs/utils/queryQuantitySamples.js +27 -0
  64. package/lib/commonjs/utils/queryQuantitySamples.js.map +1 -0
  65. package/lib/commonjs/utils/queryStatisticsForQuantity.js +34 -0
  66. package/lib/commonjs/utils/queryStatisticsForQuantity.js.map +1 -0
  67. package/lib/commonjs/utils/queryWorkouts.js +30 -0
  68. package/lib/commonjs/utils/queryWorkouts.js.map +1 -0
  69. package/lib/commonjs/utils/requestAuthorization.js +25 -0
  70. package/lib/commonjs/utils/requestAuthorization.js.map +1 -0
  71. package/lib/commonjs/utils/saveCategorySample.js +21 -0
  72. package/lib/commonjs/utils/saveCategorySample.js.map +1 -0
  73. package/lib/commonjs/utils/saveCorrelationSample.js +24 -0
  74. package/lib/commonjs/utils/saveCorrelationSample.js.map +1 -0
  75. package/lib/commonjs/utils/saveQuantitySample.js +21 -0
  76. package/lib/commonjs/utils/saveQuantitySample.js.map +1 -0
  77. package/lib/commonjs/utils/saveWorkoutSample.js +25 -0
  78. package/lib/commonjs/utils/saveWorkoutSample.js.map +1 -0
  79. package/lib/commonjs/utils/serializeDate.js +12 -0
  80. package/lib/commonjs/utils/serializeDate.js.map +1 -0
  81. package/lib/commonjs/utils/subscribeToChanges.js +37 -0
  82. package/lib/commonjs/utils/subscribeToChanges.js.map +1 -0
  83. package/lib/module/hooks/useHealthkitAuthorization.js +29 -0
  84. package/lib/module/hooks/useHealthkitAuthorization.js.map +1 -0
  85. package/lib/module/hooks/useIsHealthDataAvailable.js +18 -0
  86. package/lib/module/hooks/useIsHealthDataAvailable.js.map +1 -0
  87. package/lib/module/hooks/useMostRecentCategorySample.js +15 -0
  88. package/lib/module/hooks/useMostRecentCategorySample.js.map +1 -0
  89. package/lib/module/hooks/useMostRecentQuantitySample.js +30 -0
  90. package/lib/module/hooks/useMostRecentQuantitySample.js.map +1 -0
  91. package/lib/module/hooks/useMostRecentWorkout.js +47 -0
  92. package/lib/module/hooks/useMostRecentWorkout.js.map +1 -0
  93. package/lib/module/hooks/useStatisticsForQuantity.js +23 -0
  94. package/lib/module/hooks/useStatisticsForQuantity.js.map +1 -0
  95. package/lib/module/hooks/useSubscribeToChanges.js +26 -0
  96. package/lib/module/hooks/useSubscribeToChanges.js.map +1 -0
  97. package/lib/module/index.ios.js +35 -370
  98. package/lib/module/index.ios.js.map +1 -1
  99. package/lib/module/index.js +4 -5
  100. package/lib/module/index.js.map +1 -1
  101. package/lib/module/native-types.js +232 -74
  102. package/lib/module/native-types.js.map +1 -1
  103. package/lib/module/types.js +15 -0
  104. package/lib/module/types.js.map +1 -1
  105. package/lib/module/utils/deleteQuantitySample.js +6 -0
  106. package/lib/module/utils/deleteQuantitySample.js.map +1 -0
  107. package/lib/module/utils/deserializeCategorySample.js +7 -0
  108. package/lib/module/utils/deserializeCategorySample.js.map +1 -0
  109. package/lib/module/utils/deserializeCorrelation.js +21 -0
  110. package/lib/module/utils/deserializeCorrelation.js.map +1 -0
  111. package/lib/module/utils/deserializeSample.js +9 -0
  112. package/lib/module/utils/deserializeSample.js.map +1 -0
  113. package/lib/module/utils/deserializeWorkout.js +9 -0
  114. package/lib/module/utils/deserializeWorkout.js.map +1 -0
  115. package/lib/module/utils/ensureMetadata.js +6 -0
  116. package/lib/module/utils/ensureMetadata.js.map +1 -0
  117. package/lib/module/utils/ensureUnit.js +13 -0
  118. package/lib/module/utils/ensureUnit.js.map +1 -0
  119. package/lib/module/utils/getDateOfBirth.js +9 -0
  120. package/lib/module/utils/getDateOfBirth.js.map +1 -0
  121. package/lib/module/utils/getMostRecentCategorySample.js +12 -0
  122. package/lib/module/utils/getMostRecentCategorySample.js.map +1 -0
  123. package/lib/module/utils/getMostRecentQuantitySample.js +12 -0
  124. package/lib/module/utils/getMostRecentQuantitySample.js.map +1 -0
  125. package/lib/module/utils/getMostRecentWorkout.js +14 -0
  126. package/lib/module/utils/getMostRecentWorkout.js.map +1 -0
  127. package/lib/module/utils/getPreferredUnit.js +9 -0
  128. package/lib/module/utils/getPreferredUnit.js.map +1 -0
  129. package/lib/module/utils/getPreferredUnits.js +9 -0
  130. package/lib/module/utils/getPreferredUnits.js.map +1 -0
  131. package/lib/module/utils/getPreferredUnitsTyped.js +34 -0
  132. package/lib/module/utils/getPreferredUnitsTyped.js.map +1 -0
  133. package/lib/module/utils/getRequestStatusForAuthorization.js +15 -0
  134. package/lib/module/utils/getRequestStatusForAuthorization.js.map +1 -0
  135. package/lib/module/utils/prepareOptions.js +17 -0
  136. package/lib/module/utils/prepareOptions.js.map +1 -0
  137. package/lib/module/utils/queryCategorySamples.js +12 -0
  138. package/lib/module/utils/queryCategorySamples.js.map +1 -0
  139. package/lib/module/utils/queryCorrelationSamples.js +12 -0
  140. package/lib/module/utils/queryCorrelationSamples.js.map +1 -0
  141. package/lib/module/utils/queryQuantitySamples.js +14 -0
  142. package/lib/module/utils/queryQuantitySamples.js.map +1 -0
  143. package/lib/module/utils/queryStatisticsForQuantity.js +23 -0
  144. package/lib/module/utils/queryStatisticsForQuantity.js.map +1 -0
  145. package/lib/module/utils/queryWorkouts.js +17 -0
  146. package/lib/module/utils/queryWorkouts.js.map +1 -0
  147. package/lib/module/utils/requestAuthorization.js +15 -0
  148. package/lib/module/utils/requestAuthorization.js.map +1 -0
  149. package/lib/module/utils/saveCategorySample.js +11 -0
  150. package/lib/module/utils/saveCategorySample.js.map +1 -0
  151. package/lib/module/utils/saveCorrelationSample.js +13 -0
  152. package/lib/module/utils/saveCorrelationSample.js.map +1 -0
  153. package/lib/module/utils/saveQuantitySample.js +11 -0
  154. package/lib/module/utils/saveQuantitySample.js.map +1 -0
  155. package/lib/module/utils/saveWorkoutSample.js +14 -0
  156. package/lib/module/utils/saveWorkoutSample.js.map +1 -0
  157. package/lib/module/utils/serializeDate.js +4 -0
  158. package/lib/module/utils/serializeDate.js.map +1 -0
  159. package/lib/module/utils/subscribeToChanges.js +25 -0
  160. package/lib/module/utils/subscribeToChanges.js.map +1 -0
  161. package/lib/typescript/example-expo/App.d.ts +2 -0
  162. package/lib/typescript/src/hooks/useHealthkitAuthorization.d.ts +3 -0
  163. package/lib/typescript/src/hooks/useIsHealthDataAvailable.d.ts +2 -0
  164. package/lib/typescript/src/hooks/useMostRecentCategorySample.d.ts +4 -0
  165. package/lib/typescript/src/hooks/useMostRecentQuantitySample.d.ts +4 -0
  166. package/lib/typescript/src/hooks/useMostRecentWorkout.d.ts +7 -0
  167. package/lib/typescript/src/hooks/useStatisticsForQuantity.d.ts +4 -0
  168. package/lib/typescript/src/hooks/useSubscribeToChanges.d.ts +3 -0
  169. package/lib/typescript/src/index.d.ts +2 -3
  170. package/lib/typescript/src/index.ios.d.ts +49 -3
  171. package/lib/typescript/src/native-types.d.ts +236 -70
  172. package/lib/typescript/src/types.d.ts +14 -90
  173. package/lib/typescript/src/utils/deleteQuantitySample.d.ts +4 -0
  174. package/lib/typescript/src/utils/deserializeCategorySample.d.ts +4 -0
  175. package/lib/typescript/src/utils/deserializeCorrelation.d.ts +4 -0
  176. package/lib/typescript/src/utils/deserializeSample.d.ts +4 -0
  177. package/lib/typescript/src/utils/deserializeWorkout.d.ts +4 -0
  178. package/lib/typescript/src/utils/ensureMetadata.d.ts +2 -0
  179. package/lib/typescript/src/utils/ensureUnit.d.ts +3 -0
  180. package/lib/typescript/src/utils/getDateOfBirth.d.ts +2 -0
  181. package/lib/typescript/src/utils/getMostRecentCategorySample.d.ts +3 -0
  182. package/lib/typescript/src/utils/getMostRecentQuantitySample.d.ts +3 -0
  183. package/lib/typescript/src/utils/getMostRecentWorkout.d.ts +5 -0
  184. package/lib/typescript/src/utils/getPreferredUnit.d.ts +4 -0
  185. package/lib/typescript/src/utils/getPreferredUnits.d.ts +4 -0
  186. package/lib/typescript/src/utils/getPreferredUnitsTyped.d.ts +9 -0
  187. package/lib/typescript/src/utils/getRequestStatusForAuthorization.d.ts +3 -0
  188. package/lib/typescript/src/utils/prepareOptions.d.ts +8 -0
  189. package/lib/typescript/src/utils/queryCategorySamples.d.ts +5 -0
  190. package/lib/typescript/src/utils/queryCorrelationSamples.d.ts +5 -0
  191. package/lib/typescript/src/utils/queryQuantitySamples.d.ts +7 -0
  192. package/lib/typescript/src/utils/queryStatisticsForQuantity.d.ts +14 -0
  193. package/lib/typescript/src/utils/queryWorkouts.d.ts +4 -0
  194. package/lib/typescript/src/utils/requestAuthorization.d.ts +3 -0
  195. package/lib/typescript/src/utils/saveCategorySample.d.ts +7 -0
  196. package/lib/typescript/src/utils/saveCorrelationSample.d.ts +8 -0
  197. package/lib/typescript/src/utils/saveQuantitySample.d.ts +7 -0
  198. package/lib/typescript/src/utils/saveWorkoutSample.d.ts +7 -0
  199. package/lib/typescript/src/utils/serializeDate.d.ts +2 -0
  200. package/lib/typescript/src/utils/subscribeToChanges.d.ts +3 -0
  201. package/package.json +17 -6
  202. package/src/hooks/useHealthkitAuthorization.ts +39 -0
  203. package/src/hooks/useIsHealthDataAvailable.ts +17 -0
  204. package/src/hooks/useMostRecentCategorySample.ts +24 -0
  205. package/src/hooks/useMostRecentQuantitySample.ts +39 -0
  206. package/src/hooks/useMostRecentWorkout.ts +60 -0
  207. package/src/hooks/useStatisticsForQuantity.ts +42 -0
  208. package/src/hooks/useSubscribeToChanges.ts +31 -0
  209. package/src/index.ios.tsx +40 -569
  210. package/src/index.tsx +6 -7
  211. package/src/native-types.ts +327 -93
  212. package/src/types.ts +41 -152
  213. package/src/utils/deleteQuantitySample.ts +14 -0
  214. package/src/utils/deserializeCategorySample.ts +12 -0
  215. package/src/utils/deserializeCorrelation.ts +28 -0
  216. package/src/utils/deserializeSample.ts +17 -0
  217. package/src/utils/deserializeWorkout.ts +14 -0
  218. package/src/utils/ensureMetadata.ts +5 -0
  219. package/src/utils/ensureUnit.ts +19 -0
  220. package/src/utils/getDateOfBirth.ts +8 -0
  221. package/src/utils/getMostRecentCategorySample.ts +18 -0
  222. package/src/utils/getMostRecentQuantitySample.ts +19 -0
  223. package/src/utils/getMostRecentWorkout.ts +27 -0
  224. package/src/utils/getPreferredUnit.ts +14 -0
  225. package/src/utils/getPreferredUnits.ts +14 -0
  226. package/src/utils/getPreferredUnitsTyped.ts +38 -0
  227. package/src/utils/getRequestStatusForAuthorization.ts +21 -0
  228. package/src/utils/prepareOptions.ts +15 -0
  229. package/src/utils/queryCategorySamples.ts +29 -0
  230. package/src/utils/queryCorrelationSamples.ts +29 -0
  231. package/src/utils/queryQuantitySamples.ts +36 -0
  232. package/src/utils/queryStatisticsForQuantity.ts +38 -0
  233. package/src/utils/queryWorkouts.ts +28 -0
  234. package/src/utils/requestAuthorization.ts +18 -0
  235. package/src/utils/saveCategorySample.ts +27 -0
  236. package/src/utils/saveCorrelationSample.ts +34 -0
  237. package/src/utils/saveQuantitySample.ts +29 -0
  238. package/src/utils/saveWorkoutSample.ts +28 -0
  239. package/src/utils/serializeDate.ts +3 -0
  240. package/src/utils/subscribeToChanges.ts +32 -0
@@ -6,440 +6,116 @@ Object.defineProperty(exports, "__esModule", {
6
6
  var _exportNames = {};
7
7
  exports.default = void 0;
8
8
 
9
- var _react = require("react");
9
+ var _useHealthkitAuthorization = _interopRequireDefault(require("./hooks/useHealthkitAuthorization"));
10
10
 
11
- var _nativeTypes = _interopRequireWildcard(require("./native-types"));
11
+ var _useIsHealthDataAvailable = _interopRequireDefault(require("./hooks/useIsHealthDataAvailable"));
12
12
 
13
- Object.keys(_nativeTypes).forEach(function (key) {
14
- if (key === "default" || key === "__esModule") return;
15
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
16
- if (key in exports && exports[key] === _nativeTypes[key]) return;
17
- Object.defineProperty(exports, key, {
18
- enumerable: true,
19
- get: function () {
20
- return _nativeTypes[key];
21
- }
22
- });
23
- });
24
-
25
- var _types = require("./types");
26
-
27
- Object.keys(_types).forEach(function (key) {
28
- if (key === "default" || key === "__esModule") return;
29
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
30
- if (key in exports && exports[key] === _types[key]) return;
31
- Object.defineProperty(exports, key, {
32
- enumerable: true,
33
- get: function () {
34
- return _types[key];
35
- }
36
- });
37
- });
38
-
39
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
40
-
41
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
42
-
43
- const getPreferredUnit = async type => {
44
- const [unit] = await getPreferredUnits([type]);
45
- return unit;
46
- };
47
-
48
- const ensureUnit = async (type, providedUnit) => {
49
- if (providedUnit) {
50
- return providedUnit;
51
- }
52
-
53
- const unit = await _nativeTypes.default.getPreferredUnits([type]);
54
- return unit[type];
55
- };
56
-
57
- function deserializeSample(sample) {
58
- return { ...sample,
59
- startDate: new Date(sample.startDate),
60
- endDate: new Date(sample.endDate)
61
- };
62
- }
63
-
64
- function deserializeWorkout(sample) {
65
- return { ...sample,
66
- startDate: new Date(sample.startDate),
67
- endDate: new Date(sample.endDate)
68
- };
69
- }
70
-
71
- const deserializCategorySample = sample => ({ ...sample,
72
- startDate: new Date(sample.startDate),
73
- endDate: new Date(sample.endDate)
74
- });
75
-
76
- const serializeDate = date => date ? date.toISOString() : new Date(0).toISOString();
77
-
78
- const prepareOptions = options => {
79
- const limit = !options.limit || options.limit === Infinity ? 0 : options.limit;
80
- const ascending = options.ascending ?? limit === 0;
81
- const from = serializeDate(options.from);
82
- const to = serializeDate(options.to);
83
- return {
84
- limit,
85
- ascending,
86
- from,
87
- to
88
- };
89
- };
90
-
91
- const queryQuantitySamples = async (identifier, options) => {
92
- const unit = await ensureUnit(identifier, options.unit);
93
- const opts = prepareOptions(options);
94
- const quantitySamples = await _nativeTypes.default.queryQuantitySamples(identifier, unit, opts.from, opts.to, opts.limit, opts.ascending);
95
- return quantitySamples.map(deserializeSample);
96
- };
97
-
98
- async function getPreferredUnitsTyped(options) {
99
- let energyUnit = options === null || options === void 0 ? void 0 : options.energyUnit;
100
- let distanceUnit = options === null || options === void 0 ? void 0 : options.distanceUnit;
101
-
102
- if (!energyUnit || !distanceUnit) {
103
- const units = await _nativeTypes.default.getPreferredUnits([_nativeTypes.HKQuantityTypeIdentifier.distanceWalkingRunning, _nativeTypes.HKQuantityTypeIdentifier.activeEnergyBurned]);
104
-
105
- if (!energyUnit) {
106
- energyUnit = units[_nativeTypes.HKQuantityTypeIdentifier.distanceWalkingRunning];
107
- }
108
-
109
- if (!distanceUnit) {
110
- distanceUnit = units[_nativeTypes.HKQuantityTypeIdentifier.activeEnergyBurned];
111
- }
112
- }
113
-
114
- if (!energyUnit) {
115
- energyUnit = _nativeTypes.HKUnit.Kilocalories;
116
- }
13
+ var _useMostRecentCategorySample = _interopRequireDefault(require("./hooks/useMostRecentCategorySample"));
117
14
 
118
- if (!distanceUnit) {
119
- distanceUnit = _nativeTypes.HKUnit.Meters;
120
- }
15
+ var _useMostRecentQuantitySample = _interopRequireDefault(require("./hooks/useMostRecentQuantitySample"));
121
16
 
122
- return {
123
- energyUnit,
124
- distanceUnit
125
- };
126
- }
17
+ var _useMostRecentWorkout = _interopRequireDefault(require("./hooks/useMostRecentWorkout"));
127
18
 
128
- const subscribeToChanges = async (identifier, callback) => {
129
- const subscription = _nativeTypes.EventEmitter.addListener('onChange', _ref => {
130
- let {
131
- typeIdentifier
132
- } = _ref;
19
+ var _useSubscribeToChanges = _interopRequireDefault(require("./hooks/useSubscribeToChanges"));
133
20
 
134
- if (typeIdentifier === identifier) {
135
- callback();
136
- }
137
- });
21
+ var _nativeTypes = _interopRequireDefault(require("./native-types"));
138
22
 
139
- const queryId = await _nativeTypes.default.subscribeToObserverQuery(identifier).catch(async error => {
140
- subscription.remove();
141
- return Promise.reject(error);
142
- });
143
- return async () => {
144
- subscription.remove();
145
- return _nativeTypes.default.unsubscribeQuery(queryId);
146
- };
147
- };
23
+ var _deleteQuantitySample = _interopRequireDefault(require("./utils/deleteQuantitySample"));
148
24
 
149
- const getMostRecentQuantitySample = async (identifier, unit) => {
150
- const samples = await queryQuantitySamples(identifier, {
151
- limit: 1,
152
- unit
153
- });
154
- return samples[0];
155
- };
25
+ var _getDateOfBirth = _interopRequireDefault(require("./utils/getDateOfBirth"));
156
26
 
157
- function useMostRecentWorkout(options) {
158
- const [workout, setWorkout] = (0, _react.useState)(null);
159
- (0, _react.useEffect)(() => {
160
- let cancelSubscription;
27
+ var _getMostRecentCategorySample = _interopRequireDefault(require("./utils/getMostRecentCategorySample"));
161
28
 
162
- const init = async () => {
163
- const {
164
- energyUnit,
165
- distanceUnit
166
- } = await getPreferredUnitsTyped(options);
167
- cancelSubscription = await subscribeToChanges('HKWorkoutTypeIdentifier', async () => {
168
- const w = await getMostRecentWorkout({
169
- energyUnit,
170
- distanceUnit
171
- });
172
- setWorkout(w);
173
- });
174
- };
29
+ var _getMostRecentQuantitySample = _interopRequireDefault(require("./utils/getMostRecentQuantitySample"));
175
30
 
176
- void init();
177
- return () => {
178
- var _cancelSubscription;
31
+ var _getMostRecentWorkout = _interopRequireDefault(require("./utils/getMostRecentWorkout"));
179
32
 
180
- void ((_cancelSubscription = cancelSubscription) === null || _cancelSubscription === void 0 ? void 0 : _cancelSubscription());
181
- };
182
- }, [options]);
183
- return workout;
184
- }
33
+ var _getPreferredUnit = _interopRequireDefault(require("./utils/getPreferredUnit"));
185
34
 
186
- const getMostRecentCategorySample = async identifier => {
187
- const samples = await queryCategorySamples(identifier, {
188
- limit: 1,
189
- ascending: false
190
- });
191
- return samples[0];
192
- };
35
+ var _getPreferredUnits = _interopRequireDefault(require("./utils/getPreferredUnits"));
193
36
 
194
- function useSubscribeToChanges(identifier, onChange) {
195
- (0, _react.useEffect)(() => {
196
- let cancelSubscription;
37
+ var _getRequestStatusForAuthorization = _interopRequireDefault(require("./utils/getRequestStatusForAuthorization"));
197
38
 
198
- const init = async () => {
199
- cancelSubscription = await subscribeToChanges(identifier, onChange);
200
- };
39
+ var _queryCategorySamples = _interopRequireDefault(require("./utils/queryCategorySamples"));
201
40
 
202
- void init();
203
- return () => {
204
- var _cancelSubscription2;
41
+ var _queryCorrelationSamples = _interopRequireDefault(require("./utils/queryCorrelationSamples"));
205
42
 
206
- void ((_cancelSubscription2 = cancelSubscription) === null || _cancelSubscription2 === void 0 ? void 0 : _cancelSubscription2());
207
- };
208
- }, [identifier, onChange]);
209
- }
43
+ var _queryQuantitySamples = _interopRequireDefault(require("./utils/queryQuantitySamples"));
210
44
 
211
- function useMostRecentCategorySample(identifier) {
212
- const [category, setCategory] = (0, _react.useState)(null);
213
- const updater = (0, _react.useCallback)(() => {
214
- void getMostRecentCategorySample(identifier).then(setCategory);
215
- }, [identifier]);
216
- useSubscribeToChanges(identifier, updater);
217
- return category;
218
- }
45
+ var _queryStatisticsForQuantity = _interopRequireDefault(require("./utils/queryStatisticsForQuantity"));
219
46
 
220
- function useMostRecentQuantitySample(identifier, unit) {
221
- const [lastSample, setLastSample] = (0, _react.useState)(null);
222
- (0, _react.useEffect)(() => {
223
- let cancelSubscription;
47
+ var _queryWorkouts = _interopRequireDefault(require("./utils/queryWorkouts"));
224
48
 
225
- const init = async () => {
226
- const actualUnit = await ensureUnit(identifier, unit);
227
- cancelSubscription = await subscribeToChanges(identifier, async () => {
228
- const value = await getMostRecentQuantitySample(identifier, actualUnit);
229
- setLastSample(value);
230
- });
231
- };
49
+ var _requestAuthorization = _interopRequireDefault(require("./utils/requestAuthorization"));
232
50
 
233
- void init();
234
- return () => {
235
- var _cancelSubscription3;
51
+ var _saveCategorySample = _interopRequireDefault(require("./utils/saveCategorySample"));
236
52
 
237
- void ((_cancelSubscription3 = cancelSubscription) === null || _cancelSubscription3 === void 0 ? void 0 : _cancelSubscription3());
238
- };
239
- }, [identifier, unit]);
240
- return lastSample;
241
- }
53
+ var _saveCorrelationSample = _interopRequireDefault(require("./utils/saveCorrelationSample"));
242
54
 
243
- const saveQuantitySample = async (identifier, unit, value, options) => {
244
- const start = (options === null || options === void 0 ? void 0 : options.start) || (options === null || options === void 0 ? void 0 : options.end) || new Date();
245
- const end = (options === null || options === void 0 ? void 0 : options.end) || (options === null || options === void 0 ? void 0 : options.start) || new Date();
246
- const metadata = (options === null || options === void 0 ? void 0 : options.metadata) || {};
247
- return _nativeTypes.default.saveQuantitySample(identifier, unit, value, start.toISOString(), end.toISOString(), metadata);
248
- };
55
+ var _saveQuantitySample = _interopRequireDefault(require("./utils/saveQuantitySample"));
249
56
 
250
- const queryStatisticsForQuantity = async (identifier, options, from, to, unit) => {
251
- const actualUnit = await ensureUnit(identifier, unit);
252
- const toDate = to || new Date();
253
- const {
254
- mostRecentQuantityDateInterval,
255
- ...rawResponse
256
- } = await _nativeTypes.default.queryStatisticsForQuantity(identifier, actualUnit, from.toISOString(), toDate.toISOString(), options);
257
- const response = { ...rawResponse,
258
- ...(mostRecentQuantityDateInterval ? {
259
- mostRecentQuantityDateInterval: {
260
- from: new Date(mostRecentQuantityDateInterval.from),
261
- to: new Date(mostRecentQuantityDateInterval.to)
262
- }
263
- } : {})
264
- };
265
- return response;
266
- };
57
+ var _saveWorkoutSample = _interopRequireDefault(require("./utils/saveWorkoutSample"));
267
58
 
268
- const requestAuthorization = async function (read) {
269
- let write = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
270
- const readPermissions = read.reduce((obj, cur) => ({ ...obj,
271
- [cur]: true
272
- }), {});
273
- const writePermissions = write.reduce((obj, cur) => ({ ...obj,
274
- [cur]: true
275
- }), {});
276
- return _nativeTypes.default.requestAuthorization(writePermissions, readPermissions);
277
- };
59
+ var _subscribeToChanges = _interopRequireDefault(require("./utils/subscribeToChanges"));
278
60
 
279
- const getDateOfBirth = async () => {
280
- const dateOfBirth = await _nativeTypes.default.getDateOfBirth();
281
- return new Date(dateOfBirth);
282
- };
283
-
284
- const getRequestStatusForAuthorization = async function (read) {
285
- let write = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
286
- const readPermissions = read.reduce((obj, cur) => ({ ...obj,
287
- [cur]: true
288
- }), {});
289
- const writePermissions = write.reduce((obj, cur) => ({ ...obj,
290
- [cur]: true
291
- }), {});
292
- return _nativeTypes.default.getRequestStatusForAuthorization(writePermissions, readPermissions);
293
- };
294
-
295
- const queryCategorySamples = async (identifier, options) => {
296
- const opts = prepareOptions(options);
297
- const results = await _nativeTypes.default.queryCategorySamples(identifier, opts.from, opts.to, opts.limit, opts.ascending);
298
- return results.map(deserializCategorySample);
299
- };
300
-
301
- const queryWorkouts = async options => {
302
- const {
303
- energyUnit,
304
- distanceUnit
305
- } = await getPreferredUnitsTyped(options);
306
- const opts = prepareOptions(options);
307
- const workouts = await _nativeTypes.default.queryWorkoutSamples(energyUnit, distanceUnit, opts.from, opts.to, opts.limit, opts.ascending);
308
- return workouts.map(deserializeWorkout);
309
- };
61
+ var _types = require("./types");
310
62
 
311
- const getMostRecentWorkout = async options => {
312
- const workouts = await queryWorkouts({
313
- limit: 1,
314
- ascending: false,
315
- energyUnit: options === null || options === void 0 ? void 0 : options.energyUnit,
316
- distanceUnit: options === null || options === void 0 ? void 0 : options.distanceUnit
63
+ Object.keys(_types).forEach(function (key) {
64
+ if (key === "default" || key === "__esModule") return;
65
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
66
+ if (key in exports && exports[key] === _types[key]) return;
67
+ Object.defineProperty(exports, key, {
68
+ enumerable: true,
69
+ get: function () {
70
+ return _types[key];
71
+ }
317
72
  });
318
- return workouts[0];
319
- };
320
-
321
- async function saveCategorySample(identifier, value, options) {
322
- const start = (options === null || options === void 0 ? void 0 : options.start) || (options === null || options === void 0 ? void 0 : options.end) || new Date();
323
- const end = (options === null || options === void 0 ? void 0 : options.end) || (options === null || options === void 0 ? void 0 : options.start) || new Date();
324
- const metadata = (options === null || options === void 0 ? void 0 : options.metadata) || {};
325
- return _nativeTypes.default.saveCategorySample(identifier, value, start.toISOString(), end.toISOString(), metadata || {});
326
- }
327
-
328
- const getPreferredUnits = async identifiers => {
329
- const units = await _nativeTypes.default.getPreferredUnits(identifiers);
330
- return identifiers.map(i => units[i]);
331
- };
332
-
333
- const buildUnitWithPrefix = (prefix, unit) => `${prefix}${unit}`;
334
-
335
- function deserializeCorrelation(s) {
336
- return { ...s,
337
- objects: s.objects.map(o => {
338
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
339
- // @ts-ignore
340
- if (o.quantity !== undefined) {
341
- return deserializeSample(o);
342
- }
343
-
344
- return deserializCategorySample(o);
345
- }),
346
- endDate: new Date(s.endDate),
347
- startDate: new Date(s.startDate)
348
- };
349
- }
350
-
351
- function ensureMetadata(metadata) {
352
- return metadata || {};
353
- }
354
-
355
- const queryCorrelationSamples = async (typeIdentifier, options) => {
356
- const opts = prepareOptions(options);
357
- const correlations = await _nativeTypes.default.queryCorrelationSamples(typeIdentifier, opts.from, opts.to);
358
- return correlations.map(deserializeCorrelation);
359
- };
360
-
361
- const saveCorrelationSample = async (typeIdentifier, samples, options) => {
362
- const start = ((options === null || options === void 0 ? void 0 : options.start) || new Date()).toISOString();
363
- const end = ((options === null || options === void 0 ? void 0 : options.end) || new Date()).toISOString();
364
- return _nativeTypes.default.saveCorrelationSample(typeIdentifier, samples, start, end, ensureMetadata(options === null || options === void 0 ? void 0 : options.metadata));
365
- };
366
-
367
- const saveWorkoutSample = async (typeIdentifier, quantities, _start, options) => {
368
- const start = _start.toISOString();
369
-
370
- const end = ((options === null || options === void 0 ? void 0 : options.end) || new Date()).toISOString();
371
- return _nativeTypes.default.saveWorkoutSample(typeIdentifier, quantities, start, end, ensureMetadata(options === null || options === void 0 ? void 0 : options.metadata));
372
- };
73
+ });
373
74
 
374
- const getWorkoutRoutes = async workoutUUID => _nativeTypes.default.getWorkoutRoutes(workoutUUID);
75
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
375
76
 
376
77
  const Healthkit = {
377
78
  authorizationStatusFor: _nativeTypes.default.authorizationStatusFor.bind(_nativeTypes.default),
378
79
  isHealthDataAvailable: _nativeTypes.default.isHealthDataAvailable.bind(_nativeTypes.default),
379
- buildUnitWithPrefix,
380
- disableAllBackgroundDelivery: _nativeTypes.default.disableAllBackgroundDelivery,
381
- disableBackgroundDelivery: _nativeTypes.default.disableBackgroundDelivery,
382
- enableBackgroundDelivery: _nativeTypes.default.enableBackgroundDelivery,
80
+ disableAllBackgroundDelivery: _nativeTypes.default.disableAllBackgroundDelivery.bind(_nativeTypes.default),
81
+ disableBackgroundDelivery: _nativeTypes.default.disableBackgroundDelivery.bind(_nativeTypes.default),
82
+ enableBackgroundDelivery: _nativeTypes.default.enableBackgroundDelivery.bind(_nativeTypes.default),
383
83
  // simple convenience getters
384
84
  getBiologicalSex: _nativeTypes.default.getBiologicalSex.bind(_nativeTypes.default),
385
85
  getFitzpatrickSkinType: _nativeTypes.default.getFitzpatrickSkinType.bind(_nativeTypes.default),
386
- getWheelchairUse: _nativeTypes.default.getWheelchairUse,
86
+ getWheelchairUse: _nativeTypes.default.getWheelchairUse.bind(_nativeTypes.default),
387
87
  getBloodType: _nativeTypes.default.getBloodType.bind(_nativeTypes.default),
388
- getDateOfBirth,
389
- getMostRecentQuantitySample,
390
- getMostRecentCategorySample,
391
- getMostRecentWorkout,
392
- getPreferredUnit,
393
- getPreferredUnits,
394
- getRequestStatusForAuthorization,
395
- getWorkoutRoutes,
88
+ getWorkoutRoutes: _nativeTypes.default.getWorkoutRoutes.bind(_nativeTypes.default),
89
+ getDateOfBirth: _getDateOfBirth.default,
90
+ getMostRecentQuantitySample: _getMostRecentQuantitySample.default,
91
+ getMostRecentCategorySample: _getMostRecentCategorySample.default,
92
+ getMostRecentWorkout: _getMostRecentWorkout.default,
93
+ getPreferredUnit: _getPreferredUnit.default,
94
+ getPreferredUnits: _getPreferredUnits.default,
95
+ getRequestStatusForAuthorization: _getRequestStatusForAuthorization.default,
396
96
  // query methods
397
- queryCategorySamples,
398
- queryCorrelationSamples,
399
- queryQuantitySamples,
400
- queryStatisticsForQuantity,
401
- queryWorkouts,
402
- requestAuthorization,
97
+ queryCategorySamples: _queryCategorySamples.default,
98
+ queryCorrelationSamples: _queryCorrelationSamples.default,
99
+ queryQuantitySamples: _queryQuantitySamples.default,
100
+ queryStatisticsForQuantity: _queryStatisticsForQuantity.default,
101
+ queryWorkouts: _queryWorkouts.default,
102
+ requestAuthorization: _requestAuthorization.default,
103
+ // delete methods
104
+ deleteQuantitySample: _deleteQuantitySample.default,
403
105
  // save methods
404
- saveCategorySample,
405
- saveCorrelationSample,
406
- saveQuantitySample,
407
- saveWorkoutSample,
106
+ saveCategorySample: _saveCategorySample.default,
107
+ saveCorrelationSample: _saveCorrelationSample.default,
108
+ saveQuantitySample: _saveQuantitySample.default,
109
+ saveWorkoutSample: _saveWorkoutSample.default,
408
110
  // subscriptions
409
- subscribeToChanges,
111
+ subscribeToChanges: _subscribeToChanges.default,
410
112
  // hooks
411
- useMostRecentCategorySample,
412
- useMostRecentQuantitySample,
413
- useMostRecentWorkout,
414
- useSubscribeToChanges,
415
- useIsHealthDataAvailable: () => {
416
- const [isAvailable, setIsAvailable] = (0, _react.useState)(null);
417
- (0, _react.useEffect)(() => {
418
- const init = async () => {
419
- const res = await _nativeTypes.default.isHealthDataAvailable();
420
- setIsAvailable(res);
421
- };
422
-
423
- void init();
424
- }, []);
425
- return isAvailable;
426
- },
427
- useHealthkitAuthorization: (read, write) => {
428
- const [status, setStatus] = (0, _react.useState)(null);
429
- const refreshAuthStatus = (0, _react.useCallback)(async () => {
430
- const auth = await getRequestStatusForAuthorization(read, write);
431
- setStatus(auth);
432
- return auth;
433
- }, []);
434
- const request = (0, _react.useCallback)(async () => {
435
- await requestAuthorization(read, write);
436
- return refreshAuthStatus();
437
- }, []);
438
- (0, _react.useEffect)(() => {
439
- void refreshAuthStatus();
440
- }, []);
441
- return [status, request];
442
- }
113
+ useMostRecentCategorySample: _useMostRecentCategorySample.default,
114
+ useMostRecentQuantitySample: _useMostRecentQuantitySample.default,
115
+ useMostRecentWorkout: _useMostRecentWorkout.default,
116
+ useSubscribeToChanges: _useSubscribeToChanges.default,
117
+ useIsHealthDataAvailable: _useIsHealthDataAvailable.default,
118
+ useHealthkitAuthorization: _useHealthkitAuthorization.default
443
119
  };
444
120
  var _default = Healthkit;
445
121
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["getPreferredUnit","type","unit","getPreferredUnits","ensureUnit","providedUnit","Native","deserializeSample","sample","startDate","Date","endDate","deserializeWorkout","deserializCategorySample","serializeDate","date","toISOString","prepareOptions","options","limit","Infinity","ascending","from","to","queryQuantitySamples","identifier","opts","quantitySamples","map","getPreferredUnitsTyped","energyUnit","distanceUnit","units","HKQuantityTypeIdentifier","distanceWalkingRunning","activeEnergyBurned","HKUnit","Kilocalories","Meters","subscribeToChanges","callback","subscription","EventEmitter","addListener","typeIdentifier","queryId","subscribeToObserverQuery","catch","error","remove","Promise","reject","unsubscribeQuery","getMostRecentQuantitySample","samples","useMostRecentWorkout","workout","setWorkout","useState","useEffect","cancelSubscription","init","w","getMostRecentWorkout","getMostRecentCategorySample","queryCategorySamples","useSubscribeToChanges","onChange","useMostRecentCategorySample","category","setCategory","updater","useCallback","then","useMostRecentQuantitySample","lastSample","setLastSample","actualUnit","value","saveQuantitySample","start","end","metadata","queryStatisticsForQuantity","toDate","mostRecentQuantityDateInterval","rawResponse","response","requestAuthorization","read","write","readPermissions","reduce","obj","cur","writePermissions","getDateOfBirth","dateOfBirth","getRequestStatusForAuthorization","results","queryWorkouts","workouts","queryWorkoutSamples","saveCategorySample","identifiers","i","buildUnitWithPrefix","prefix","deserializeCorrelation","s","objects","o","quantity","undefined","ensureMetadata","queryCorrelationSamples","correlations","saveCorrelationSample","saveWorkoutSample","quantities","_start","getWorkoutRoutes","workoutUUID","Healthkit","authorizationStatusFor","bind","isHealthDataAvailable","disableAllBackgroundDelivery","disableBackgroundDelivery","enableBackgroundDelivery","getBiologicalSex","getFitzpatrickSkinType","getWheelchairUse","getBloodType","useIsHealthDataAvailable","isAvailable","setIsAvailable","res","useHealthkitAuthorization","status","setStatus","refreshAuthStatus","auth","request"],"sources":["index.ios.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nimport Native, {\n EventEmitter,\n HKQuantityTypeIdentifier,\n HKUnit,\n} from './native-types'\n\nimport type {\n HealthkitReadAuthorization,\n HealthkitWriteAuthorization,\n HKAuthorizationRequestStatus,\n HKCategorySampleRaw,\n HKCategoryValueForIdentifier,\n HKCorrelationRaw,\n HKCorrelationTypeIdentifier,\n HKQuantitySampleRaw,\n HKUnitSI,\n HKUnitSIPrefix,\n HKWorkoutRaw,\n MetadataMapperForCategoryIdentifier,\n ReadPermissions,\n WritePermissions,\n HKSampleTypeIdentifier,\n HKCategoryTypeIdentifier,\n} from './native-types'\nimport type {\n GenericQueryOptions,\n GetMostRecentCategorySampleFn,\n GetMostRecentQuantitySampleFn,\n GetMostRecentWorkoutFn,\n GetPreferredUnitFn,\n GetPreferredUnitsFn,\n GetWorkoutRoutesFn,\n HKCategorySample,\n HKCorrelation,\n HKQuantitySample,\n HKWorkout,\n QueryCategorySamplesFn,\n QueryCorrelationSamplesFn,\n QueryQuantitySamplesFn,\n QueryStatisticsForQuantityFn,\n QueryWorkoutsFn,\n ReactNativeHealthkit,\n SaveCorrelationSampleFn,\n SaveQuantitySampleFn,\n SaveWorkoutSampleFn,\n SubscribeToChangesFn,\n} from './types'\n\nconst getPreferredUnit: GetPreferredUnitFn = async (type) => {\n const [unit] = await getPreferredUnits([type])\n return unit\n}\n\nconst ensureUnit = async <TUnit extends HKUnit>(\n type: HKQuantityTypeIdentifier,\n providedUnit?: TUnit,\n) => {\n if (providedUnit) {\n return providedUnit\n }\n const unit = await Native.getPreferredUnits([type])\n return unit[type] as TUnit\n}\n\nfunction deserializeSample<\n TIdentifier extends HKQuantityTypeIdentifier,\n TUnit extends HKUnit\n>(\n sample: HKQuantitySampleRaw<TIdentifier, TUnit>,\n): HKQuantitySample<TIdentifier, TUnit> {\n return {\n ...sample,\n startDate: new Date(sample.startDate),\n endDate: new Date(sample.endDate),\n }\n}\n\nfunction deserializeWorkout<TEnergy extends HKUnit, TDistance extends HKUnit>(\n sample: HKWorkoutRaw<TEnergy, TDistance>,\n): HKWorkout<TEnergy, TDistance> {\n return {\n ...sample,\n startDate: new Date(sample.startDate),\n endDate: new Date(sample.endDate),\n }\n}\n\nconst deserializCategorySample = <T extends HKCategoryTypeIdentifier>(\n sample: HKCategorySampleRaw<T>,\n): HKCategorySample<T> => ({\n ...sample,\n startDate: new Date(sample.startDate),\n endDate: new Date(sample.endDate),\n})\n\nconst serializeDate = (date?: Date | null): string => (date ? date.toISOString() : new Date(0).toISOString())\n\nconst prepareOptions = (options: GenericQueryOptions) => {\n const limit = !options.limit || options.limit === Infinity ? 0 : options.limit\n const ascending = options.ascending ?? limit === 0\n const from = serializeDate(options.from)\n const to = serializeDate(options.to)\n return {\n limit, ascending, from, to,\n }\n}\n\nconst queryQuantitySamples: QueryQuantitySamplesFn = async (\n identifier,\n options,\n) => {\n const unit = await ensureUnit(identifier, options.unit)\n const opts = prepareOptions(options)\n\n const quantitySamples = await Native.queryQuantitySamples(\n identifier,\n unit,\n opts.from,\n opts.to,\n opts.limit,\n opts.ascending,\n )\n\n return quantitySamples.map(deserializeSample)\n}\n\nasync function getPreferredUnitsTyped<\n TEnergy extends HKUnit,\n TDistance extends HKUnit\n>(options?: { readonly energyUnit?: TEnergy; readonly distanceUnit?: TDistance }) {\n let energyUnit = options?.energyUnit\n let distanceUnit = options?.distanceUnit\n if (!energyUnit || !distanceUnit) {\n const units = await Native.getPreferredUnits([\n HKQuantityTypeIdentifier.distanceWalkingRunning,\n HKQuantityTypeIdentifier.activeEnergyBurned,\n ])\n if (!energyUnit) {\n energyUnit = units[HKQuantityTypeIdentifier.distanceWalkingRunning] as\n | TEnergy\n | undefined\n }\n if (!distanceUnit) {\n distanceUnit = units[HKQuantityTypeIdentifier.activeEnergyBurned] as\n | TDistance\n | undefined\n }\n }\n if (!energyUnit) {\n energyUnit = HKUnit.Kilocalories as TEnergy\n }\n if (!distanceUnit) {\n distanceUnit = HKUnit.Meters as TDistance\n }\n return { energyUnit, distanceUnit }\n}\n\nconst subscribeToChanges: SubscribeToChangesFn = async (\n identifier,\n callback,\n) => {\n const subscription = EventEmitter.addListener(\n 'onChange',\n ({ typeIdentifier }) => {\n if (typeIdentifier === identifier) {\n callback()\n }\n },\n )\n\n const queryId = await Native.subscribeToObserverQuery(identifier).catch(\n async (error) => {\n subscription.remove()\n return Promise.reject(error)\n },\n )\n\n return async () => {\n subscription.remove()\n return Native.unsubscribeQuery(queryId)\n }\n}\n\nconst getMostRecentQuantitySample: GetMostRecentQuantitySampleFn = async (\n identifier,\n unit,\n) => {\n const samples = await queryQuantitySamples(identifier, {\n limit: 1,\n unit,\n })\n return samples[0]\n}\n\nfunction useMostRecentWorkout<\n TEnergy extends HKUnit,\n TDistance extends HKUnit\n>(options?: { readonly energyUnit?: TEnergy; readonly distanceUnit?: TDistance }) {\n const [workout, setWorkout] = useState<HKWorkout<TEnergy, TDistance> | null>(\n null,\n )\n useEffect(() => {\n let cancelSubscription: (() => Promise<boolean>) | undefined\n\n const init = async () => {\n const { energyUnit, distanceUnit } = await getPreferredUnitsTyped(\n options,\n )\n\n cancelSubscription = await subscribeToChanges(\n 'HKWorkoutTypeIdentifier',\n async () => {\n const w = await getMostRecentWorkout({ energyUnit, distanceUnit })\n setWorkout(w)\n },\n )\n }\n void init()\n return () => {\n void cancelSubscription?.()\n }\n }, [options])\n return workout\n}\n\nconst getMostRecentCategorySample: GetMostRecentCategorySampleFn = async (\n identifier,\n) => {\n const samples = await queryCategorySamples(identifier, {\n limit: 1,\n ascending: false,\n })\n\n return samples[0]\n}\n\nfunction useSubscribeToChanges<TIdentifier extends HKSampleTypeIdentifier>(\n identifier: TIdentifier,\n onChange: () => void,\n): void {\n useEffect(() => {\n let cancelSubscription: (() => Promise<boolean>) | undefined\n\n const init = async () => {\n cancelSubscription = await subscribeToChanges(identifier, onChange)\n }\n void init()\n\n return () => {\n void cancelSubscription?.()\n }\n }, [identifier, onChange])\n}\n\nfunction useMostRecentCategorySample<\n TCategory extends HKCategoryTypeIdentifier\n>(identifier: TCategory) {\n const [category, setCategory] = useState<HKCategorySample<TCategory> | null>(\n null,\n )\n const updater = useCallback(() => {\n void getMostRecentCategorySample(identifier).then(setCategory)\n }, [identifier])\n\n useSubscribeToChanges(identifier, updater)\n\n return category\n}\n\nfunction useMostRecentQuantitySample<\n TIdentifier extends HKQuantityTypeIdentifier,\n TUnit extends HKUnit = HKUnit\n>(identifier: TIdentifier, unit?: TUnit) {\n const [lastSample, setLastSample] = useState<HKQuantitySample<\n TIdentifier,\n TUnit\n > | null>(null)\n\n useEffect(() => {\n let cancelSubscription: (() => Promise<boolean>) | undefined\n\n const init = async () => {\n const actualUnit = await ensureUnit(identifier, unit)\n\n cancelSubscription = await subscribeToChanges(identifier, async () => {\n const value = await getMostRecentQuantitySample(identifier, actualUnit)\n setLastSample(value)\n })\n }\n void init()\n\n return () => {\n void cancelSubscription?.()\n }\n }, [identifier, unit])\n\n return lastSample\n}\n\nconst saveQuantitySample: SaveQuantitySampleFn = async (\n identifier,\n unit,\n value,\n options,\n) => {\n const start = options?.start || options?.end || new Date()\n const end = options?.end || options?.start || new Date()\n const metadata = options?.metadata || {}\n\n return Native.saveQuantitySample(\n identifier,\n unit,\n value,\n start.toISOString(),\n end.toISOString(),\n metadata,\n )\n}\n\nconst queryStatisticsForQuantity: QueryStatisticsForQuantityFn = async (\n identifier,\n options,\n from,\n to,\n unit,\n) => {\n const actualUnit = await ensureUnit(identifier, unit)\n const toDate = to || new Date()\n const { mostRecentQuantityDateInterval, ...rawResponse } = await Native.queryStatisticsForQuantity(\n identifier,\n actualUnit,\n from.toISOString(),\n toDate.toISOString(),\n options,\n )\n\n const response = {\n ...rawResponse,\n ...(mostRecentQuantityDateInterval\n ? {\n mostRecentQuantityDateInterval: {\n from: new Date(mostRecentQuantityDateInterval.from),\n to: new Date(mostRecentQuantityDateInterval.to),\n },\n }\n : {}),\n }\n\n return response\n}\n\nconst requestAuthorization = async (\n read: readonly HealthkitReadAuthorization[],\n write: readonly HealthkitWriteAuthorization[] = [],\n): Promise<boolean> => {\n const readPermissions = read.reduce((obj, cur) => ({ ...obj, [cur]: true }), {} as ReadPermissions)\n\n const writePermissions = write.reduce((obj, cur) => ({ ...obj, [cur]: true }), {} as WritePermissions)\n\n return Native.requestAuthorization(writePermissions, readPermissions)\n}\n\nconst getDateOfBirth = async () => {\n const dateOfBirth = await Native.getDateOfBirth()\n return new Date(dateOfBirth)\n}\n\nconst getRequestStatusForAuthorization = async (\n read: readonly HealthkitReadAuthorization[],\n write: readonly HealthkitWriteAuthorization[] = [],\n) => {\n const readPermissions = read.reduce((obj, cur) => ({ ...obj, [cur]: true }), {} as ReadPermissions)\n\n const writePermissions = write.reduce((obj, cur) => ({ ...obj, [cur]: true }), {} as WritePermissions)\n\n return Native.getRequestStatusForAuthorization(\n writePermissions,\n readPermissions,\n )\n}\n\nconst queryCategorySamples: QueryCategorySamplesFn = async (\n identifier,\n options,\n) => {\n const opts = prepareOptions(options)\n const results = await Native.queryCategorySamples(\n identifier,\n opts.from,\n opts.to,\n opts.limit,\n opts.ascending,\n )\n\n return results.map(deserializCategorySample)\n}\n\nconst queryWorkouts: QueryWorkoutsFn = async (options) => {\n const { energyUnit, distanceUnit } = await getPreferredUnitsTyped(options)\n const opts = prepareOptions(options)\n\n const workouts = await Native.queryWorkoutSamples(\n energyUnit,\n distanceUnit,\n opts.from,\n opts.to,\n opts.limit,\n opts.ascending,\n )\n\n return workouts.map(deserializeWorkout)\n}\n\nconst getMostRecentWorkout: GetMostRecentWorkoutFn = async (options) => {\n const workouts = await queryWorkouts({\n limit: 1,\n ascending: false,\n energyUnit: options?.energyUnit,\n distanceUnit: options?.distanceUnit,\n })\n\n return workouts[0]\n}\n\nasync function saveCategorySample<T extends HKCategoryTypeIdentifier>(\n identifier: T,\n value: HKCategoryValueForIdentifier<T>,\n options?: {\n readonly start?: Date;\n readonly end?: Date;\n readonly metadata?: MetadataMapperForCategoryIdentifier<T>;\n },\n) {\n const start = options?.start || options?.end || new Date()\n const end = options?.end || options?.start || new Date()\n const metadata = options?.metadata || {}\n\n return Native.saveCategorySample(\n identifier,\n value,\n start.toISOString(),\n end.toISOString(),\n metadata || {},\n )\n}\n\nconst getPreferredUnits: GetPreferredUnitsFn = async (identifiers) => {\n const units = await Native.getPreferredUnits(identifiers)\n return identifiers.map((i) => units[i])\n}\n\nconst buildUnitWithPrefix = (prefix: HKUnitSIPrefix, unit: HKUnitSI) => `${prefix}${unit}` as HKUnit\n\nfunction deserializeCorrelation<\n TIdentifier extends HKCorrelationTypeIdentifier\n>(s: HKCorrelationRaw<TIdentifier>): HKCorrelation<TIdentifier> {\n return {\n ...s,\n objects: s.objects.map((o) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n if (o.quantity !== undefined) {\n return deserializeSample(o as HKQuantitySampleRaw)\n }\n\n return deserializCategorySample(o as HKCategorySampleRaw)\n }),\n endDate: new Date(s.endDate),\n startDate: new Date(s.startDate),\n }\n}\n\nfunction ensureMetadata<TMetadata>(metadata?: TMetadata) {\n return metadata || ({} as TMetadata)\n}\n\nconst queryCorrelationSamples: QueryCorrelationSamplesFn = async (\n typeIdentifier,\n options,\n) => {\n const opts = prepareOptions(options)\n const correlations = await Native.queryCorrelationSamples(\n typeIdentifier,\n opts.from,\n opts.to,\n )\n\n return correlations.map(deserializeCorrelation)\n}\n\nconst saveCorrelationSample: SaveCorrelationSampleFn = async (\n typeIdentifier,\n samples,\n options,\n) => {\n const start = (options?.start || new Date()).toISOString()\n const end = (options?.end || new Date()).toISOString()\n\n return Native.saveCorrelationSample(\n typeIdentifier,\n samples,\n start,\n end,\n ensureMetadata(options?.metadata),\n )\n}\n\nconst saveWorkoutSample: SaveWorkoutSampleFn = async (\n typeIdentifier,\n quantities,\n _start,\n options,\n) => {\n const start = _start.toISOString()\n const end = (options?.end || new Date()).toISOString()\n\n return Native.saveWorkoutSample(\n typeIdentifier,\n quantities,\n start,\n end,\n ensureMetadata(options?.metadata),\n )\n}\n\nconst getWorkoutRoutes: GetWorkoutRoutesFn = async (workoutUUID: string) => Native.getWorkoutRoutes(workoutUUID)\n\nconst Healthkit: ReactNativeHealthkit = {\n authorizationStatusFor: Native.authorizationStatusFor.bind(Native),\n\n isHealthDataAvailable: Native.isHealthDataAvailable.bind(Native),\n\n buildUnitWithPrefix,\n\n disableAllBackgroundDelivery: Native.disableAllBackgroundDelivery,\n disableBackgroundDelivery: Native.disableBackgroundDelivery,\n enableBackgroundDelivery: Native.enableBackgroundDelivery,\n\n // simple convenience getters\n getBiologicalSex: Native.getBiologicalSex.bind(Native),\n getFitzpatrickSkinType: Native.getFitzpatrickSkinType.bind(Native),\n getWheelchairUse: Native.getWheelchairUse,\n getBloodType: Native.getBloodType.bind(Native),\n getDateOfBirth,\n\n getMostRecentQuantitySample,\n getMostRecentCategorySample,\n getMostRecentWorkout,\n\n getPreferredUnit,\n getPreferredUnits,\n getRequestStatusForAuthorization,\n\n getWorkoutRoutes,\n\n // query methods\n queryCategorySamples,\n queryCorrelationSamples,\n queryQuantitySamples,\n queryStatisticsForQuantity,\n queryWorkouts,\n\n requestAuthorization,\n\n // save methods\n saveCategorySample,\n saveCorrelationSample,\n saveQuantitySample,\n saveWorkoutSample,\n\n // subscriptions\n subscribeToChanges,\n\n // hooks\n useMostRecentCategorySample,\n\n useMostRecentQuantitySample,\n useMostRecentWorkout,\n\n useSubscribeToChanges,\n\n useIsHealthDataAvailable: () => {\n const [isAvailable, setIsAvailable] = useState<boolean | null>(null)\n useEffect(() => {\n const init = async () => {\n const res = await Native.isHealthDataAvailable()\n setIsAvailable(res)\n }\n void init()\n }, [])\n return isAvailable\n },\n useHealthkitAuthorization: (read, write) => {\n const [status, setStatus] = useState<HKAuthorizationRequestStatus | null>(null)\n const refreshAuthStatus = useCallback(async () => {\n const auth = await getRequestStatusForAuthorization(read, write)\n setStatus(auth)\n return auth\n }, [])\n\n const request = useCallback(async () => {\n await requestAuthorization(read, write)\n return refreshAuthStatus()\n }, [])\n\n useEffect(() => {\n void refreshAuthStatus()\n }, [])\n\n return [status, request]\n },\n}\n\nexport * from './native-types'\nexport * from './types'\n\nexport default Healthkit\n"],"mappings":"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"}
1
+ {"version":3,"names":["Healthkit","authorizationStatusFor","Native","bind","isHealthDataAvailable","disableAllBackgroundDelivery","disableBackgroundDelivery","enableBackgroundDelivery","getBiologicalSex","getFitzpatrickSkinType","getWheelchairUse","getBloodType","getWorkoutRoutes","getDateOfBirth","getMostRecentQuantitySample","getMostRecentCategorySample","getMostRecentWorkout","getPreferredUnit","getPreferredUnits","getRequestStatusForAuthorization","queryCategorySamples","queryCorrelationSamples","queryQuantitySamples","queryStatisticsForQuantity","queryWorkouts","requestAuthorization","deleteQuantitySample","saveCategorySample","saveCorrelationSample","saveQuantitySample","saveWorkoutSample","subscribeToChanges","useMostRecentCategorySample","useMostRecentQuantitySample","useMostRecentWorkout","useSubscribeToChanges","useIsHealthDataAvailable","useHealthkitAuthorization"],"sources":["index.ios.tsx"],"sourcesContent":["import useHealthkitAuthorization from './hooks/useHealthkitAuthorization'\nimport useIsHealthDataAvailable from './hooks/useIsHealthDataAvailable'\nimport useMostRecentCategorySample from './hooks/useMostRecentCategorySample'\nimport useMostRecentQuantitySample from './hooks/useMostRecentQuantitySample'\nimport useMostRecentWorkout from './hooks/useMostRecentWorkout'\nimport useSubscribeToChanges from './hooks/useSubscribeToChanges'\nimport Native from './native-types'\nimport deleteQuantitySample from './utils/deleteQuantitySample'\nimport getDateOfBirth from './utils/getDateOfBirth'\nimport getMostRecentCategorySample from './utils/getMostRecentCategorySample'\nimport getMostRecentQuantitySample from './utils/getMostRecentQuantitySample'\nimport getMostRecentWorkout from './utils/getMostRecentWorkout'\nimport getPreferredUnit from './utils/getPreferredUnit'\nimport getPreferredUnits from './utils/getPreferredUnits'\nimport getRequestStatusForAuthorization from './utils/getRequestStatusForAuthorization'\nimport queryCategorySamples from './utils/queryCategorySamples'\nimport queryCorrelationSamples from './utils/queryCorrelationSamples'\nimport queryQuantitySamples from './utils/queryQuantitySamples'\nimport queryStatisticsForQuantity from './utils/queryStatisticsForQuantity'\nimport queryWorkouts from './utils/queryWorkouts'\nimport requestAuthorization from './utils/requestAuthorization'\nimport saveCategorySample from './utils/saveCategorySample'\nimport saveCorrelationSample from './utils/saveCorrelationSample'\nimport saveQuantitySample from './utils/saveQuantitySample'\nimport saveWorkoutSample from './utils/saveWorkoutSample'\nimport subscribeToChanges from './utils/subscribeToChanges'\n\nconst Healthkit = {\n authorizationStatusFor: Native.authorizationStatusFor.bind(Native),\n\n isHealthDataAvailable: Native.isHealthDataAvailable.bind(Native),\n\n disableAllBackgroundDelivery: Native.disableAllBackgroundDelivery.bind(Native),\n disableBackgroundDelivery: Native.disableBackgroundDelivery.bind(Native),\n enableBackgroundDelivery: Native.enableBackgroundDelivery.bind(Native),\n\n // simple convenience getters\n getBiologicalSex: Native.getBiologicalSex.bind(Native),\n getFitzpatrickSkinType: Native.getFitzpatrickSkinType.bind(Native),\n getWheelchairUse: Native.getWheelchairUse.bind(Native),\n getBloodType: Native.getBloodType.bind(Native),\n\n getWorkoutRoutes: Native.getWorkoutRoutes.bind(Native),\n\n getDateOfBirth,\n\n getMostRecentQuantitySample,\n getMostRecentCategorySample,\n getMostRecentWorkout,\n\n getPreferredUnit,\n getPreferredUnits,\n getRequestStatusForAuthorization,\n\n // query methods\n queryCategorySamples,\n queryCorrelationSamples,\n queryQuantitySamples,\n queryStatisticsForQuantity,\n queryWorkouts,\n\n requestAuthorization,\n\n // delete methods\n deleteQuantitySample,\n\n // save methods\n saveCategorySample,\n saveCorrelationSample,\n saveQuantitySample,\n saveWorkoutSample,\n\n // subscriptions\n subscribeToChanges,\n\n // hooks\n useMostRecentCategorySample,\n\n useMostRecentQuantitySample,\n useMostRecentWorkout,\n\n useSubscribeToChanges,\n\n useIsHealthDataAvailable,\n useHealthkitAuthorization,\n}\n\nexport * from './types'\n\nexport default Healthkit\n"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AA8DA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;;;AA5DA,MAAMA,SAAS,GAAG;EAChBC,sBAAsB,EAAEC,oBAAA,CAAOD,sBAAP,CAA8BE,IAA9B,CAAmCD,oBAAnC,CADR;EAGhBE,qBAAqB,EAAEF,oBAAA,CAAOE,qBAAP,CAA6BD,IAA7B,CAAkCD,oBAAlC,CAHP;EAKhBG,4BAA4B,EAAEH,oBAAA,CAAOG,4BAAP,CAAoCF,IAApC,CAAyCD,oBAAzC,CALd;EAMhBI,yBAAyB,EAAEJ,oBAAA,CAAOI,yBAAP,CAAiCH,IAAjC,CAAsCD,oBAAtC,CANX;EAOhBK,wBAAwB,EAAEL,oBAAA,CAAOK,wBAAP,CAAgCJ,IAAhC,CAAqCD,oBAArC,CAPV;EAShB;EACAM,gBAAgB,EAAEN,oBAAA,CAAOM,gBAAP,CAAwBL,IAAxB,CAA6BD,oBAA7B,CAVF;EAWhBO,sBAAsB,EAAEP,oBAAA,CAAOO,sBAAP,CAA8BN,IAA9B,CAAmCD,oBAAnC,CAXR;EAYhBQ,gBAAgB,EAAER,oBAAA,CAAOQ,gBAAP,CAAwBP,IAAxB,CAA6BD,oBAA7B,CAZF;EAahBS,YAAY,EAAET,oBAAA,CAAOS,YAAP,CAAoBR,IAApB,CAAyBD,oBAAzB,CAbE;EAehBU,gBAAgB,EAAEV,oBAAA,CAAOU,gBAAP,CAAwBT,IAAxB,CAA6BD,oBAA7B,CAfF;EAiBhBW,cAAc,EAAdA,uBAjBgB;EAmBhBC,2BAA2B,EAA3BA,oCAnBgB;EAoBhBC,2BAA2B,EAA3BA,oCApBgB;EAqBhBC,oBAAoB,EAApBA,6BArBgB;EAuBhBC,gBAAgB,EAAhBA,yBAvBgB;EAwBhBC,iBAAiB,EAAjBA,0BAxBgB;EAyBhBC,gCAAgC,EAAhCA,yCAzBgB;EA2BhB;EACAC,oBAAoB,EAApBA,6BA5BgB;EA6BhBC,uBAAuB,EAAvBA,gCA7BgB;EA8BhBC,oBAAoB,EAApBA,6BA9BgB;EA+BhBC,0BAA0B,EAA1BA,mCA/BgB;EAgChBC,aAAa,EAAbA,sBAhCgB;EAkChBC,oBAAoB,EAApBA,6BAlCgB;EAoChB;EACAC,oBAAoB,EAApBA,6BArCgB;EAuChB;EACAC,kBAAkB,EAAlBA,2BAxCgB;EAyChBC,qBAAqB,EAArBA,8BAzCgB;EA0ChBC,kBAAkB,EAAlBA,2BA1CgB;EA2ChBC,iBAAiB,EAAjBA,0BA3CgB;EA6ChB;EACAC,kBAAkB,EAAlBA,2BA9CgB;EAgDhB;EACAC,2BAA2B,EAA3BA,oCAjDgB;EAmDhBC,2BAA2B,EAA3BA,oCAnDgB;EAoDhBC,oBAAoB,EAApBA,6BApDgB;EAsDhBC,qBAAqB,EAArBA,8BAtDgB;EAwDhBC,wBAAwB,EAAxBA,iCAxDgB;EAyDhBC,yBAAyB,EAAzBA;AAzDgB,CAAlB;eA8DerC,S"}
@@ -10,18 +10,6 @@ var _reactNative = require("react-native");
10
10
 
11
11
  var _nativeTypes = require("./native-types");
12
12
 
13
- Object.keys(_nativeTypes).forEach(function (key) {
14
- if (key === "default" || key === "__esModule") return;
15
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
16
- if (key in exports && exports[key] === _nativeTypes[key]) return;
17
- Object.defineProperty(exports, key, {
18
- enumerable: true,
19
- get: function () {
20
- return _nativeTypes[key];
21
- }
22
- });
23
- });
24
-
25
13
  var _types = require("./types");
26
14
 
27
15
  Object.keys(_types).forEach(function (key) {
@@ -51,7 +39,6 @@ function UnavailableFn(retVal) {
51
39
 
52
40
  const Healthkit = {
53
41
  authorizationStatusFor: UnavailableFn(Promise.resolve(false)),
54
- buildUnitWithPrefix: UnavailableFn(_nativeTypes.HKUnit.Atmospheres),
55
42
  disableAllBackgroundDelivery: UnavailableFn(Promise.resolve(false)),
56
43
  disableBackgroundDelivery: UnavailableFn(Promise.resolve(false)),
57
44
  enableBackgroundDelivery: UnavailableFn(Promise.resolve(false)),
@@ -62,7 +49,7 @@ const Healthkit = {
62
49
  getMostRecentCategorySample: UnavailableFn(Promise.resolve(null)),
63
50
  getMostRecentQuantitySample: UnavailableFn(Promise.resolve(null)),
64
51
  getMostRecentWorkout: UnavailableFn(Promise.resolve(null)),
65
- getPreferredUnit: UnavailableFn(Promise.resolve(_nativeTypes.HKUnit.Atmospheres)),
52
+ getPreferredUnit: UnavailableFn(Promise.resolve(_nativeTypes.HKUnits.Count)),
66
53
  getPreferredUnits: UnavailableFn(Promise.resolve([])),
67
54
  getRequestStatusForAuthorization: UnavailableFn(Promise.resolve(_nativeTypes.HKAuthorizationRequestStatus.unknown)),
68
55
  getWheelchairUse: UnavailableFn(Promise.resolve(_nativeTypes.HKWheelchairUse.notSet)),
@@ -82,6 +69,7 @@ const Healthkit = {
82
69
  })),
83
70
  queryWorkouts: UnavailableFn(Promise.resolve([])),
84
71
  requestAuthorization: UnavailableFn(Promise.resolve(false)),
72
+ deleteQuantitySample: UnavailableFn(Promise.resolve(false)),
85
73
  saveCategorySample: UnavailableFn(Promise.resolve(false)),
86
74
  saveCorrelationSample: UnavailableFn(Promise.resolve(false)),
87
75
  saveQuantitySample: UnavailableFn(Promise.resolve(false)),
@@ -91,7 +79,7 @@ const Healthkit = {
91
79
  useMostRecentQuantitySample: UnavailableFn(null),
92
80
  useMostRecentWorkout: UnavailableFn(null),
93
81
  useSubscribeToChanges: UnavailableFn([null, () => null]),
94
- useHealthkitAuthorization: UnavailableFn([null, async () => Promise.resolve(null)]),
82
+ useHealthkitAuthorization: UnavailableFn([null, async () => Promise.resolve(_nativeTypes.HKAuthorizationRequestStatus.unknown)]),
95
83
  useIsHealthDataAvailable: () => false
96
84
  };
97
85
  var _default = Healthkit;