@nativesquare/soma 0.9.0 → 0.9.2

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 (360) hide show
  1. package/dist/client/index.d.ts +66 -12
  2. package/dist/client/index.d.ts.map +1 -1
  3. package/dist/client/index.js +76 -14
  4. package/dist/client/index.js.map +1 -1
  5. package/dist/component/_generated/api.d.ts +20 -2
  6. package/dist/component/_generated/api.d.ts.map +1 -1
  7. package/dist/component/_generated/api.js.map +1 -1
  8. package/dist/component/_generated/component.d.ts +7 -6
  9. package/dist/component/_generated/component.d.ts.map +1 -1
  10. package/dist/{garmin → component/garmin}/auth.d.ts +8 -1
  11. package/dist/component/garmin/auth.d.ts.map +1 -0
  12. package/dist/component/garmin/auth.js.map +1 -0
  13. package/dist/component/garmin/client.d.ts +15 -0
  14. package/dist/component/garmin/client.d.ts.map +1 -0
  15. package/dist/component/garmin/client.js +32 -0
  16. package/dist/component/garmin/client.js.map +1 -0
  17. package/dist/component/garmin/private.d.ts +87 -19
  18. package/dist/component/garmin/private.d.ts.map +1 -1
  19. package/dist/component/garmin/private.js +52 -205
  20. package/dist/component/garmin/private.js.map +1 -1
  21. package/dist/component/garmin/public.d.ts +46 -50
  22. package/dist/component/garmin/public.d.ts.map +1 -1
  23. package/dist/component/garmin/public.js +406 -368
  24. package/dist/component/garmin/public.js.map +1 -1
  25. package/dist/component/garmin/schemas/activity.d.ts +2 -2
  26. package/dist/component/garmin/schemas/activity.d.ts.map +1 -1
  27. package/dist/component/garmin/schemas/activity.js +3 -1
  28. package/dist/component/garmin/schemas/activity.js.map +1 -1
  29. package/dist/component/garmin/schemas/activityDetails.d.ts +50 -50
  30. package/dist/component/garmin/schemas/activityDetails.d.ts.map +1 -1
  31. package/dist/component/garmin/schemas/activityDetails.js +4 -1
  32. package/dist/component/garmin/schemas/activityDetails.js.map +1 -1
  33. package/dist/component/garmin/schemas/bloodPressure.js +1 -1
  34. package/dist/component/garmin/schemas/bloodPressure.js.map +1 -1
  35. package/dist/component/garmin/schemas/bodyCompositions.js +1 -1
  36. package/dist/component/garmin/schemas/bodyCompositions.js.map +1 -1
  37. package/dist/component/garmin/schemas/dailies.js +1 -1
  38. package/dist/component/garmin/schemas/dailies.js.map +1 -1
  39. package/dist/component/garmin/schemas/epochs.js +1 -1
  40. package/dist/component/garmin/schemas/epochs.js.map +1 -1
  41. package/dist/component/garmin/schemas/healthSnapshot.js +1 -1
  42. package/dist/component/garmin/schemas/healthSnapshot.js.map +1 -1
  43. package/dist/component/garmin/schemas/hrvSummary.js +1 -1
  44. package/dist/component/garmin/schemas/hrvSummary.js.map +1 -1
  45. package/dist/component/garmin/schemas/manuallyUpdatedActivities.d.ts +2 -2
  46. package/dist/component/garmin/schemas/manuallyUpdatedActivities.d.ts.map +1 -1
  47. package/dist/component/garmin/schemas/manuallyUpdatedActivities.js +3 -1
  48. package/dist/component/garmin/schemas/manuallyUpdatedActivities.js.map +1 -1
  49. package/dist/component/garmin/schemas/menstrualCycleTracking.js +1 -1
  50. package/dist/component/garmin/schemas/menstrualCycleTracking.js.map +1 -1
  51. package/dist/component/garmin/schemas/moveIQ.js +1 -1
  52. package/dist/component/garmin/schemas/moveIQ.js.map +1 -1
  53. package/dist/component/garmin/schemas/pulseOx.js +1 -1
  54. package/dist/component/garmin/schemas/pulseOx.js.map +1 -1
  55. package/dist/component/garmin/schemas/respiration.js +1 -1
  56. package/dist/component/garmin/schemas/respiration.js.map +1 -1
  57. package/dist/component/garmin/schemas/skinTemperature.js +1 -1
  58. package/dist/component/garmin/schemas/skinTemperature.js.map +1 -1
  59. package/dist/component/garmin/schemas/sleeps.js +1 -1
  60. package/dist/component/garmin/schemas/sleeps.js.map +1 -1
  61. package/dist/component/garmin/schemas/stress.d.ts +6 -6
  62. package/dist/component/garmin/schemas/stress.d.ts.map +1 -1
  63. package/dist/component/garmin/schemas/stress.js +3 -1
  64. package/dist/component/garmin/schemas/stress.js.map +1 -1
  65. package/dist/component/garmin/schemas/userMetrics.js +1 -1
  66. package/dist/component/garmin/schemas/userMetrics.js.map +1 -1
  67. package/dist/component/garmin/transform/activity.d.ts +2 -2
  68. package/dist/component/garmin/transform/activity.d.ts.map +1 -1
  69. package/dist/component/garmin/transform/activity.js +1 -1
  70. package/dist/component/garmin/transform/activity.js.map +1 -1
  71. package/dist/component/garmin/transform/activityDetails.d.ts +2 -2
  72. package/dist/component/garmin/transform/activityDetails.d.ts.map +1 -1
  73. package/dist/component/garmin/transform/activityDetails.js.map +1 -1
  74. package/dist/component/garmin/transform/bloodPressure.d.ts +2 -2
  75. package/dist/component/garmin/transform/bloodPressure.d.ts.map +1 -1
  76. package/dist/component/garmin/transform/bodyCompositions.d.ts +2 -2
  77. package/dist/component/garmin/transform/bodyCompositions.d.ts.map +1 -1
  78. package/dist/component/garmin/transform/bodyCompositions.js.map +1 -1
  79. package/dist/component/garmin/transform/dailies.d.ts +2 -2
  80. package/dist/component/garmin/transform/dailies.d.ts.map +1 -1
  81. package/dist/component/garmin/transform/dailies.js +1 -1
  82. package/dist/component/garmin/transform/dailies.js.map +1 -1
  83. package/dist/component/garmin/transform/epochs.d.ts +2 -2
  84. package/dist/component/garmin/transform/epochs.d.ts.map +1 -1
  85. package/dist/component/garmin/transform/healthSnapshot.d.ts +2 -2
  86. package/dist/component/garmin/transform/healthSnapshot.d.ts.map +1 -1
  87. package/dist/component/garmin/transform/healthSnapshot.js.map +1 -1
  88. package/dist/component/garmin/transform/hrvSummary.d.ts +2 -2
  89. package/dist/component/garmin/transform/hrvSummary.d.ts.map +1 -1
  90. package/dist/component/garmin/transform/hrvSummary.js +1 -1
  91. package/dist/component/garmin/transform/hrvSummary.js.map +1 -1
  92. package/dist/component/garmin/transform/manuallyUpdatedActivities.d.ts +2 -2
  93. package/dist/component/garmin/transform/manuallyUpdatedActivities.d.ts.map +1 -1
  94. package/dist/{garmin/maps/activity-type.d.ts → component/garmin/transform/maps/activityType.d.ts} +1 -1
  95. package/dist/component/garmin/transform/maps/activityType.d.ts.map +1 -0
  96. package/dist/{garmin/maps/activity-type.js → component/garmin/transform/maps/activityType.js} +1 -1
  97. package/dist/component/garmin/transform/maps/activityType.js.map +1 -0
  98. package/dist/{garmin/maps/sleep-level.d.ts → component/garmin/transform/maps/sleepLevel.d.ts} +1 -1
  99. package/dist/component/garmin/transform/maps/sleepLevel.d.ts.map +1 -0
  100. package/dist/{garmin/maps/sleep-level.js → component/garmin/transform/maps/sleepLevel.js} +1 -1
  101. package/dist/component/garmin/transform/maps/sleepLevel.js.map +1 -0
  102. package/dist/component/garmin/transform/menstrualCycleTracking.d.ts +2 -2
  103. package/dist/component/garmin/transform/menstrualCycleTracking.d.ts.map +1 -1
  104. package/dist/component/garmin/transform/menstrualCycleTracking.js.map +1 -1
  105. package/dist/component/garmin/transform/moveIQ.d.ts +2 -5
  106. package/dist/component/garmin/transform/moveIQ.d.ts.map +1 -1
  107. package/dist/component/garmin/transform/moveIQ.js +1 -1
  108. package/dist/component/garmin/transform/moveIQ.js.map +1 -1
  109. package/dist/{garmin → component/garmin/transform}/plannedWorkout.d.ts +3 -4
  110. package/dist/component/garmin/transform/plannedWorkout.d.ts.map +1 -0
  111. package/dist/{garmin → component/garmin/transform}/plannedWorkout.js +61 -70
  112. package/dist/component/garmin/transform/plannedWorkout.js.map +1 -0
  113. package/dist/component/garmin/transform/pulseOx.d.ts +2 -2
  114. package/dist/component/garmin/transform/pulseOx.d.ts.map +1 -1
  115. package/dist/component/garmin/transform/pulseOx.js +1 -1
  116. package/dist/component/garmin/transform/pulseOx.js.map +1 -1
  117. package/dist/component/garmin/transform/respiration.d.ts +2 -2
  118. package/dist/component/garmin/transform/respiration.d.ts.map +1 -1
  119. package/dist/component/garmin/transform/respiration.js +1 -1
  120. package/dist/component/garmin/transform/respiration.js.map +1 -1
  121. package/dist/component/garmin/transform/skinTemperature.d.ts +2 -2
  122. package/dist/component/garmin/transform/skinTemperature.d.ts.map +1 -1
  123. package/dist/component/garmin/transform/skinTemperature.js.map +1 -1
  124. package/dist/component/garmin/transform/sleeps.d.ts +2 -2
  125. package/dist/component/garmin/transform/sleeps.d.ts.map +1 -1
  126. package/dist/component/garmin/transform/sleeps.js +3 -3
  127. package/dist/component/garmin/transform/sleeps.js.map +1 -1
  128. package/dist/component/garmin/transform/stress.d.ts +2 -2
  129. package/dist/component/garmin/transform/stress.d.ts.map +1 -1
  130. package/dist/component/garmin/transform/stress.js +2 -2
  131. package/dist/component/garmin/transform/stress.js.map +1 -1
  132. package/dist/component/garmin/transform/userMetrics.d.ts +2 -2
  133. package/dist/component/garmin/transform/userMetrics.d.ts.map +1 -1
  134. package/dist/component/garmin/transform/userMetrics.js.map +1 -1
  135. package/dist/component/garmin/types/trainingApiWorkouts/client/client.gen.d.ts +3 -0
  136. package/dist/component/garmin/types/trainingApiWorkouts/client/client.gen.d.ts.map +1 -0
  137. package/dist/component/garmin/types/trainingApiWorkouts/client/client.gen.js +236 -0
  138. package/dist/component/garmin/types/trainingApiWorkouts/client/client.gen.js.map +1 -0
  139. package/dist/component/garmin/types/trainingApiWorkouts/client/index.d.ts +9 -0
  140. package/dist/component/garmin/types/trainingApiWorkouts/client/index.d.ts.map +1 -0
  141. package/dist/component/garmin/types/trainingApiWorkouts/client/index.js +7 -0
  142. package/dist/component/garmin/types/trainingApiWorkouts/client/index.js.map +1 -0
  143. package/dist/component/garmin/types/trainingApiWorkouts/client/types.gen.d.ts +118 -0
  144. package/dist/component/garmin/types/trainingApiWorkouts/client/types.gen.d.ts.map +1 -0
  145. package/dist/component/garmin/types/trainingApiWorkouts/client/types.gen.js +3 -0
  146. package/dist/component/garmin/types/trainingApiWorkouts/client/types.gen.js.map +1 -0
  147. package/dist/component/garmin/types/trainingApiWorkouts/client/utils.gen.d.ts +34 -0
  148. package/dist/component/garmin/types/trainingApiWorkouts/client/utils.gen.d.ts.map +1 -0
  149. package/dist/component/garmin/types/trainingApiWorkouts/client/utils.gen.js +229 -0
  150. package/dist/component/garmin/types/trainingApiWorkouts/client/utils.gen.js.map +1 -0
  151. package/dist/component/garmin/types/trainingApiWorkouts/client.gen.d.ts +13 -0
  152. package/dist/component/garmin/types/trainingApiWorkouts/client.gen.d.ts.map +1 -0
  153. package/dist/component/garmin/types/trainingApiWorkouts/client.gen.js +4 -0
  154. package/dist/component/garmin/types/trainingApiWorkouts/client.gen.js.map +1 -0
  155. package/dist/component/garmin/types/trainingApiWorkouts/core/auth.gen.d.ts +19 -0
  156. package/dist/component/garmin/types/trainingApiWorkouts/core/auth.gen.d.ts.map +1 -0
  157. package/dist/component/garmin/types/trainingApiWorkouts/core/auth.gen.js +15 -0
  158. package/dist/component/garmin/types/trainingApiWorkouts/core/auth.gen.js.map +1 -0
  159. package/dist/component/garmin/types/trainingApiWorkouts/core/bodySerializer.gen.d.ts +26 -0
  160. package/dist/component/garmin/types/trainingApiWorkouts/core/bodySerializer.gen.d.ts.map +1 -0
  161. package/dist/component/garmin/types/trainingApiWorkouts/core/bodySerializer.gen.js +58 -0
  162. package/dist/component/garmin/types/trainingApiWorkouts/core/bodySerializer.gen.js.map +1 -0
  163. package/dist/component/garmin/types/trainingApiWorkouts/core/params.gen.d.ts +44 -0
  164. package/dist/component/garmin/types/trainingApiWorkouts/core/params.gen.d.ts.map +1 -0
  165. package/dist/component/garmin/types/trainingApiWorkouts/core/params.gen.js +101 -0
  166. package/dist/component/garmin/types/trainingApiWorkouts/core/params.gen.js.map +1 -0
  167. package/dist/component/garmin/types/trainingApiWorkouts/core/pathSerializer.gen.d.ts +34 -0
  168. package/dist/component/garmin/types/trainingApiWorkouts/core/pathSerializer.gen.d.ts.map +1 -0
  169. package/dist/component/garmin/types/trainingApiWorkouts/core/pathSerializer.gen.js +107 -0
  170. package/dist/component/garmin/types/trainingApiWorkouts/core/pathSerializer.gen.js.map +1 -0
  171. package/dist/component/garmin/types/trainingApiWorkouts/core/queryKeySerializer.gen.d.ts +19 -0
  172. package/dist/component/garmin/types/trainingApiWorkouts/core/queryKeySerializer.gen.d.ts.map +1 -0
  173. package/dist/component/garmin/types/trainingApiWorkouts/core/queryKeySerializer.gen.js +93 -0
  174. package/dist/component/garmin/types/trainingApiWorkouts/core/queryKeySerializer.gen.js.map +1 -0
  175. package/dist/component/garmin/types/trainingApiWorkouts/core/serverSentEvents.gen.d.ts +72 -0
  176. package/dist/component/garmin/types/trainingApiWorkouts/core/serverSentEvents.gen.d.ts.map +1 -0
  177. package/dist/component/garmin/types/trainingApiWorkouts/core/serverSentEvents.gen.js +134 -0
  178. package/dist/component/garmin/types/trainingApiWorkouts/core/serverSentEvents.gen.js.map +1 -0
  179. package/dist/component/garmin/types/trainingApiWorkouts/core/types.gen.d.ts +79 -0
  180. package/dist/component/garmin/types/trainingApiWorkouts/core/types.gen.d.ts.map +1 -0
  181. package/dist/component/garmin/types/trainingApiWorkouts/core/types.gen.js +3 -0
  182. package/dist/component/garmin/types/trainingApiWorkouts/core/types.gen.js.map +1 -0
  183. package/dist/component/garmin/types/trainingApiWorkouts/core/utils.gen.d.ts +20 -0
  184. package/dist/component/garmin/types/trainingApiWorkouts/core/utils.gen.d.ts.map +1 -0
  185. package/dist/component/garmin/types/trainingApiWorkouts/core/utils.gen.js +88 -0
  186. package/dist/component/garmin/types/trainingApiWorkouts/core/utils.gen.js.map +1 -0
  187. package/dist/component/garmin/types/trainingApiWorkouts/index.d.ts +3 -0
  188. package/dist/component/garmin/types/trainingApiWorkouts/index.d.ts.map +1 -0
  189. package/dist/component/garmin/types/trainingApiWorkouts/index.js +3 -0
  190. package/dist/component/garmin/types/trainingApiWorkouts/index.js.map +1 -0
  191. package/dist/component/garmin/types/trainingApiWorkouts/sdk.gen.d.ts +68 -0
  192. package/dist/component/garmin/types/trainingApiWorkouts/sdk.gen.d.ts.map +1 -0
  193. package/dist/component/garmin/types/trainingApiWorkouts/sdk.gen.js +97 -0
  194. package/dist/component/garmin/types/trainingApiWorkouts/sdk.gen.js.map +1 -0
  195. package/dist/component/garmin/types/trainingApiWorkouts/types.gen.d.ts +330 -0
  196. package/dist/component/garmin/types/trainingApiWorkouts/types.gen.d.ts.map +1 -0
  197. package/dist/component/garmin/types/trainingApiWorkouts/types.gen.js +3 -0
  198. package/dist/component/garmin/types/trainingApiWorkouts/types.gen.js.map +1 -0
  199. package/dist/component/garmin/types/trainingApiWorkouts/zod.gen.d.ts +2463 -0
  200. package/dist/component/garmin/types/trainingApiWorkouts/zod.gen.d.ts.map +1 -0
  201. package/dist/component/garmin/types/trainingApiWorkouts/zod.gen.js +388 -0
  202. package/dist/component/garmin/types/trainingApiWorkouts/zod.gen.js.map +1 -0
  203. package/dist/component/garmin/types/wellnessApi/client/client.gen.d.ts +3 -0
  204. package/dist/component/garmin/types/wellnessApi/client/client.gen.d.ts.map +1 -0
  205. package/dist/component/garmin/types/wellnessApi/client/client.gen.js +236 -0
  206. package/dist/component/garmin/types/wellnessApi/client/client.gen.js.map +1 -0
  207. package/dist/component/garmin/types/wellnessApi/client/index.d.ts +9 -0
  208. package/dist/component/garmin/types/wellnessApi/client/index.d.ts.map +1 -0
  209. package/dist/component/garmin/types/wellnessApi/client/index.js +7 -0
  210. package/dist/component/garmin/types/wellnessApi/client/index.js.map +1 -0
  211. package/dist/component/garmin/types/wellnessApi/client/types.gen.d.ts +118 -0
  212. package/dist/component/garmin/types/wellnessApi/client/types.gen.d.ts.map +1 -0
  213. package/dist/component/garmin/types/wellnessApi/client/types.gen.js +3 -0
  214. package/dist/component/garmin/types/wellnessApi/client/types.gen.js.map +1 -0
  215. package/dist/component/garmin/types/wellnessApi/client/utils.gen.d.ts +34 -0
  216. package/dist/component/garmin/types/wellnessApi/client/utils.gen.d.ts.map +1 -0
  217. package/dist/component/garmin/types/wellnessApi/client/utils.gen.js +229 -0
  218. package/dist/component/garmin/types/wellnessApi/client/utils.gen.js.map +1 -0
  219. package/dist/component/garmin/types/wellnessApi/client.gen.d.ts +13 -0
  220. package/dist/component/garmin/types/wellnessApi/client.gen.d.ts.map +1 -0
  221. package/dist/component/garmin/types/wellnessApi/client.gen.js +4 -0
  222. package/dist/component/garmin/types/wellnessApi/client.gen.js.map +1 -0
  223. package/dist/component/garmin/types/wellnessApi/core/auth.gen.d.ts +19 -0
  224. package/dist/component/garmin/types/wellnessApi/core/auth.gen.d.ts.map +1 -0
  225. package/dist/component/garmin/types/wellnessApi/core/auth.gen.js +15 -0
  226. package/dist/component/garmin/types/wellnessApi/core/auth.gen.js.map +1 -0
  227. package/dist/component/garmin/types/wellnessApi/core/bodySerializer.gen.d.ts +26 -0
  228. package/dist/component/garmin/types/wellnessApi/core/bodySerializer.gen.d.ts.map +1 -0
  229. package/dist/component/garmin/types/wellnessApi/core/bodySerializer.gen.js +58 -0
  230. package/dist/component/garmin/types/wellnessApi/core/bodySerializer.gen.js.map +1 -0
  231. package/dist/component/garmin/types/wellnessApi/core/params.gen.d.ts +44 -0
  232. package/dist/component/garmin/types/wellnessApi/core/params.gen.d.ts.map +1 -0
  233. package/dist/component/garmin/types/wellnessApi/core/params.gen.js +101 -0
  234. package/dist/component/garmin/types/wellnessApi/core/params.gen.js.map +1 -0
  235. package/dist/component/garmin/types/wellnessApi/core/pathSerializer.gen.d.ts +34 -0
  236. package/dist/component/garmin/types/wellnessApi/core/pathSerializer.gen.d.ts.map +1 -0
  237. package/dist/component/garmin/types/wellnessApi/core/pathSerializer.gen.js +107 -0
  238. package/dist/component/garmin/types/wellnessApi/core/pathSerializer.gen.js.map +1 -0
  239. package/dist/component/garmin/types/wellnessApi/core/queryKeySerializer.gen.d.ts +19 -0
  240. package/dist/component/garmin/types/wellnessApi/core/queryKeySerializer.gen.d.ts.map +1 -0
  241. package/dist/component/garmin/types/wellnessApi/core/queryKeySerializer.gen.js +93 -0
  242. package/dist/component/garmin/types/wellnessApi/core/queryKeySerializer.gen.js.map +1 -0
  243. package/dist/component/garmin/types/wellnessApi/core/serverSentEvents.gen.d.ts +72 -0
  244. package/dist/component/garmin/types/wellnessApi/core/serverSentEvents.gen.d.ts.map +1 -0
  245. package/dist/component/garmin/types/wellnessApi/core/serverSentEvents.gen.js +134 -0
  246. package/dist/component/garmin/types/wellnessApi/core/serverSentEvents.gen.js.map +1 -0
  247. package/dist/component/garmin/types/wellnessApi/core/types.gen.d.ts +79 -0
  248. package/dist/component/garmin/types/wellnessApi/core/types.gen.d.ts.map +1 -0
  249. package/dist/component/garmin/types/wellnessApi/core/types.gen.js +3 -0
  250. package/dist/component/garmin/types/wellnessApi/core/types.gen.js.map +1 -0
  251. package/dist/component/garmin/types/wellnessApi/core/utils.gen.d.ts +20 -0
  252. package/dist/component/garmin/types/wellnessApi/core/utils.gen.d.ts.map +1 -0
  253. package/dist/component/garmin/types/wellnessApi/core/utils.gen.js +88 -0
  254. package/dist/component/garmin/types/wellnessApi/core/utils.gen.js.map +1 -0
  255. package/dist/component/garmin/types/wellnessApi/index.d.ts +3 -0
  256. package/dist/component/garmin/types/wellnessApi/index.d.ts.map +1 -0
  257. package/dist/component/garmin/types/wellnessApi/index.js +3 -0
  258. package/dist/component/garmin/types/wellnessApi/index.js.map +1 -0
  259. package/dist/component/garmin/types/wellnessApi/sdk.gen.d.ts +166 -0
  260. package/dist/component/garmin/types/wellnessApi/sdk.gen.d.ts.map +1 -0
  261. package/dist/component/garmin/types/wellnessApi/sdk.gen.js +153 -0
  262. package/dist/component/garmin/types/wellnessApi/sdk.gen.js.map +1 -0
  263. package/dist/component/garmin/types/wellnessApi/types.gen.d.ts +2733 -0
  264. package/dist/component/garmin/types/wellnessApi/types.gen.d.ts.map +1 -0
  265. package/dist/component/garmin/types/wellnessApi/types.gen.js +3 -0
  266. package/dist/component/garmin/types/wellnessApi/types.gen.js.map +1 -0
  267. package/dist/component/garmin/types/wellnessApi/zod.gen.d.ts.map +1 -0
  268. package/dist/component/garmin/types/wellnessApi/zod.gen.js.map +1 -0
  269. package/dist/component/garmin/utils.d.ts +16 -0
  270. package/dist/component/garmin/utils.d.ts.map +1 -0
  271. package/dist/component/garmin/utils.js +17 -0
  272. package/dist/component/garmin/utils.js.map +1 -0
  273. package/dist/component/garmin/webhooks.d.ts +8 -21
  274. package/dist/component/garmin/webhooks.d.ts.map +1 -1
  275. package/dist/component/garmin/webhooks.js +71 -306
  276. package/dist/component/garmin/webhooks.js.map +1 -1
  277. package/dist/component/validators/plannedWorkout.d.ts +6 -0
  278. package/dist/component/validators/plannedWorkout.d.ts.map +1 -1
  279. package/dist/component/validators/plannedWorkout.js.map +1 -1
  280. package/package.json +1 -1
  281. package/src/client/index.ts +151 -24
  282. package/src/component/_generated/api.ts +2 -0
  283. package/src/component/garmin/public.ts +4 -0
  284. package/dist/component/garmin/types/garmin.d.ts +0 -21
  285. package/dist/component/garmin/types/garmin.d.ts.map +0 -1
  286. package/dist/component/garmin/types/garmin.js +0 -6
  287. package/dist/component/garmin/types/garmin.js.map +0 -1
  288. package/dist/component/garmin/types/zod/zod.gen.d.ts.map +0 -1
  289. package/dist/component/garmin/types/zod/zod.gen.js.map +0 -1
  290. package/dist/garmin/auth.d.ts.map +0 -1
  291. package/dist/garmin/auth.js.map +0 -1
  292. package/dist/garmin/bloodPressure.d.ts +0 -28
  293. package/dist/garmin/bloodPressure.d.ts.map +0 -1
  294. package/dist/garmin/bloodPressure.js +0 -34
  295. package/dist/garmin/bloodPressure.js.map +0 -1
  296. package/dist/garmin/body.d.ts +0 -26
  297. package/dist/garmin/body.d.ts.map +0 -1
  298. package/dist/garmin/body.js +0 -44
  299. package/dist/garmin/body.js.map +0 -1
  300. package/dist/garmin/client.d.ts +0 -246
  301. package/dist/garmin/client.d.ts.map +0 -1
  302. package/dist/garmin/client.js +0 -566
  303. package/dist/garmin/client.js.map +0 -1
  304. package/dist/garmin/daily.d.ts +0 -74
  305. package/dist/garmin/daily.d.ts.map +0 -1
  306. package/dist/garmin/daily.js +0 -143
  307. package/dist/garmin/daily.js.map +0 -1
  308. package/dist/garmin/hrv.d.ts +0 -30
  309. package/dist/garmin/hrv.d.ts.map +0 -1
  310. package/dist/garmin/hrv.js +0 -45
  311. package/dist/garmin/hrv.js.map +0 -1
  312. package/dist/garmin/index.d.ts +0 -32
  313. package/dist/garmin/index.d.ts.map +0 -1
  314. package/dist/garmin/index.js +0 -27
  315. package/dist/garmin/index.js.map +0 -1
  316. package/dist/garmin/maps/activity-type.d.ts.map +0 -1
  317. package/dist/garmin/maps/activity-type.js.map +0 -1
  318. package/dist/garmin/maps/sleep-level.d.ts.map +0 -1
  319. package/dist/garmin/maps/sleep-level.js.map +0 -1
  320. package/dist/garmin/menstruation.d.ts +0 -25
  321. package/dist/garmin/menstruation.d.ts.map +0 -1
  322. package/dist/garmin/menstruation.js +0 -38
  323. package/dist/garmin/menstruation.js.map +0 -1
  324. package/dist/garmin/plannedWorkout.d.ts.map +0 -1
  325. package/dist/garmin/plannedWorkout.js.map +0 -1
  326. package/dist/garmin/pulseOx.d.ts +0 -24
  327. package/dist/garmin/pulseOx.d.ts.map +0 -1
  328. package/dist/garmin/pulseOx.js +0 -33
  329. package/dist/garmin/pulseOx.js.map +0 -1
  330. package/dist/garmin/respiration.d.ts +0 -29
  331. package/dist/garmin/respiration.d.ts.map +0 -1
  332. package/dist/garmin/respiration.js +0 -42
  333. package/dist/garmin/respiration.js.map +0 -1
  334. package/dist/garmin/skinTemp.d.ts +0 -27
  335. package/dist/garmin/skinTemp.d.ts.map +0 -1
  336. package/dist/garmin/skinTemp.js +0 -35
  337. package/dist/garmin/skinTemp.js.map +0 -1
  338. package/dist/garmin/sleep.d.ts +0 -62
  339. package/dist/garmin/sleep.d.ts.map +0 -1
  340. package/dist/garmin/sleep.js +0 -131
  341. package/dist/garmin/sleep.js.map +0 -1
  342. package/dist/garmin/stressDetails.d.ts +0 -30
  343. package/dist/garmin/stressDetails.d.ts.map +0 -1
  344. package/dist/garmin/stressDetails.js +0 -49
  345. package/dist/garmin/stressDetails.js.map +0 -1
  346. package/dist/garmin/sync.d.ts +0 -53
  347. package/dist/garmin/sync.d.ts.map +0 -1
  348. package/dist/garmin/sync.js +0 -458
  349. package/dist/garmin/sync.js.map +0 -1
  350. package/dist/garmin/types.d.ts +0 -175
  351. package/dist/garmin/types.d.ts.map +0 -1
  352. package/dist/garmin/types.js +0 -10
  353. package/dist/garmin/types.js.map +0 -1
  354. package/dist/garmin/userMetrics.d.ts +0 -23
  355. package/dist/garmin/userMetrics.d.ts.map +0 -1
  356. package/dist/garmin/userMetrics.js +0 -41
  357. package/dist/garmin/userMetrics.js.map +0 -1
  358. /package/dist/{garmin → component/garmin}/auth.js +0 -0
  359. /package/dist/component/garmin/types/{zod → wellnessApi}/zod.gen.d.ts +0 -0
  360. /package/dist/component/garmin/types/{zod → wellnessApi}/zod.gen.js +0 -0
