@nativesquare/soma 0.7.3 → 0.9.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 (390) hide show
  1. package/dist/client/index.d.ts +17 -55
  2. package/dist/client/index.d.ts.map +1 -1
  3. package/dist/client/index.js +63 -13
  4. package/dist/client/index.js.map +1 -1
  5. package/dist/component/_generated/api.d.ts +80 -4
  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 +153 -120
  9. package/dist/component/_generated/component.d.ts.map +1 -1
  10. package/dist/component/garmin/private.d.ts +475 -0
  11. package/dist/component/garmin/private.d.ts.map +1 -0
  12. package/dist/component/garmin/private.js +1614 -0
  13. package/dist/component/garmin/private.js.map +1 -0
  14. package/dist/component/{garmin.d.ts → garmin/public.d.ts} +25 -52
  15. package/dist/component/garmin/public.d.ts.map +1 -0
  16. package/dist/component/{garmin.js → garmin/public.js} +301 -215
  17. package/dist/component/garmin/public.js.map +1 -0
  18. package/dist/component/garmin/schemas/activity.d.ts +94 -0
  19. package/dist/component/garmin/schemas/activity.d.ts.map +1 -0
  20. package/dist/component/garmin/schemas/activity.js +27 -0
  21. package/dist/component/garmin/schemas/activity.js.map +1 -0
  22. package/dist/component/garmin/schemas/activityDetails.d.ts +146 -0
  23. package/dist/component/garmin/schemas/activityDetails.d.ts.map +1 -0
  24. package/dist/component/garmin/schemas/activityDetails.js +27 -0
  25. package/dist/component/garmin/schemas/activityDetails.js.map +1 -0
  26. package/dist/component/garmin/schemas/bloodPressure.d.ts +38 -0
  27. package/dist/component/garmin/schemas/bloodPressure.d.ts.map +1 -0
  28. package/dist/component/garmin/schemas/bloodPressure.js +27 -0
  29. package/dist/component/garmin/schemas/bloodPressure.js.map +1 -0
  30. package/dist/component/garmin/schemas/bodyCompositions.d.ts +42 -0
  31. package/dist/component/garmin/schemas/bodyCompositions.d.ts.map +1 -0
  32. package/dist/component/garmin/schemas/bodyCompositions.js +27 -0
  33. package/dist/component/garmin/schemas/bodyCompositions.js.map +1 -0
  34. package/dist/component/garmin/schemas/dailies.d.ts +98 -0
  35. package/dist/component/garmin/schemas/dailies.d.ts.map +1 -0
  36. package/dist/component/garmin/schemas/dailies.js +27 -0
  37. package/dist/component/garmin/schemas/dailies.js.map +1 -0
  38. package/dist/component/garmin/schemas/epochs.d.ts +54 -0
  39. package/dist/component/garmin/schemas/epochs.d.ts.map +1 -0
  40. package/dist/component/garmin/schemas/epochs.js +27 -0
  41. package/dist/component/garmin/schemas/epochs.js.map +1 -0
  42. package/dist/component/garmin/schemas/healthSnapshot.d.ts +48 -0
  43. package/dist/component/garmin/schemas/healthSnapshot.d.ts.map +1 -0
  44. package/dist/component/garmin/schemas/healthSnapshot.js +27 -0
  45. package/dist/component/garmin/schemas/healthSnapshot.js.map +1 -0
  46. package/dist/component/garmin/schemas/hrvSummary.d.ts +40 -0
  47. package/dist/component/garmin/schemas/hrvSummary.d.ts.map +1 -0
  48. package/dist/component/garmin/schemas/hrvSummary.js +27 -0
  49. package/dist/component/garmin/schemas/hrvSummary.js.map +1 -0
  50. package/dist/component/garmin/schemas/manuallyUpdatedActivities.d.ts +94 -0
  51. package/dist/component/garmin/schemas/manuallyUpdatedActivities.d.ts.map +1 -0
  52. package/dist/component/garmin/schemas/manuallyUpdatedActivities.js +27 -0
  53. package/dist/component/garmin/schemas/manuallyUpdatedActivities.js.map +1 -0
  54. package/dist/component/garmin/schemas/menstrualCycleTracking.d.ts +100 -0
  55. package/dist/component/garmin/schemas/menstrualCycleTracking.d.ts.map +1 -0
  56. package/dist/component/garmin/schemas/menstrualCycleTracking.js +28 -0
  57. package/dist/component/garmin/schemas/menstrualCycleTracking.js.map +1 -0
  58. package/dist/component/garmin/schemas/moveIQ.d.ts +40 -0
  59. package/dist/component/garmin/schemas/moveIQ.d.ts.map +1 -0
  60. package/dist/component/garmin/schemas/moveIQ.js +27 -0
  61. package/dist/component/garmin/schemas/moveIQ.js.map +1 -0
  62. package/dist/component/garmin/schemas/pulseOx.d.ts +38 -0
  63. package/dist/component/garmin/schemas/pulseOx.d.ts.map +1 -0
  64. package/dist/component/garmin/schemas/pulseOx.js +28 -0
  65. package/dist/component/garmin/schemas/pulseOx.js.map +1 -0
  66. package/dist/component/garmin/schemas/respiration.d.ts +34 -0
  67. package/dist/component/garmin/schemas/respiration.d.ts.map +1 -0
  68. package/dist/component/garmin/schemas/respiration.js +28 -0
  69. package/dist/component/garmin/schemas/respiration.js.map +1 -0
  70. package/dist/component/garmin/schemas/skinTemperature.d.ts +36 -0
  71. package/dist/component/garmin/schemas/skinTemperature.d.ts.map +1 -0
  72. package/dist/component/garmin/schemas/skinTemperature.js +28 -0
  73. package/dist/component/garmin/schemas/skinTemperature.js.map +1 -0
  74. package/dist/component/garmin/schemas/sleeps.d.ts +88 -0
  75. package/dist/component/garmin/schemas/sleeps.d.ts.map +1 -0
  76. package/dist/component/garmin/schemas/sleeps.js +27 -0
  77. package/dist/component/garmin/schemas/sleeps.js.map +1 -0
  78. package/dist/component/garmin/schemas/stress.d.ts +70 -0
  79. package/dist/component/garmin/schemas/stress.d.ts.map +1 -0
  80. package/dist/component/garmin/schemas/stress.js +28 -0
  81. package/dist/component/garmin/schemas/stress.js.map +1 -0
  82. package/dist/component/garmin/schemas/userMetrics.d.ts +36 -0
  83. package/dist/component/garmin/schemas/userMetrics.d.ts.map +1 -0
  84. package/dist/component/garmin/schemas/userMetrics.js +28 -0
  85. package/dist/component/garmin/schemas/userMetrics.js.map +1 -0
  86. package/dist/component/garmin/transform/activity.d.ts +13 -0
  87. package/dist/component/garmin/transform/activity.d.ts.map +1 -0
  88. package/dist/component/garmin/transform/activity.js +111 -0
  89. package/dist/component/garmin/transform/activity.js.map +1 -0
  90. package/dist/component/garmin/transform/activityDetails.d.ts +13 -0
  91. package/dist/component/garmin/transform/activityDetails.d.ts.map +1 -0
  92. package/dist/component/garmin/transform/activityDetails.js +173 -0
  93. package/dist/component/garmin/transform/activityDetails.js.map +1 -0
  94. package/dist/component/garmin/transform/bloodPressure.d.ts +12 -0
  95. package/dist/component/garmin/transform/bloodPressure.d.ts.map +1 -0
  96. package/dist/component/garmin/transform/bloodPressure.js +33 -0
  97. package/dist/component/garmin/transform/bloodPressure.js.map +1 -0
  98. package/dist/component/garmin/transform/bodyCompositions.d.ts +12 -0
  99. package/dist/component/garmin/transform/bodyCompositions.d.ts.map +1 -0
  100. package/dist/component/garmin/transform/bodyCompositions.js +42 -0
  101. package/dist/component/garmin/transform/bodyCompositions.js.map +1 -0
  102. package/dist/component/garmin/transform/dailies.d.ts +12 -0
  103. package/dist/component/garmin/transform/dailies.d.ts.map +1 -0
  104. package/dist/component/garmin/transform/dailies.js +132 -0
  105. package/dist/component/garmin/transform/dailies.js.map +1 -0
  106. package/dist/component/garmin/transform/epochs.d.ts +13 -0
  107. package/dist/component/garmin/transform/epochs.d.ts.map +1 -0
  108. package/dist/component/garmin/transform/epochs.js +76 -0
  109. package/dist/component/garmin/transform/epochs.js.map +1 -0
  110. package/dist/component/garmin/transform/healthSnapshot.d.ts +12 -0
  111. package/dist/component/garmin/transform/healthSnapshot.d.ts.map +1 -0
  112. package/dist/component/garmin/transform/healthSnapshot.js +111 -0
  113. package/dist/component/garmin/transform/healthSnapshot.js.map +1 -0
  114. package/dist/component/garmin/transform/hrvSummary.d.ts +12 -0
  115. package/dist/component/garmin/transform/hrvSummary.d.ts.map +1 -0
  116. package/dist/component/garmin/transform/hrvSummary.js +45 -0
  117. package/dist/component/garmin/transform/hrvSummary.js.map +1 -0
  118. package/dist/component/garmin/transform/manuallyUpdatedActivities.d.ts +11 -0
  119. package/dist/component/garmin/transform/manuallyUpdatedActivities.d.ts.map +1 -0
  120. package/dist/component/garmin/transform/manuallyUpdatedActivities.js +20 -0
  121. package/dist/component/garmin/transform/manuallyUpdatedActivities.js.map +1 -0
  122. package/dist/component/garmin/transform/menstrualCycleTracking.d.ts +10 -0
  123. package/dist/component/garmin/transform/menstrualCycleTracking.d.ts.map +1 -0
  124. package/dist/component/garmin/transform/menstrualCycleTracking.js +43 -0
  125. package/dist/component/garmin/transform/menstrualCycleTracking.js.map +1 -0
  126. package/dist/component/garmin/transform/moveIQ.d.ts +17 -0
  127. package/dist/component/garmin/transform/moveIQ.d.ts.map +1 -0
  128. package/dist/component/garmin/transform/moveIQ.js +41 -0
  129. package/dist/component/garmin/transform/moveIQ.js.map +1 -0
  130. package/dist/component/garmin/transform/pulseOx.d.ts +12 -0
  131. package/dist/component/garmin/transform/pulseOx.d.ts.map +1 -0
  132. package/dist/component/garmin/transform/pulseOx.js +46 -0
  133. package/dist/component/garmin/transform/pulseOx.js.map +1 -0
  134. package/dist/component/garmin/transform/respiration.d.ts +12 -0
  135. package/dist/component/garmin/transform/respiration.d.ts.map +1 -0
  136. package/dist/component/garmin/transform/respiration.js +54 -0
  137. package/dist/component/garmin/transform/respiration.js.map +1 -0
  138. package/dist/component/garmin/transform/skinTemperature.d.ts +12 -0
  139. package/dist/component/garmin/transform/skinTemperature.d.ts.map +1 -0
  140. package/dist/component/garmin/transform/skinTemperature.js +38 -0
  141. package/dist/component/garmin/transform/skinTemperature.js.map +1 -0
  142. package/dist/component/garmin/transform/sleeps.d.ts +55 -0
  143. package/dist/component/garmin/transform/sleeps.d.ts.map +1 -0
  144. package/dist/component/garmin/transform/sleeps.js +120 -0
  145. package/dist/component/garmin/transform/sleeps.js.map +1 -0
  146. package/dist/component/garmin/transform/stress.d.ts +12 -0
  147. package/dist/component/garmin/transform/stress.d.ts.map +1 -0
  148. package/dist/component/garmin/transform/stress.js +56 -0
  149. package/dist/component/garmin/transform/stress.js.map +1 -0
  150. package/dist/component/garmin/transform/userMetrics.d.ts +12 -0
  151. package/dist/component/garmin/transform/userMetrics.d.ts.map +1 -0
  152. package/dist/component/garmin/transform/userMetrics.js +48 -0
  153. package/dist/component/garmin/transform/userMetrics.js.map +1 -0
  154. package/dist/component/garmin/types/garmin.d.ts +21 -0
  155. package/dist/component/garmin/types/garmin.d.ts.map +1 -0
  156. package/dist/component/garmin/types/garmin.js +6 -0
  157. package/dist/component/garmin/types/garmin.js.map +1 -0
  158. package/dist/component/garmin/types/zod/zod.gen.d.ts +1319 -0
  159. package/dist/component/garmin/types/zod/zod.gen.d.ts.map +1 -0
  160. package/dist/component/garmin/types/zod/zod.gen.js +784 -0
  161. package/dist/component/garmin/types/zod/zod.gen.js.map +1 -0
  162. package/dist/component/garmin/webhooks.d.ts +141 -0
  163. package/dist/component/garmin/webhooks.d.ts.map +1 -0
  164. package/dist/component/garmin/webhooks.js +766 -0
  165. package/dist/component/garmin/webhooks.js.map +1 -0
  166. package/dist/component/private.d.ts +20 -2
  167. package/dist/component/private.d.ts.map +1 -1
  168. package/dist/component/private.js +18 -0
  169. package/dist/component/private.js.map +1 -1
  170. package/dist/component/public.d.ts +433 -387
  171. package/dist/component/public.d.ts.map +1 -1
  172. package/dist/component/public.js +12 -2
  173. package/dist/component/public.js.map +1 -1
  174. package/dist/component/schema.d.ts +217 -162
  175. package/dist/component/schema.d.ts.map +1 -1
  176. package/dist/component/schema.js +2 -1
  177. package/dist/component/schema.js.map +1 -1
  178. package/dist/component/strava/private.d.ts +30 -0
  179. package/dist/component/strava/private.d.ts.map +1 -0
  180. package/dist/component/strava/private.js +71 -0
  181. package/dist/component/strava/private.js.map +1 -0
  182. package/dist/component/{strava.d.ts → strava/public.d.ts} +3 -31
  183. package/dist/component/strava/public.d.ts.map +1 -0
  184. package/dist/component/{strava.js → strava/public.js} +22 -101
  185. package/dist/component/strava/public.js.map +1 -0
  186. package/dist/component/validators/activity.d.ts +6 -0
  187. package/dist/component/validators/activity.d.ts.map +1 -1
  188. package/dist/component/validators/activity.js.map +1 -1
  189. package/dist/component/validators/body.d.ts +20 -14
  190. package/dist/component/validators/body.d.ts.map +1 -1
  191. package/dist/component/validators/body.js.map +1 -1
  192. package/dist/component/validators/connection.d.ts +1 -0
  193. package/dist/component/validators/connection.d.ts.map +1 -1
  194. package/dist/component/validators/connection.js +2 -0
  195. package/dist/component/validators/connection.js.map +1 -1
  196. package/dist/component/validators/daily.d.ts +46 -5
  197. package/dist/component/validators/daily.d.ts.map +1 -1
  198. package/dist/component/validators/daily.js +10 -1
  199. package/dist/component/validators/daily.js.map +1 -1
  200. package/dist/component/validators/enums.d.ts +2 -2
  201. package/dist/component/validators/menstruation.d.ts +5 -0
  202. package/dist/component/validators/menstruation.d.ts.map +1 -1
  203. package/dist/component/validators/menstruation.js.map +1 -1
  204. package/dist/component/validators/plannedWorkout.d.ts +5 -1
  205. package/dist/component/validators/plannedWorkout.d.ts.map +1 -1
  206. package/dist/component/validators/plannedWorkout.js +4 -0
  207. package/dist/component/validators/plannedWorkout.js.map +1 -1
  208. package/dist/component/validators/sleep.d.ts +8 -8
  209. package/dist/garmin/bloodPressure.d.ts +28 -0
  210. package/dist/garmin/bloodPressure.d.ts.map +1 -0
  211. package/dist/garmin/bloodPressure.js +34 -0
  212. package/dist/garmin/bloodPressure.js.map +1 -0
  213. package/dist/garmin/body.js +1 -1
  214. package/dist/garmin/body.js.map +1 -1
  215. package/dist/garmin/client.d.ts +117 -17
  216. package/dist/garmin/client.d.ts.map +1 -1
  217. package/dist/garmin/client.js +337 -43
  218. package/dist/garmin/client.js.map +1 -1
  219. package/dist/garmin/daily.d.ts.map +1 -1
  220. package/dist/garmin/daily.js +3 -3
  221. package/dist/garmin/daily.js.map +1 -1
  222. package/dist/garmin/hrv.d.ts +30 -0
  223. package/dist/garmin/hrv.d.ts.map +1 -0
  224. package/dist/garmin/hrv.js +45 -0
  225. package/dist/garmin/hrv.js.map +1 -0
  226. package/dist/garmin/index.d.ts +16 -4
  227. package/dist/garmin/index.d.ts.map +1 -1
  228. package/dist/garmin/index.js +8 -2
  229. package/dist/garmin/index.js.map +1 -1
  230. package/dist/garmin/maps/activity-type.d.ts +1 -2
  231. package/dist/garmin/maps/activity-type.d.ts.map +1 -1
  232. package/dist/garmin/maps/activity-type.js +1 -0
  233. package/dist/garmin/maps/activity-type.js.map +1 -1
  234. package/dist/garmin/menstruation.d.ts +6 -4
  235. package/dist/garmin/menstruation.d.ts.map +1 -1
  236. package/dist/garmin/menstruation.js +12 -8
  237. package/dist/garmin/menstruation.js.map +1 -1
  238. package/dist/garmin/pulseOx.d.ts +24 -0
  239. package/dist/garmin/pulseOx.d.ts.map +1 -0
  240. package/dist/garmin/pulseOx.js +33 -0
  241. package/dist/garmin/pulseOx.js.map +1 -0
  242. package/dist/garmin/respiration.d.ts +29 -0
  243. package/dist/garmin/respiration.d.ts.map +1 -0
  244. package/dist/garmin/respiration.js +42 -0
  245. package/dist/garmin/respiration.js.map +1 -0
  246. package/dist/garmin/skinTemp.d.ts +27 -0
  247. package/dist/garmin/skinTemp.d.ts.map +1 -0
  248. package/dist/garmin/skinTemp.js +35 -0
  249. package/dist/garmin/skinTemp.js.map +1 -0
  250. package/dist/garmin/sleep.d.ts +4 -4
  251. package/dist/garmin/sleep.d.ts.map +1 -1
  252. package/dist/garmin/sleep.js +15 -9
  253. package/dist/garmin/sleep.js.map +1 -1
  254. package/dist/garmin/stressDetails.d.ts +30 -0
  255. package/dist/garmin/stressDetails.d.ts.map +1 -0
  256. package/dist/garmin/stressDetails.js +49 -0
  257. package/dist/garmin/stressDetails.js.map +1 -0
  258. package/dist/garmin/sync.d.ts +14 -0
  259. package/dist/garmin/sync.d.ts.map +1 -1
  260. package/dist/garmin/sync.js +290 -7
  261. package/dist/garmin/sync.js.map +1 -1
  262. package/dist/garmin/types.d.ts +77 -186
  263. package/dist/garmin/types.d.ts.map +1 -1
  264. package/dist/garmin/types.js +4 -2
  265. package/dist/garmin/types.js.map +1 -1
  266. package/dist/garmin/userMetrics.d.ts +23 -0
  267. package/dist/garmin/userMetrics.d.ts.map +1 -0
  268. package/dist/garmin/userMetrics.js +41 -0
  269. package/dist/garmin/userMetrics.js.map +1 -0
  270. package/dist/validators.d.ts +138 -56
  271. package/dist/validators.d.ts.map +1 -1
  272. package/dist/validators.js +2 -2
  273. package/dist/validators.js.map +1 -1
  274. package/package.json +130 -124
  275. package/src/client/index.ts +86 -18
  276. package/src/component/_generated/api.ts +96 -4
  277. package/src/component/_generated/component.ts +271 -144
  278. package/src/{garmin → component/garmin}/auth.ts +8 -1
  279. package/src/component/garmin/client.ts +39 -0
  280. package/src/component/garmin/private.ts +1798 -0
  281. package/src/component/garmin/public.ts +938 -0
  282. package/src/component/garmin/schemas/activity.ts +40 -0
  283. package/src/component/garmin/schemas/activityDetails.ts +45 -0
  284. package/src/component/garmin/schemas/bloodPressure.ts +38 -0
  285. package/src/component/garmin/schemas/bodyCompositions.ts +38 -0
  286. package/src/component/garmin/schemas/dailies.ts +38 -0
  287. package/src/component/garmin/schemas/epochs.ts +38 -0
  288. package/src/component/garmin/schemas/healthSnapshot.ts +38 -0
  289. package/src/component/garmin/schemas/hrvSummary.ts +38 -0
  290. package/src/component/garmin/schemas/manuallyUpdatedActivities.ts +49 -0
  291. package/src/component/garmin/schemas/menstrualCycleTracking.ts +39 -0
  292. package/src/component/garmin/schemas/moveIQ.ts +38 -0
  293. package/src/component/garmin/schemas/pulseOx.ts +39 -0
  294. package/src/component/garmin/schemas/respiration.ts +39 -0
  295. package/src/component/garmin/schemas/skinTemperature.ts +39 -0
  296. package/src/component/garmin/schemas/sleeps.ts +38 -0
  297. package/src/component/garmin/schemas/stress.ts +43 -0
  298. package/src/component/garmin/schemas/userMetrics.ts +39 -0
  299. package/src/component/garmin/transform/activity.ts +143 -0
  300. package/src/component/garmin/transform/activityDetails.ts +236 -0
  301. package/src/component/garmin/transform/bloodPressure.ts +39 -0
  302. package/src/component/garmin/transform/bodyCompositions.ts +51 -0
  303. package/src/component/garmin/transform/dailies.ts +179 -0
  304. package/src/component/garmin/transform/epochs.ts +94 -0
  305. package/src/component/garmin/transform/healthSnapshot.ts +152 -0
  306. package/src/component/garmin/transform/hrvSummary.ts +56 -0
  307. package/src/component/garmin/transform/manuallyUpdatedActivities.ts +27 -0
  308. package/src/{garmin/maps/activity-type.ts → component/garmin/transform/maps/activityType.ts} +116 -116
  309. package/src/{garmin/maps/sleep-level.ts → component/garmin/transform/maps/sleepLevel.ts} +22 -22
  310. package/src/component/garmin/transform/menstrualCycleTracking.ts +48 -0
  311. package/src/component/garmin/transform/moveIQ.ts +48 -0
  312. package/src/{garmin → component/garmin/transform}/plannedWorkout.ts +328 -333
  313. package/src/component/garmin/transform/pulseOx.ts +64 -0
  314. package/src/component/garmin/transform/respiration.ts +73 -0
  315. package/src/component/garmin/transform/skinTemperature.ts +44 -0
  316. package/src/component/garmin/transform/sleeps.ts +159 -0
  317. package/src/component/garmin/transform/stress.ts +78 -0
  318. package/src/component/garmin/transform/userMetrics.ts +56 -0
  319. package/src/component/garmin/types/specs/training-api-workouts.json +699 -0
  320. package/src/component/garmin/types/specs/wellness-api.json +1 -0
  321. package/src/component/garmin/types/trainingApiWorkouts/client/client.gen.ts +290 -0
  322. package/src/component/garmin/types/trainingApiWorkouts/client/index.ts +25 -0
  323. package/src/component/garmin/types/trainingApiWorkouts/client/types.gen.ts +214 -0
  324. package/src/component/garmin/types/trainingApiWorkouts/client/utils.gen.ts +316 -0
  325. package/src/component/garmin/types/trainingApiWorkouts/client.gen.ts +16 -0
  326. package/src/component/garmin/types/trainingApiWorkouts/core/auth.gen.ts +41 -0
  327. package/src/component/garmin/types/trainingApiWorkouts/core/bodySerializer.gen.ts +82 -0
  328. package/src/component/garmin/types/trainingApiWorkouts/core/params.gen.ts +169 -0
  329. package/src/component/garmin/types/trainingApiWorkouts/core/pathSerializer.gen.ts +171 -0
  330. package/src/component/garmin/types/trainingApiWorkouts/core/queryKeySerializer.gen.ts +117 -0
  331. package/src/component/garmin/types/trainingApiWorkouts/core/serverSentEvents.gen.ts +243 -0
  332. package/src/component/garmin/types/trainingApiWorkouts/core/types.gen.ts +104 -0
  333. package/src/component/garmin/types/trainingApiWorkouts/core/utils.gen.ts +140 -0
  334. package/src/component/garmin/types/trainingApiWorkouts/index.ts +4 -0
  335. package/src/component/garmin/types/trainingApiWorkouts/sdk.gen.ts +126 -0
  336. package/src/component/garmin/types/trainingApiWorkouts/types.gen.ts +387 -0
  337. package/src/component/garmin/types/trainingApiWorkouts/zod.gen.ts +423 -0
  338. package/src/component/garmin/types/wellnessApi/client/client.gen.ts +290 -0
  339. package/src/component/garmin/types/wellnessApi/client/index.ts +25 -0
  340. package/src/component/garmin/types/wellnessApi/client/types.gen.ts +214 -0
  341. package/src/component/garmin/types/wellnessApi/client/utils.gen.ts +316 -0
  342. package/src/component/garmin/types/wellnessApi/client.gen.ts +16 -0
  343. package/src/component/garmin/types/wellnessApi/core/auth.gen.ts +41 -0
  344. package/src/component/garmin/types/wellnessApi/core/bodySerializer.gen.ts +82 -0
  345. package/src/component/garmin/types/wellnessApi/core/params.gen.ts +169 -0
  346. package/src/component/garmin/types/wellnessApi/core/pathSerializer.gen.ts +171 -0
  347. package/src/component/garmin/types/wellnessApi/core/queryKeySerializer.gen.ts +117 -0
  348. package/src/component/garmin/types/wellnessApi/core/serverSentEvents.gen.ts +243 -0
  349. package/src/component/garmin/types/wellnessApi/core/types.gen.ts +104 -0
  350. package/src/component/garmin/types/wellnessApi/core/utils.gen.ts +140 -0
  351. package/src/component/garmin/types/wellnessApi/index.ts +4 -0
  352. package/src/component/garmin/types/wellnessApi/sdk.gen.ts +207 -0
  353. package/src/component/garmin/types/wellnessApi/types.gen.ts +2942 -0
  354. package/src/component/garmin/types/wellnessApi/zod.gen.ts +878 -0
  355. package/src/component/garmin/utils.ts +25 -0
  356. package/src/component/garmin/webhooks.ts +852 -0
  357. package/src/component/private.ts +21 -0
  358. package/src/component/public.ts +11 -2
  359. package/src/component/schema.ts +2 -1
  360. package/src/component/strava/private.ts +89 -0
  361. package/src/component/{strava.ts → strava/public.ts} +341 -404
  362. package/src/component/validators/activity.ts +5 -0
  363. package/src/component/validators/body.ts +5 -0
  364. package/src/component/validators/connection.ts +2 -0
  365. package/src/component/validators/daily.ts +20 -0
  366. package/src/component/validators/menstruation.ts +5 -1
  367. package/src/component/validators/plannedWorkout.ts +9 -0
  368. package/src/validators.ts +12 -2
  369. package/dist/component/garmin.d.ts.map +0 -1
  370. package/dist/component/garmin.js.map +0 -1
  371. package/dist/component/strava.d.ts.map +0 -1
  372. package/dist/component/strava.js.map +0 -1
  373. package/dist/garmin/activity.d.ts +0 -101
  374. package/dist/garmin/activity.d.ts.map +0 -1
  375. package/dist/garmin/activity.js +0 -207
  376. package/dist/garmin/activity.js.map +0 -1
  377. package/src/component/garmin.ts +0 -850
  378. package/src/garmin/activity.test.ts +0 -178
  379. package/src/garmin/activity.ts +0 -272
  380. package/src/garmin/auth.test.ts +0 -103
  381. package/src/garmin/body.ts +0 -59
  382. package/src/garmin/client.ts +0 -407
  383. package/src/garmin/daily.ts +0 -211
  384. package/src/garmin/index.ts +0 -75
  385. package/src/garmin/maps/activity-type.test.ts +0 -78
  386. package/src/garmin/menstruation.ts +0 -42
  387. package/src/garmin/sleep.test.ts +0 -110
  388. package/src/garmin/sleep.ts +0 -170
  389. package/src/garmin/sync.ts +0 -223
  390. package/src/garmin/types.ts +0 -480
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moveIQ.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/moveIQ.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,kEAAkE;AAClE,EAAE;AACF,uFAAuF;AACvF,qFAAqF;AAErF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,+EAA+E;AAC/E,wEAAwE;AAExE,MAAM,CAAC,MAAM,0BAA0B,GAAG,yBAAyB,CAAC,MAAM,CAAC;IACzE,gEAAgE;IAChE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CACtD,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CACtD,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { z } from "zod";
2
+ export declare const garminPulseOxPushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ calendarDate: z.ZodOptional<z.ZodString>;
5
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
6
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
7
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
8
+ timeOffsetSpo2Values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
9
+ onDemand: z.ZodOptional<z.ZodBoolean>;
10
+ userId: z.ZodString;
11
+ userAccessToken: z.ZodOptional<z.ZodString>;
12
+ }, z.core.$strip>;
13
+ export declare const garminPulseOxPushPayloadSchema: z.ZodObject<{
14
+ pulseox: z.ZodArray<z.ZodObject<{
15
+ summaryId: z.ZodOptional<z.ZodString>;
16
+ calendarDate: z.ZodOptional<z.ZodString>;
17
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
18
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
19
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
20
+ timeOffsetSpo2Values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
21
+ onDemand: z.ZodOptional<z.ZodBoolean>;
22
+ userId: z.ZodString;
23
+ userAccessToken: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>>;
25
+ }, z.core.$strip>;
26
+ export declare const garminPulseOxPingItemSchema: z.ZodObject<{
27
+ userId: z.ZodString;
28
+ callbackURL: z.ZodOptional<z.ZodString>;
29
+ }, z.core.$strip>;
30
+ export declare const garminPulseOxPingPayloadSchema: z.ZodObject<{
31
+ pulseox: z.ZodArray<z.ZodObject<{
32
+ userId: z.ZodString;
33
+ callbackURL: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>>;
35
+ }, z.core.$strip>;
36
+ export type GarminPulseOxPushItem = z.infer<typeof garminPulseOxPushItemSchema>;
37
+ export type GarminPulseOxPingItem = z.infer<typeof garminPulseOxPingItemSchema>;
38
+ //# sourceMappingURL=pulseOx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pulseOx.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/pulseOx.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,2BAA2B;;;;;;;;;;iBAItC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;iBAEzC,CAAC;AAKH,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;iBAEzC,CAAC;AAIH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ // ─── Pulse Ox Webhook Zod Schemas ────────────────────────────────────────────
2
+ // Runtime validation schemas for Garmin Pulse Ox webhook payloads.
3
+ //
4
+ // The base schema (zClientDailySpo2Acclimation) is auto-generated from the
5
+ // OpenAPI spec. We extend it here with webhook-specific fields (userId,
6
+ // userAccessToken).
7
+ import { z } from "zod";
8
+ import { zClientDailySpo2Acclimation } from "../types/zod/zod.gen.js";
9
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
10
+ // Push payloads contain full pulse ox data plus webhook envelope fields.
11
+ export const garminPulseOxPushItemSchema = zClientDailySpo2Acclimation.extend({
12
+ // Webhook envelope fields
13
+ userId: z.string(),
14
+ userAccessToken: z.string().optional(),
15
+ });
16
+ export const garminPulseOxPushPayloadSchema = z.object({
17
+ pulseox: z.array(garminPulseOxPushItemSchema),
18
+ });
19
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
20
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
21
+ export const garminPulseOxPingItemSchema = z.object({
22
+ userId: z.string(),
23
+ callbackURL: z.string().optional(), // absent for deregistration notifications
24
+ });
25
+ export const garminPulseOxPingPayloadSchema = z.object({
26
+ pulseox: z.array(garminPulseOxPingItemSchema),
27
+ });
28
+ //# sourceMappingURL=pulseOx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pulseOx.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/pulseOx.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,mEAAmE;AACnE,EAAE;AACF,2EAA2E;AAC3E,wEAAwE;AACxE,oBAAoB;AAEpB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAEtE,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,2BAA2B,GAAG,2BAA2B,CAAC,MAAM,CAAC;IAC5E,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC;CAC9C,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC;CAC9C,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { z } from "zod";
2
+ export declare const garminRespirationPushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
5
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
6
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
7
+ timeOffsetEpochToBreaths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
8
+ userId: z.ZodString;
9
+ userAccessToken: z.ZodOptional<z.ZodString>;
10
+ }, z.core.$strip>;
11
+ export declare const garminRespirationPushPayloadSchema: z.ZodObject<{
12
+ allDayRespiration: z.ZodArray<z.ZodObject<{
13
+ summaryId: z.ZodOptional<z.ZodString>;
14
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
15
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
16
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
17
+ timeOffsetEpochToBreaths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
18
+ userId: z.ZodString;
19
+ userAccessToken: z.ZodOptional<z.ZodString>;
20
+ }, z.core.$strip>>;
21
+ }, z.core.$strip>;
22
+ export declare const garminRespirationPingItemSchema: z.ZodObject<{
23
+ userId: z.ZodString;
24
+ callbackURL: z.ZodOptional<z.ZodString>;
25
+ }, z.core.$strip>;
26
+ export declare const garminRespirationPingPayloadSchema: z.ZodObject<{
27
+ allDayRespiration: z.ZodArray<z.ZodObject<{
28
+ userId: z.ZodString;
29
+ callbackURL: z.ZodOptional<z.ZodString>;
30
+ }, z.core.$strip>>;
31
+ }, z.core.$strip>;
32
+ export type GarminRespirationPushItem = z.infer<typeof garminRespirationPushItemSchema>;
33
+ export type GarminRespirationPingItem = z.infer<typeof garminRespirationPingItemSchema>;
34
+ //# sourceMappingURL=respiration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respiration.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/respiration.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,+BAA+B;;;;;;;;iBAI1C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;;;;;;iBAE7C,CAAC;AAKH,eAAO,MAAM,+BAA+B;;;iBAG1C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;iBAE7C,CAAC;AAIH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ // ─── Respiration Webhook Zod Schemas ─────────────────────────────────────────
2
+ // Runtime validation schemas for Garmin Respiration webhook payloads.
3
+ //
4
+ // The base schema (zClientRespiration) is auto-generated from the
5
+ // OpenAPI spec. We extend it here with webhook-specific fields (userId,
6
+ // userAccessToken).
7
+ import { z } from "zod";
8
+ import { zClientRespiration } from "../types/zod/zod.gen.js";
9
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
10
+ // Push payloads contain full respiration data plus webhook envelope fields.
11
+ export const garminRespirationPushItemSchema = zClientRespiration.extend({
12
+ // Webhook envelope fields
13
+ userId: z.string(),
14
+ userAccessToken: z.string().optional(),
15
+ });
16
+ export const garminRespirationPushPayloadSchema = z.object({
17
+ allDayRespiration: z.array(garminRespirationPushItemSchema),
18
+ });
19
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
20
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
21
+ export const garminRespirationPingItemSchema = z.object({
22
+ userId: z.string(),
23
+ callbackURL: z.string().optional(), // absent for deregistration notifications
24
+ });
25
+ export const garminRespirationPingPayloadSchema = z.object({
26
+ allDayRespiration: z.array(garminRespirationPingItemSchema),
27
+ });
28
+ //# sourceMappingURL=respiration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respiration.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/respiration.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,sEAAsE;AACtE,EAAE;AACF,kEAAkE;AAClE,wEAAwE;AACxE,oBAAoB;AAEpB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,+EAA+E;AAC/E,4EAA4E;AAE5E,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACvE,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC;CAC5D,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC;CAC5D,CAAC,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { z } from "zod";
2
+ export declare const garminSkinTemperaturePushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ calendarDate: z.ZodOptional<z.ZodString>;
5
+ avgDeviationCelsius: z.ZodOptional<z.ZodNumber>;
6
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
7
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
8
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
9
+ userId: z.ZodString;
10
+ userAccessToken: z.ZodOptional<z.ZodString>;
11
+ }, z.core.$strip>;
12
+ export declare const garminSkinTemperaturePushPayloadSchema: z.ZodObject<{
13
+ skinTemp: z.ZodArray<z.ZodObject<{
14
+ summaryId: z.ZodOptional<z.ZodString>;
15
+ calendarDate: z.ZodOptional<z.ZodString>;
16
+ avgDeviationCelsius: z.ZodOptional<z.ZodNumber>;
17
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
18
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
19
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
20
+ userId: z.ZodString;
21
+ userAccessToken: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ export declare const garminSkinTemperaturePingItemSchema: z.ZodObject<{
25
+ userId: z.ZodString;
26
+ callbackURL: z.ZodOptional<z.ZodString>;
27
+ }, z.core.$strip>;
28
+ export declare const garminSkinTemperaturePingPayloadSchema: z.ZodObject<{
29
+ skinTemp: z.ZodArray<z.ZodObject<{
30
+ userId: z.ZodString;
31
+ callbackURL: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>>;
33
+ }, z.core.$strip>;
34
+ export type GarminSkinTemperaturePushItem = z.infer<typeof garminSkinTemperaturePushItemSchema>;
35
+ export type GarminSkinTemperaturePingItem = z.infer<typeof garminSkinTemperaturePingItemSchema>;
36
+ //# sourceMappingURL=skinTemperature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skinTemperature.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/skinTemperature.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mCAAmC;;;;;;;;;iBAI9C,CAAC;AAEH,eAAO,MAAM,sCAAsC;;;;;;;;;;;iBAEjD,CAAC;AAKH,eAAO,MAAM,mCAAmC;;;iBAG9C,CAAC;AAEH,eAAO,MAAM,sCAAsC;;;;;iBAEjD,CAAC;AAIH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAChG,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ // ─── Skin Temperature Webhook Zod Schemas ────────────────────────────────────
2
+ // Runtime validation schemas for Garmin Skin Temperature webhook payloads.
3
+ //
4
+ // The base schema (zClientSkinTemp) is auto-generated from the
5
+ // OpenAPI spec. We extend it here with webhook-specific fields (userId,
6
+ // userAccessToken).
7
+ import { z } from "zod";
8
+ import { zClientSkinTemp } from "../types/zod/zod.gen.js";
9
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
10
+ // Push payloads contain full skin temperature data plus webhook envelope fields.
11
+ export const garminSkinTemperaturePushItemSchema = zClientSkinTemp.extend({
12
+ // Webhook envelope fields
13
+ userId: z.string(),
14
+ userAccessToken: z.string().optional(),
15
+ });
16
+ export const garminSkinTemperaturePushPayloadSchema = z.object({
17
+ skinTemp: z.array(garminSkinTemperaturePushItemSchema),
18
+ });
19
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
20
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
21
+ export const garminSkinTemperaturePingItemSchema = z.object({
22
+ userId: z.string(),
23
+ callbackURL: z.string().optional(), // absent for deregistration notifications
24
+ });
25
+ export const garminSkinTemperaturePingPayloadSchema = z.object({
26
+ skinTemp: z.array(garminSkinTemperaturePingItemSchema),
27
+ });
28
+ //# sourceMappingURL=skinTemperature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skinTemperature.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/skinTemperature.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,2EAA2E;AAC3E,EAAE;AACF,+DAA+D;AAC/D,wEAAwE;AACxE,oBAAoB;AAEpB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,+EAA+E;AAC/E,iFAAiF;AAEjF,MAAM,CAAC,MAAM,mCAAmC,GAAG,eAAe,CAAC,MAAM,CAAC;IACxE,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC;CACvD,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC;CACvD,CAAC,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { z } from "zod";
2
+ export declare const garminSleepsPushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ calendarDate: z.ZodOptional<z.ZodString>;
5
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
6
+ totalNapDurationInSeconds: z.ZodOptional<z.ZodInt>;
7
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
8
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
9
+ unmeasurableSleepInSeconds: z.ZodOptional<z.ZodInt>;
10
+ deepSleepDurationInSeconds: z.ZodOptional<z.ZodInt>;
11
+ lightSleepDurationInSeconds: z.ZodOptional<z.ZodInt>;
12
+ remSleepInSeconds: z.ZodOptional<z.ZodInt>;
13
+ awakeDurationInSeconds: z.ZodOptional<z.ZodInt>;
14
+ sleepLevelsMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
15
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
16
+ endTimeInSeconds: z.ZodOptional<z.ZodInt>;
17
+ }, z.core.$strip>>>>;
18
+ validation: z.ZodOptional<z.ZodString>;
19
+ timeOffsetSleepSpo2: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
20
+ timeOffsetSleepRespiration: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
21
+ overallSleepScore: z.ZodOptional<z.ZodObject<{
22
+ value: z.ZodOptional<z.ZodInt>;
23
+ qualifierKey: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>>;
25
+ sleepScores: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
26
+ value: z.ZodOptional<z.ZodInt>;
27
+ qualifierKey: z.ZodOptional<z.ZodString>;
28
+ }, z.core.$strip>>>;
29
+ naps: z.ZodOptional<z.ZodArray<z.ZodObject<{
30
+ napStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
31
+ napOffsetInSeconds: z.ZodOptional<z.ZodInt>;
32
+ napDurationInSeconds: z.ZodOptional<z.ZodInt>;
33
+ napValidation: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>>>;
35
+ userId: z.ZodString;
36
+ userAccessToken: z.ZodOptional<z.ZodString>;
37
+ }, z.core.$strip>;
38
+ export declare const garminSleepsPushPayloadSchema: z.ZodObject<{
39
+ sleeps: z.ZodArray<z.ZodObject<{
40
+ summaryId: z.ZodOptional<z.ZodString>;
41
+ calendarDate: z.ZodOptional<z.ZodString>;
42
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
43
+ totalNapDurationInSeconds: z.ZodOptional<z.ZodInt>;
44
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
45
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
46
+ unmeasurableSleepInSeconds: z.ZodOptional<z.ZodInt>;
47
+ deepSleepDurationInSeconds: z.ZodOptional<z.ZodInt>;
48
+ lightSleepDurationInSeconds: z.ZodOptional<z.ZodInt>;
49
+ remSleepInSeconds: z.ZodOptional<z.ZodInt>;
50
+ awakeDurationInSeconds: z.ZodOptional<z.ZodInt>;
51
+ sleepLevelsMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
52
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
53
+ endTimeInSeconds: z.ZodOptional<z.ZodInt>;
54
+ }, z.core.$strip>>>>;
55
+ validation: z.ZodOptional<z.ZodString>;
56
+ timeOffsetSleepSpo2: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
57
+ timeOffsetSleepRespiration: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
58
+ overallSleepScore: z.ZodOptional<z.ZodObject<{
59
+ value: z.ZodOptional<z.ZodInt>;
60
+ qualifierKey: z.ZodOptional<z.ZodString>;
61
+ }, z.core.$strip>>;
62
+ sleepScores: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
63
+ value: z.ZodOptional<z.ZodInt>;
64
+ qualifierKey: z.ZodOptional<z.ZodString>;
65
+ }, z.core.$strip>>>;
66
+ naps: z.ZodOptional<z.ZodArray<z.ZodObject<{
67
+ napStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
68
+ napOffsetInSeconds: z.ZodOptional<z.ZodInt>;
69
+ napDurationInSeconds: z.ZodOptional<z.ZodInt>;
70
+ napValidation: z.ZodOptional<z.ZodString>;
71
+ }, z.core.$strip>>>;
72
+ userId: z.ZodString;
73
+ userAccessToken: z.ZodOptional<z.ZodString>;
74
+ }, z.core.$strip>>;
75
+ }, z.core.$strip>;
76
+ export declare const garminSleepsPingItemSchema: z.ZodObject<{
77
+ userId: z.ZodString;
78
+ callbackURL: z.ZodOptional<z.ZodString>;
79
+ }, z.core.$strip>;
80
+ export declare const garminSleepsPingPayloadSchema: z.ZodObject<{
81
+ sleeps: z.ZodArray<z.ZodObject<{
82
+ userId: z.ZodString;
83
+ callbackURL: z.ZodOptional<z.ZodString>;
84
+ }, z.core.$strip>>;
85
+ }, z.core.$strip>;
86
+ export type GarminSleepsPushItem = z.infer<typeof garminSleepsPushItemSchema>;
87
+ export type GarminSleepsPingItem = z.infer<typeof garminSleepsPingItemSchema>;
88
+ //# sourceMappingURL=sleeps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleeps.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/sleeps.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIrC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAExC,CAAC;AAKH,eAAO,MAAM,0BAA0B;;;iBAGrC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;iBAExC,CAAC;AAIH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ // ─── Sleeps Webhook Zod Schemas ──────────────────────────────────────────────
2
+ // Runtime validation schemas for Garmin Sleep Summary webhook payloads.
3
+ //
4
+ // The base schema (zClientSleep) is auto-generated from the OpenAPI spec.
5
+ // We extend it here with webhook-specific fields (userId, userAccessToken)
6
+ import { z } from "zod";
7
+ import { zClientSleep } from "../types/zod/zod.gen.js";
8
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
9
+ // Push payloads contain full sleep summary data plus webhook envelope fields.
10
+ export const garminSleepsPushItemSchema = zClientSleep.extend({
11
+ // Webhook envelope fields
12
+ userId: z.string(),
13
+ userAccessToken: z.string().optional(),
14
+ });
15
+ export const garminSleepsPushPayloadSchema = z.object({
16
+ sleeps: z.array(garminSleepsPushItemSchema),
17
+ });
18
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
19
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
20
+ export const garminSleepsPingItemSchema = z.object({
21
+ userId: z.string(),
22
+ callbackURL: z.string().optional(), // absent for deregistration notifications
23
+ });
24
+ export const garminSleepsPingPayloadSchema = z.object({
25
+ sleeps: z.array(garminSleepsPingItemSchema),
26
+ });
27
+ //# sourceMappingURL=sleeps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleeps.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/sleeps.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,wEAAwE;AACxE,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAE3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,+EAA+E;AAC/E,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC,MAAM,CAAC;IAC5D,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CAC5C,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CAC5C,CAAC,CAAC"}
@@ -0,0 +1,70 @@
1
+ import { z } from "zod";
2
+ export declare const garminStressPushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
5
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
6
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
7
+ calendarDate: z.ZodOptional<z.ZodString>;
8
+ maxStressLevel: z.ZodOptional<z.ZodInt>;
9
+ averageStressLevel: z.ZodOptional<z.ZodInt>;
10
+ timeOffsetStressLevelValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
11
+ timeOffsetBodyBatteryValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
12
+ bodyBatteryDynamicFeedbackEvent: z.ZodOptional<z.ZodObject<{
13
+ eventStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
14
+ bodyBatteryLevel: z.ZodOptional<z.ZodString>;
15
+ }, z.core.$strip>>;
16
+ bodyBatteryActivityEvents: z.ZodOptional<z.ZodArray<z.ZodObject<{
17
+ eventType: z.ZodOptional<z.ZodString>;
18
+ eventStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
19
+ eventStartTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
20
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
21
+ bodyBatteryImpact: z.ZodOptional<z.ZodInt>;
22
+ activityName: z.ZodOptional<z.ZodString>;
23
+ activityType: z.ZodOptional<z.ZodString>;
24
+ activityId: z.ZodOptional<z.ZodCoercedBigInt<unknown>>;
25
+ }, z.core.$strip>>>;
26
+ userId: z.ZodString;
27
+ userAccessToken: z.ZodOptional<z.ZodString>;
28
+ }, z.core.$strip>;
29
+ export declare const garminStressPushPayloadSchema: z.ZodObject<{
30
+ stressDetails: z.ZodArray<z.ZodObject<{
31
+ summaryId: z.ZodOptional<z.ZodString>;
32
+ startTimeInSeconds: z.ZodOptional<z.ZodInt>;
33
+ startTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
34
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
35
+ calendarDate: z.ZodOptional<z.ZodString>;
36
+ maxStressLevel: z.ZodOptional<z.ZodInt>;
37
+ averageStressLevel: z.ZodOptional<z.ZodInt>;
38
+ timeOffsetStressLevelValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
39
+ timeOffsetBodyBatteryValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInt>>;
40
+ bodyBatteryDynamicFeedbackEvent: z.ZodOptional<z.ZodObject<{
41
+ eventStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
42
+ bodyBatteryLevel: z.ZodOptional<z.ZodString>;
43
+ }, z.core.$strip>>;
44
+ bodyBatteryActivityEvents: z.ZodOptional<z.ZodArray<z.ZodObject<{
45
+ eventType: z.ZodOptional<z.ZodString>;
46
+ eventStartTimeInSeconds: z.ZodOptional<z.ZodInt>;
47
+ eventStartTimeOffsetInSeconds: z.ZodOptional<z.ZodInt>;
48
+ durationInSeconds: z.ZodOptional<z.ZodInt>;
49
+ bodyBatteryImpact: z.ZodOptional<z.ZodInt>;
50
+ activityName: z.ZodOptional<z.ZodString>;
51
+ activityType: z.ZodOptional<z.ZodString>;
52
+ activityId: z.ZodOptional<z.ZodCoercedBigInt<unknown>>;
53
+ }, z.core.$strip>>>;
54
+ userId: z.ZodString;
55
+ userAccessToken: z.ZodOptional<z.ZodString>;
56
+ }, z.core.$strip>>;
57
+ }, z.core.$strip>;
58
+ export declare const garminStressPingItemSchema: z.ZodObject<{
59
+ userId: z.ZodString;
60
+ callbackURL: z.ZodOptional<z.ZodString>;
61
+ }, z.core.$strip>;
62
+ export declare const garminStressPingPayloadSchema: z.ZodObject<{
63
+ stressDetails: z.ZodArray<z.ZodObject<{
64
+ userId: z.ZodString;
65
+ callbackURL: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$strip>>;
67
+ }, z.core.$strip>;
68
+ export type GarminStressPushItem = z.infer<typeof garminStressPushItemSchema>;
69
+ export type GarminStressPingItem = z.infer<typeof garminStressPingItemSchema>;
70
+ //# sourceMappingURL=stress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stress.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/stress.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIrC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAExC,CAAC;AAKH,eAAO,MAAM,0BAA0B;;;iBAGrC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;iBAExC,CAAC;AAIH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ // ─── Stress Details Webhook Zod Schemas ───────────────────────────────────────
2
+ // Runtime validation schemas for Garmin Stress Details webhook payloads.
3
+ //
4
+ // The base schema (zClientStress) is auto-generated from the
5
+ // OpenAPI spec. We extend it here with webhook-specific fields (userId,
6
+ // userAccessToken).
7
+ import { z } from "zod";
8
+ import { zClientStress } from "../types/zod/zod.gen.js";
9
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
10
+ // Push payloads contain full stress details data plus webhook envelope fields.
11
+ export const garminStressPushItemSchema = zClientStress.extend({
12
+ // Webhook envelope fields
13
+ userId: z.string(),
14
+ userAccessToken: z.string().optional(),
15
+ });
16
+ export const garminStressPushPayloadSchema = z.object({
17
+ stressDetails: z.array(garminStressPushItemSchema),
18
+ });
19
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
20
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
21
+ export const garminStressPingItemSchema = z.object({
22
+ userId: z.string(),
23
+ callbackURL: z.string().optional(), // absent for deregistration notifications
24
+ });
25
+ export const garminStressPingPayloadSchema = z.object({
26
+ stressDetails: z.array(garminStressPingItemSchema),
27
+ });
28
+ //# sourceMappingURL=stress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stress.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/stress.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,yEAAyE;AACzE,EAAE;AACF,6DAA6D;AAC7D,wEAAwE;AACxE,oBAAoB;AAEpB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,+EAA+E;AAC/E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC,MAAM,CAAC;IAC7D,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CACnD,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CACnD,CAAC,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { z } from "zod";
2
+ export declare const garminUserMetricsPushItemSchema: z.ZodObject<{
3
+ summaryId: z.ZodOptional<z.ZodString>;
4
+ calendarDate: z.ZodOptional<z.ZodString>;
5
+ vo2Max: z.ZodOptional<z.ZodNumber>;
6
+ vo2MaxCycling: z.ZodOptional<z.ZodNumber>;
7
+ fitnessAge: z.ZodOptional<z.ZodInt>;
8
+ enhanced: z.ZodOptional<z.ZodBoolean>;
9
+ userId: z.ZodString;
10
+ userAccessToken: z.ZodOptional<z.ZodString>;
11
+ }, z.core.$strip>;
12
+ export declare const garminUserMetricsPushPayloadSchema: z.ZodObject<{
13
+ userMetrics: z.ZodArray<z.ZodObject<{
14
+ summaryId: z.ZodOptional<z.ZodString>;
15
+ calendarDate: z.ZodOptional<z.ZodString>;
16
+ vo2Max: z.ZodOptional<z.ZodNumber>;
17
+ vo2MaxCycling: z.ZodOptional<z.ZodNumber>;
18
+ fitnessAge: z.ZodOptional<z.ZodInt>;
19
+ enhanced: z.ZodOptional<z.ZodBoolean>;
20
+ userId: z.ZodString;
21
+ userAccessToken: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ export declare const garminUserMetricsPingItemSchema: z.ZodObject<{
25
+ userId: z.ZodString;
26
+ callbackURL: z.ZodOptional<z.ZodString>;
27
+ }, z.core.$strip>;
28
+ export declare const garminUserMetricsPingPayloadSchema: z.ZodObject<{
29
+ userMetrics: z.ZodArray<z.ZodObject<{
30
+ userId: z.ZodString;
31
+ callbackURL: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>>;
33
+ }, z.core.$strip>;
34
+ export type GarminUserMetricsPushItem = z.infer<typeof garminUserMetricsPushItemSchema>;
35
+ export type GarminUserMetricsPingItem = z.infer<typeof garminUserMetricsPingItemSchema>;
36
+ //# sourceMappingURL=userMetrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userMetrics.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/userMetrics.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,+BAA+B;;;;;;;;;iBAI1C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;;;;;;;iBAE7C,CAAC;AAKH,eAAO,MAAM,+BAA+B;;;iBAG1C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;iBAE7C,CAAC;AAIH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ // ─── User Metrics Webhook Zod Schemas ─────────────────────────────────────────
2
+ // Runtime validation schemas for Garmin User Metrics webhook payloads.
3
+ //
4
+ // The base schema (zClientUserMetrics) is auto-generated from the
5
+ // OpenAPI spec. We extend it here with webhook-specific fields (userId,
6
+ // userAccessToken).
7
+ import { z } from "zod";
8
+ import { zClientUserMetrics } from "../types/zod/zod.gen.js";
9
+ // ─── Push Mode ──────────────────────────────────────────────────────────────
10
+ // Push payloads contain full user metrics data plus webhook envelope fields.
11
+ export const garminUserMetricsPushItemSchema = zClientUserMetrics.extend({
12
+ // Webhook envelope fields
13
+ userId: z.string(),
14
+ userAccessToken: z.string().optional(),
15
+ });
16
+ export const garminUserMetricsPushPayloadSchema = z.object({
17
+ userMetrics: z.array(garminUserMetricsPushItemSchema),
18
+ });
19
+ // ─── Ping Mode ──────────────────────────────────────────────────────────────
20
+ // Ping payloads are lightweight notifications — not in any OpenAPI spec.
21
+ export const garminUserMetricsPingItemSchema = z.object({
22
+ userId: z.string(),
23
+ callbackURL: z.string().optional(), // absent for deregistration notifications
24
+ });
25
+ export const garminUserMetricsPingPayloadSchema = z.object({
26
+ userMetrics: z.array(garminUserMetricsPingItemSchema),
27
+ });
28
+ //# sourceMappingURL=userMetrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userMetrics.js","sourceRoot":"","sources":["../../../../src/component/garmin/schemas/userMetrics.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,uEAAuE;AACvE,EAAE;AACF,kEAAkE;AAClE,wEAAwE;AACxE,oBAAoB;AAEpB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,+EAA+E;AAC/E,6EAA6E;AAE7E,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACvE,0BAA0B;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC;CACtD,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yEAAyE;AAEzE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC;CACtD,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { SomaActivity } from "../../validators/activity.js";
2
+ import type { GarminActivity } from "../types/garmin.js";
3
+ /**
4
+ * Transform a Garmin activity push item into a Soma Activity document shape.
5
+ *
6
+ * Accepts activity summaries from webhook push payloads. These contain
7
+ * summary-level fields only (no laps, samples, or power data).
8
+ *
9
+ * The returned object is ready to be spread into an `ingestActivity` call
10
+ * alongside `connectionId` and `userId`.
11
+ */
12
+ export declare function transformActivity(activity: GarminActivity): SomaActivity;
13
+ //# sourceMappingURL=activity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity.d.ts","sourceRoot":"","sources":["../../../../src/component/garmin/transform/activity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,YAAY,CAkCxE"}