@@ -3,7 +3,7 @@
3
3
  // Called only from garmin/public.ts and garmin/webhooks.ts.
4
4
  import { v } from "convex/values";
5
5
  import { internalAction, internalMutation, internalQuery, } from "../_generated/server";
6
- import { api, internal } from "../_generated/api";
6
+ import { internal } from "../_generated/api";
7
7
  import { garminActivityPingPayloadSchema, garminActivityPushPayloadSchema, } from "./schemas/activity.js";
8
8
  import { garminActivityDetailsPingPayloadSchema, garminActivityDetailsPushPayloadSchema, } from "./schemas/activityDetails.js";
9
9
  import { garminManuallyUpdatedActivitiesPingPayloadSchema, garminManuallyUpdatedActivitiesPushPayloadSchema, } from "./schemas/manuallyUpdatedActivities.js";
@@ -171,7 +171,7 @@ export const processActivityPushPayload = internalAction({
171
171
  args: { payload: v.any() },
172
172
  handler: async (ctx, args) => {
173
173
  const { activities } = garminActivityPushPayloadSchema.parse(args.payload);
174
- let processed = 0;
174
+ const items = [];
175
175
  const errors = [];
176
176
  // Group items by Garmin userId
177
177
  const byUser = new Map();
@@ -209,12 +209,7 @@ export const processActivityPushPayload = internalAction({
209
209
  for (const item of userItems) {
210
210
  try {
211
211
  const data = transformActivity(item);
212
- await ctx.runMutation(api.public.ingestActivity, {
213
- connectionId: connection._id,
214
- userId: connection.userId,
215
- ...data,
216
- });
217
- processed++;
212
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
218
213
  }
219
214
  catch (err) {
220
215
  errors.push({
@@ -224,12 +219,8 @@ export const processActivityPushPayload = internalAction({
224
219
  });
225
220
  }
226
221
  }
227
- await ctx.runMutation(api.public.updateConnection, {
228
- connectionId: connection._id,
229
- lastDataUpdate: new Date().toISOString(),
230
- });
231
222
  }
232
- return { processed, errors };
223
+ return { items, errors };
233
224
  },
234
225
  });
235
226
  // ─── Activity Ping Processing ──────────────────────────────────────────────
@@ -255,7 +246,7 @@ export const processActivityDetailsPushPayload = internalAction({
255
246
  args: { payload: v.any() },
256
247
  handler: async (ctx, args) => {
257
248
  const { activityDetails } = garminActivityDetailsPushPayloadSchema.parse(args.payload);
258
- let processed = 0;
249
+ const items = [];
259
250
  const errors = [];
260
251
  // Group items by Garmin userId
261
252
  const byUser = new Map();
@@ -293,12 +284,7 @@ export const processActivityDetailsPushPayload = internalAction({
293
284
  for (const item of userItems) {
294
285
  try {
295
286
  const data = transformActivityDetails(item);
296
- await ctx.runMutation(api.public.ingestActivity, {
297
- connectionId: connection._id,
298
- userId: connection.userId,
299
- ...data,
300
- });
301
- processed++;
287
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
302
288
  }
303
289
  catch (err) {
304
290
  errors.push({
@@ -308,12 +294,8 @@ export const processActivityDetailsPushPayload = internalAction({
308
294
  });
309
295
  }
310
296
  }
311
- await ctx.runMutation(api.public.updateConnection, {
312
- connectionId: connection._id,
313
- lastDataUpdate: new Date().toISOString(),
314
- });
315
297
  }
316
- return { processed, errors };
298
+ return { items, errors };
317
299
  },
318
300
  });
319
301
  // ─── Activity Details Ping Processing ─────────────────────────────────────
@@ -339,7 +321,7 @@ export const processManuallyUpdatedActivitiesPushPayload = internalAction({
339
321
  args: { payload: v.any() },
340
322
  handler: async (ctx, args) => {
341
323
  const { manuallyUpdatedActivities } = garminManuallyUpdatedActivitiesPushPayloadSchema.parse(args.payload);
342
- let processed = 0;
324
+ const items = [];
343
325
  const errors = [];
344
326
  // Group items by Garmin userId
345
327
  const byUser = new Map();
@@ -377,12 +359,7 @@ export const processManuallyUpdatedActivitiesPushPayload = internalAction({
377
359
  for (const item of userItems) {
378
360
  try {
379
361
  const data = transformManuallyUpdatedActivity(item);
380
- await ctx.runMutation(api.public.ingestActivity, {
381
- connectionId: connection._id,
382
- userId: connection.userId,
383
- ...data,
384
- });
385
- processed++;
362
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
386
363
  }
387
364
  catch (err) {
388
365
  errors.push({
@@ -392,12 +369,8 @@ export const processManuallyUpdatedActivitiesPushPayload = internalAction({
392
369
  });
393
370
  }
394
371
  }
395
- await ctx.runMutation(api.public.updateConnection, {
396
- connectionId: connection._id,
397
- lastDataUpdate: new Date().toISOString(),
398
- });
399
372
  }
400
- return { processed, errors };
373
+ return { items, errors };
401
374
  },
402
375
  });
403
376
  // ─── Manually Updated Activities Ping Processing ────────────────────────────
@@ -423,7 +396,7 @@ export const processMoveIQPushPayload = internalAction({
423
396
  args: { payload: v.any() },
424
397
  handler: async (ctx, args) => {
425
398
  const { moveIQActivities } = garminMoveIQPushPayloadSchema.parse(args.payload);
426
- let processed = 0;
399
+ const items = [];
427
400
  const errors = [];
428
401
  // Group items by Garmin userId
429
402
  const byUser = new Map();
@@ -461,12 +434,7 @@ export const processMoveIQPushPayload = internalAction({
461
434
  for (const item of userItems) {
462
435
  try {
463
436
  const data = transformMoveIQ(item);
464
- await ctx.runMutation(api.public.ingestActivity, {
465
- connectionId: connection._id,
466
- userId: connection.userId,
467
- ...data,
468
- });
469
- processed++;
437
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
470
438
  }
471
439
  catch (err) {
472
440
  errors.push({
@@ -476,12 +444,8 @@ export const processMoveIQPushPayload = internalAction({
476
444
  });
477
445
  }
478
446
  }
479
- await ctx.runMutation(api.public.updateConnection, {
480
- connectionId: connection._id,
481
- lastDataUpdate: new Date().toISOString(),
482
- });
483
447
  }
484
- return { processed, errors };
448
+ return { items, errors };
485
449
  },
486
450
  });
487
451
  // ─── Move IQ Ping Processing ─────────────────────────────────────────────
@@ -507,7 +471,7 @@ export const processBloodPressurePushPayload = internalAction({
507
471
  args: { payload: v.any() },
508
472
  handler: async (ctx, args) => {
509
473
  const { bloodPressures } = garminBloodPressurePushPayloadSchema.parse(args.payload);
510
- let processed = 0;
474
+ const items = [];
511
475
  const errors = [];
512
476
  // Group items by Garmin userId
513
477
  const byUser = new Map();
@@ -547,12 +511,7 @@ export const processBloodPressurePushPayload = internalAction({
547
511
  const data = transformBloodPressure(item);
548
512
  if (data == null)
549
513
  continue;
550
- await ctx.runMutation(api.public.ingestBody, {
551
- connectionId: connection._id,
552
- userId: connection.userId,
553
- ...data,
554
- });
555
- processed++;
514
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
556
515
  }
557
516
  catch (err) {
558
517
  errors.push({
@@ -562,12 +521,8 @@ export const processBloodPressurePushPayload = internalAction({
562
521
  });
563
522
  }
564
523
  }
565
- await ctx.runMutation(api.public.updateConnection, {
566
- connectionId: connection._id,
567
- lastDataUpdate: new Date().toISOString(),
568
- });
569
524
  }
570
- return { processed, errors };
525
+ return { items, errors };
571
526
  },
572
527
  });
573
528
  // ─── Blood Pressure Ping Processing ─────────────────────────────────────────
@@ -593,7 +548,7 @@ export const processBodyCompositionsPushPayload = internalAction({
593
548
  args: { payload: v.any() },
594
549
  handler: async (ctx, args) => {
595
550
  const { bodyComps } = garminBodyCompositionsPushPayloadSchema.parse(args.payload);
596
- let processed = 0;
551
+ const items = [];
597
552
  const errors = [];
598
553
  // Group items by Garmin userId
599
554
  const byUser = new Map();
@@ -633,12 +588,7 @@ export const processBodyCompositionsPushPayload = internalAction({
633
588
  const data = transformBodyComposition(item);
634
589
  if (data == null)
635
590
  continue;
636
- await ctx.runMutation(api.public.ingestBody, {
637
- connectionId: connection._id,
638
- userId: connection.userId,
639
- ...data,
640
- });
641
- processed++;
591
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
642
592
  }
643
593
  catch (err) {
644
594
  errors.push({
@@ -648,12 +598,8 @@ export const processBodyCompositionsPushPayload = internalAction({
648
598
  });
649
599
  }
650
600
  }
651
- await ctx.runMutation(api.public.updateConnection, {
652
- connectionId: connection._id,
653
- lastDataUpdate: new Date().toISOString(),
654
- });
655
601
  }
656
- return { processed, errors };
602
+ return { items, errors };
657
603
  },
658
604
  });
659
605
  // ─── Body Compositions Ping Processing ─────────────────────────────────────
@@ -679,7 +625,7 @@ export const processDailiesPushPayload = internalAction({
679
625
  args: { payload: v.any() },
680
626
  handler: async (ctx, args) => {
681
627
  const { dailies } = garminDailiesPushPayloadSchema.parse(args.payload);
682
- let processed = 0;
628
+ const items = [];
683
629
  const errors = [];
684
630
  // Group items by Garmin userId
685
631
  const byUser = new Map();
@@ -719,12 +665,7 @@ export const processDailiesPushPayload = internalAction({
719
665
  const data = transformDailies(item);
720
666
  if (data == null)
721
667
  continue;
722
- await ctx.runMutation(api.public.ingestDaily, {
723
- connectionId: connection._id,
724
- userId: connection.userId,
725
- ...data,
726
- });
727
- processed++;
668
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
728
669
  }
729
670
  catch (err) {
730
671
  errors.push({
@@ -734,12 +675,8 @@ export const processDailiesPushPayload = internalAction({
734
675
  });
735
676
  }
736
677
  }
737
- await ctx.runMutation(api.public.updateConnection, {
738
- connectionId: connection._id,
739
- lastDataUpdate: new Date().toISOString(),
740
- });
741
678
  }
742
- return { processed, errors };
679
+ return { items, errors };
743
680
  },
744
681
  });
745
682
  // ─── Dailies Ping Processing ──────────────────────────────────────────────
@@ -765,7 +702,7 @@ export const processHealthSnapshotPushPayload = internalAction({
765
702
  args: { payload: v.any() },
766
703
  handler: async (ctx, args) => {
767
704
  const { healthSnapshot } = garminHealthSnapshotPushPayloadSchema.parse(args.payload);
768
- let processed = 0;
705
+ const items = [];
769
706
  const errors = [];
770
707
  // Group items by Garmin userId
771
708
  const byUser = new Map();
@@ -805,12 +742,7 @@ export const processHealthSnapshotPushPayload = internalAction({
805
742
  const data = transformHealthSnapshot(item);
806
743
  if (data == null)
807
744
  continue;
808
- await ctx.runMutation(api.public.ingestDaily, {
809
- connectionId: connection._id,
810
- userId: connection.userId,
811
- ...data,
812
- });
813
- processed++;
745
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
814
746
  }
815
747
  catch (err) {
816
748
  errors.push({
@@ -820,12 +752,8 @@ export const processHealthSnapshotPushPayload = internalAction({
820
752
  });
821
753
  }
822
754
  }
823
- await ctx.runMutation(api.public.updateConnection, {
824
- connectionId: connection._id,
825
- lastDataUpdate: new Date().toISOString(),
826
- });
827
755
  }
828
- return { processed, errors };
756
+ return { items, errors };
829
757
  },
830
758
  });
831
759
  // ─── Health Snapshot Ping Processing ────────────────────────────────────────
@@ -851,7 +779,7 @@ export const processHRVSummaryPushPayload = internalAction({
851
779
  args: { payload: v.any() },
852
780
  handler: async (ctx, args) => {
853
781
  const { hrv } = garminHRVSummaryPushPayloadSchema.parse(args.payload);
854
- let processed = 0;
782
+ const items = [];
855
783
  const errors = [];
856
784
  // Group items by Garmin userId
857
785
  const byUser = new Map();
@@ -891,12 +819,7 @@ export const processHRVSummaryPushPayload = internalAction({
891
819
  const data = transformHRVSummary(item);
892
820
  if (data == null)
893
821
  continue;
894
- await ctx.runMutation(api.public.ingestDaily, {
895
- connectionId: connection._id,
896
- userId: connection.userId,
897
- ...data,
898
- });
899
- processed++;
822
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
900
823
  }
901
824
  catch (err) {
902
825
  errors.push({
@@ -906,12 +829,8 @@ export const processHRVSummaryPushPayload = internalAction({
906
829
  });
907
830
  }
908
831
  }
909
- await ctx.runMutation(api.public.updateConnection, {
910
- connectionId: connection._id,
911
- lastDataUpdate: new Date().toISOString(),
912
- });
913
832
  }
914
- return { processed, errors };
833
+ return { items, errors };
915
834
  },
916
835
  });
917
836
  // ─── HRV Summary Ping Processing ────────────────────────────────────────────
@@ -937,7 +856,7 @@ export const processEpochPushPayload = internalAction({
937
856
  args: { payload: v.any() },
938
857
  handler: async (ctx, args) => {
939
858
  const { epochs } = garminEpochPushPayloadSchema.parse(args.payload);
940
- let processed = 0;
859
+ const items = [];
941
860
  const errors = [];
942
861
  // Group items by Garmin userId
943
862
  const byUser = new Map();
@@ -977,12 +896,7 @@ export const processEpochPushPayload = internalAction({
977
896
  const data = transformEpoch(item);
978
897
  if (data == null)
979
898
  continue;
980
- await ctx.runMutation(api.public.ingestDaily, {
981
- connectionId: connection._id,
982
- userId: connection.userId,
983
- ...data,
984
- });
985
- processed++;
899
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
986
900
  }
987
901
  catch (err) {
988
902
  errors.push({
@@ -992,12 +906,8 @@ export const processEpochPushPayload = internalAction({
992
906
  });
993
907
  }
994
908
  }
995
- await ctx.runMutation(api.public.updateConnection, {
996
- connectionId: connection._id,
997
- lastDataUpdate: new Date().toISOString(),
998
- });
999
909
  }
1000
- return { processed, errors };
910
+ return { items, errors };
1001
911
  },
1002
912
  });
1003
913
  // ─── Epoch Ping Processing ──────────────────────────────────────────────────
@@ -1023,7 +933,7 @@ export const processPulseOxPushPayload = internalAction({
1023
933
  args: { payload: v.any() },
1024
934
  handler: async (ctx, args) => {
1025
935
  const { pulseox } = garminPulseOxPushPayloadSchema.parse(args.payload);
1026
- let processed = 0;
936
+ const items = [];
1027
937
  const errors = [];
1028
938
  // Group items by Garmin userId
1029
939
  const byUser = new Map();
@@ -1063,12 +973,7 @@ export const processPulseOxPushPayload = internalAction({
1063
973
  const data = transformPulseOx(item);
1064
974
  if (data == null)
1065
975
  continue;
1066
- await ctx.runMutation(api.public.ingestDaily, {
1067
- connectionId: connection._id,
1068
- userId: connection.userId,
1069
- ...data,
1070
- });
1071
- processed++;
976
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1072
977
  }
1073
978
  catch (err) {
1074
979
  errors.push({
@@ -1078,12 +983,8 @@ export const processPulseOxPushPayload = internalAction({
1078
983
  });
1079
984
  }
1080
985
  }
1081
- await ctx.runMutation(api.public.updateConnection, {
1082
- connectionId: connection._id,
1083
- lastDataUpdate: new Date().toISOString(),
1084
- });
1085
986
  }
1086
- return { processed, errors };
987
+ return { items, errors };
1087
988
  },
1088
989
  });
1089
990
  // ─── Pulse Ox Ping Processing ──────────────────────────────────────────────
@@ -1109,7 +1010,7 @@ export const processRespirationPushPayload = internalAction({
1109
1010
  args: { payload: v.any() },
1110
1011
  handler: async (ctx, args) => {
1111
1012
  const { allDayRespiration } = garminRespirationPushPayloadSchema.parse(args.payload);
1112
- let processed = 0;
1013
+ const items = [];
1113
1014
  const errors = [];
1114
1015
  // Group items by Garmin userId
1115
1016
  const byUser = new Map();
@@ -1149,12 +1050,7 @@ export const processRespirationPushPayload = internalAction({
1149
1050
  const data = transformRespiration(item);
1150
1051
  if (data == null)
1151
1052
  continue;
1152
- await ctx.runMutation(api.public.ingestDaily, {
1153
- connectionId: connection._id,
1154
- userId: connection.userId,
1155
- ...data,
1156
- });
1157
- processed++;
1053
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1158
1054
  }
1159
1055
  catch (err) {
1160
1056
  errors.push({
@@ -1164,12 +1060,8 @@ export const processRespirationPushPayload = internalAction({
1164
1060
  });
1165
1061
  }
1166
1062
  }
1167
- await ctx.runMutation(api.public.updateConnection, {
1168
- connectionId: connection._id,
1169
- lastDataUpdate: new Date().toISOString(),
1170
- });
1171
1063
  }
1172
- return { processed, errors };
1064
+ return { items, errors };
1173
1065
  },
1174
1066
  });
1175
1067
  // ─── Respiration Ping Processing ──────────────────────────────────────────
@@ -1195,7 +1087,7 @@ export const processStressPushPayload = internalAction({
1195
1087
  args: { payload: v.any() },
1196
1088
  handler: async (ctx, args) => {
1197
1089
  const { stressDetails } = garminStressPushPayloadSchema.parse(args.payload);
1198
- let processed = 0;
1090
+ const items = [];
1199
1091
  const errors = [];
1200
1092
  // Group items by Garmin userId
1201
1093
  const byUser = new Map();
@@ -1235,12 +1127,7 @@ export const processStressPushPayload = internalAction({
1235
1127
  const data = transformStress(item);
1236
1128
  if (data == null)
1237
1129
  continue;
1238
- await ctx.runMutation(api.public.ingestDaily, {
1239
- connectionId: connection._id,
1240
- userId: connection.userId,
1241
- ...data,
1242
- });
1243
- processed++;
1130
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1244
1131
  }
1245
1132
  catch (err) {
1246
1133
  errors.push({
@@ -1250,12 +1137,8 @@ export const processStressPushPayload = internalAction({
1250
1137
  });
1251
1138
  }
1252
1139
  }
1253
- await ctx.runMutation(api.public.updateConnection, {
1254
- connectionId: connection._id,
1255
- lastDataUpdate: new Date().toISOString(),
1256
- });
1257
1140
  }
1258
- return { processed, errors };
1141
+ return { items, errors };
1259
1142
  },
1260
1143
  });
1261
1144
  // ─── Stress Details Ping Processing ─────────────────────────────────────────
@@ -1281,7 +1164,7 @@ export const processSkinTemperaturePushPayload = internalAction({
1281
1164
  args: { payload: v.any() },
1282
1165
  handler: async (ctx, args) => {
1283
1166
  const { skinTemp } = garminSkinTemperaturePushPayloadSchema.parse(args.payload);
1284
- let processed = 0;
1167
+ const items = [];
1285
1168
  const errors = [];
1286
1169
  // Group items by Garmin userId
1287
1170
  const byUser = new Map();
@@ -1321,12 +1204,7 @@ export const processSkinTemperaturePushPayload = internalAction({
1321
1204
  const data = transformSkinTemperature(item);
1322
1205
  if (data == null)
1323
1206
  continue;
1324
- await ctx.runMutation(api.public.ingestBody, {
1325
- connectionId: connection._id,
1326
- userId: connection.userId,
1327
- ...data,
1328
- });
1329
- processed++;
1207
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1330
1208
  }
1331
1209
  catch (err) {
1332
1210
  errors.push({
@@ -1336,12 +1214,8 @@ export const processSkinTemperaturePushPayload = internalAction({
1336
1214
  });
1337
1215
  }
1338
1216
  }
1339
- await ctx.runMutation(api.public.updateConnection, {
1340
- connectionId: connection._id,
1341
- lastDataUpdate: new Date().toISOString(),
1342
- });
1343
1217
  }
1344
- return { processed, errors };
1218
+ return { items, errors };
1345
1219
  },
1346
1220
  });
1347
1221
  // ─── Skin Temperature Ping Processing ───────────────────────────────────────
@@ -1367,7 +1241,7 @@ export const processSleepsPushPayload = internalAction({
1367
1241
  args: { payload: v.any() },
1368
1242
  handler: async (ctx, args) => {
1369
1243
  const { sleeps } = garminSleepsPushPayloadSchema.parse(args.payload);
1370
- let processed = 0;
1244
+ const items = [];
1371
1245
  const errors = [];
1372
1246
  // Group items by Garmin userId
1373
1247
  const byUser = new Map();
@@ -1405,12 +1279,7 @@ export const processSleepsPushPayload = internalAction({
1405
1279
  for (const item of userItems) {
1406
1280
  try {
1407
1281
  const data = transformSleeps(item);
1408
- await ctx.runMutation(api.public.ingestSleep, {
1409
- connectionId: connection._id,
1410
- userId: connection.userId,
1411
- ...data,
1412
- });
1413
- processed++;
1282
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1414
1283
  }
1415
1284
  catch (err) {
1416
1285
  errors.push({
@@ -1420,12 +1289,8 @@ export const processSleepsPushPayload = internalAction({
1420
1289
  });
1421
1290
  }
1422
1291
  }
1423
- await ctx.runMutation(api.public.updateConnection, {
1424
- connectionId: connection._id,
1425
- lastDataUpdate: new Date().toISOString(),
1426
- });
1427
1292
  }
1428
- return { processed, errors };
1293
+ return { items, errors };
1429
1294
  },
1430
1295
  });
1431
1296
  // ─── Sleeps Ping Processing ─────────────────────────────────────────────────
@@ -1451,7 +1316,7 @@ export const processUserMetricsPushPayload = internalAction({
1451
1316
  args: { payload: v.any() },
1452
1317
  handler: async (ctx, args) => {
1453
1318
  const { userMetrics } = garminUserMetricsPushPayloadSchema.parse(args.payload);
1454
- let processed = 0;
1319
+ const items = [];
1455
1320
  const errors = [];
1456
1321
  // Group items by Garmin userId
1457
1322
  const byUser = new Map();
@@ -1491,12 +1356,7 @@ export const processUserMetricsPushPayload = internalAction({
1491
1356
  const data = transformUserMetrics(item);
1492
1357
  if (data == null)
1493
1358
  continue;
1494
- await ctx.runMutation(api.public.ingestBody, {
1495
- connectionId: connection._id,
1496
- userId: connection.userId,
1497
- ...data,
1498
- });
1499
- processed++;
1359
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1500
1360
  }
1501
1361
  catch (err) {
1502
1362
  errors.push({
@@ -1506,12 +1366,8 @@ export const processUserMetricsPushPayload = internalAction({
1506
1366
  });
1507
1367
  }
1508
1368
  }
1509
- await ctx.runMutation(api.public.updateConnection, {
1510
- connectionId: connection._id,
1511
- lastDataUpdate: new Date().toISOString(),
1512
- });
1513
1369
  }
1514
- return { processed, errors };
1370
+ return { items, errors };
1515
1371
  },
1516
1372
  });
1517
1373
  // ─── User Metrics Ping Processing ──────────────────────────────────────────
@@ -1537,7 +1393,7 @@ export const processMenstrualCycleTrackingPushPayload = internalAction({
1537
1393
  args: { payload: v.any() },
1538
1394
  handler: async (ctx, args) => {
1539
1395
  const { mct } = garminMenstrualCycleTrackingPushPayloadSchema.parse(args.payload);
1540
- let processed = 0;
1396
+ const items = [];
1541
1397
  const errors = [];
1542
1398
  // Group items by Garmin userId
1543
1399
  const byUser = new Map();
@@ -1575,12 +1431,7 @@ export const processMenstrualCycleTrackingPushPayload = internalAction({
1575
1431
  for (const item of userItems) {
1576
1432
  try {
1577
1433
  const data = transformMenstrualCycleTracking(item);
1578
- await ctx.runMutation(api.public.ingestMenstruation, {
1579
- connectionId: connection._id,
1580
- userId: connection.userId,
1581
- ...data,
1582
- });
1583
- processed++;
1434
+ items.push({ connectionId: connection._id, userId: connection.userId, data });
1584
1435
  }
1585
1436
  catch (err) {
1586
1437
  errors.push({
@@ -1590,12 +1441,8 @@ export const processMenstrualCycleTrackingPushPayload = internalAction({
1590
1441
  });
1591
1442
  }
1592
1443
  }
1593
- await ctx.runMutation(api.public.updateConnection, {
1594
- connectionId: connection._id,
1595
- lastDataUpdate: new Date().toISOString(),
1596
- });
1597
1444
  }
1598
- return { processed, errors };
1445
+ return { items, errors };
1599
1446
  },
1600
1447
  });
1601
1448
  // ─── Menstrual Cycle Tracking Ping Processing ───────────────────────────────