@nativesquare/soma 0.9.4 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/dist/client/index.d.ts +124 -144
  2. package/dist/client/index.d.ts.map +1 -1
  3. package/dist/client/index.js +157 -134
  4. package/dist/client/index.js.map +1 -1
  5. package/dist/component/_generated/api.d.ts +18 -0
  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 +113 -22
  9. package/dist/component/_generated/component.d.ts.map +1 -1
  10. package/dist/component/garmin/auth.d.ts +0 -4
  11. package/dist/component/garmin/auth.d.ts.map +1 -1
  12. package/dist/component/garmin/auth.js +0 -8
  13. package/dist/component/garmin/auth.js.map +1 -1
  14. package/dist/component/garmin/private.d.ts +10 -1
  15. package/dist/component/garmin/private.d.ts.map +1 -1
  16. package/dist/component/garmin/private.js +49 -9
  17. package/dist/component/garmin/private.js.map +1 -1
  18. package/dist/component/garmin/public.d.ts +237 -62
  19. package/dist/component/garmin/public.d.ts.map +1 -1
  20. package/dist/component/garmin/public.js +689 -254
  21. package/dist/component/garmin/public.js.map +1 -1
  22. package/dist/component/garmin/utils.d.ts +8 -0
  23. package/dist/component/garmin/utils.d.ts.map +1 -1
  24. package/dist/component/garmin/utils.js +9 -0
  25. package/dist/component/garmin/utils.js.map +1 -1
  26. package/dist/component/schema.d.ts +2 -2
  27. package/dist/component/schema.d.ts.map +1 -1
  28. package/dist/component/schema.js +5 -3
  29. package/dist/component/schema.js.map +1 -1
  30. package/dist/{strava → component/strava}/auth.d.ts +15 -48
  31. package/dist/component/strava/auth.d.ts.map +1 -0
  32. package/dist/{strava → component/strava}/auth.js +4 -39
  33. package/dist/component/strava/auth.js.map +1 -0
  34. package/dist/component/strava/client.d.ts +8 -0
  35. package/dist/component/strava/client.d.ts.map +1 -0
  36. package/dist/component/strava/client.js +18 -0
  37. package/dist/component/strava/client.js.map +1 -0
  38. package/dist/component/strava/private.d.ts +19 -0
  39. package/dist/component/strava/private.d.ts.map +1 -1
  40. package/dist/component/strava/private.js +52 -2
  41. package/dist/component/strava/private.js.map +1 -1
  42. package/dist/component/strava/public.d.ts +54 -19
  43. package/dist/component/strava/public.d.ts.map +1 -1
  44. package/dist/component/strava/public.js +159 -109
  45. package/dist/component/strava/public.js.map +1 -1
  46. package/dist/component/strava/transform/activity.d.ts +19 -0
  47. package/dist/component/strava/transform/activity.d.ts.map +1 -0
  48. package/dist/{strava → component/strava/transform}/activity.js +31 -45
  49. package/dist/component/strava/transform/activity.js.map +1 -0
  50. package/dist/{strava → component/strava/transform}/athlete.d.ts +4 -10
  51. package/dist/component/strava/transform/athlete.d.ts.map +1 -0
  52. package/dist/{strava → component/strava/transform}/athlete.js +2 -8
  53. package/dist/component/strava/transform/athlete.js.map +1 -0
  54. package/dist/component/strava/transform/maps/sportType.d.ts +7 -0
  55. package/dist/component/strava/transform/maps/sportType.d.ts.map +1 -0
  56. package/dist/{strava/maps/sport-type.js → component/strava/transform/maps/sportType.js} +4 -2
  57. package/dist/component/strava/transform/maps/sportType.js.map +1 -0
  58. package/dist/component/strava/types/stravaApi/client/client.gen.d.ts +3 -0
  59. package/dist/component/strava/types/stravaApi/client/client.gen.d.ts.map +1 -0
  60. package/dist/component/strava/types/stravaApi/client/client.gen.js +236 -0
  61. package/dist/component/strava/types/stravaApi/client/client.gen.js.map +1 -0
  62. package/dist/component/strava/types/stravaApi/client/index.d.ts +9 -0
  63. package/dist/component/strava/types/stravaApi/client/index.d.ts.map +1 -0
  64. package/dist/component/strava/types/stravaApi/client/index.js +7 -0
  65. package/dist/component/strava/types/stravaApi/client/index.js.map +1 -0
  66. package/dist/component/strava/types/stravaApi/client/types.gen.d.ts +118 -0
  67. package/dist/component/strava/types/stravaApi/client/types.gen.d.ts.map +1 -0
  68. package/dist/component/strava/types/stravaApi/client/types.gen.js +3 -0
  69. package/dist/component/strava/types/stravaApi/client/types.gen.js.map +1 -0
  70. package/dist/component/strava/types/stravaApi/client/utils.gen.d.ts +34 -0
  71. package/dist/component/strava/types/stravaApi/client/utils.gen.d.ts.map +1 -0
  72. package/dist/component/strava/types/stravaApi/client/utils.gen.js +229 -0
  73. package/dist/component/strava/types/stravaApi/client/utils.gen.js.map +1 -0
  74. package/dist/component/strava/types/stravaApi/client.gen.d.ts +13 -0
  75. package/dist/component/strava/types/stravaApi/client.gen.d.ts.map +1 -0
  76. package/dist/component/strava/types/stravaApi/client.gen.js +4 -0
  77. package/dist/component/strava/types/stravaApi/client.gen.js.map +1 -0
  78. package/dist/component/strava/types/stravaApi/core/auth.gen.d.ts +19 -0
  79. package/dist/component/strava/types/stravaApi/core/auth.gen.d.ts.map +1 -0
  80. package/dist/component/strava/types/stravaApi/core/auth.gen.js +15 -0
  81. package/dist/component/strava/types/stravaApi/core/auth.gen.js.map +1 -0
  82. package/dist/component/strava/types/stravaApi/core/bodySerializer.gen.d.ts +26 -0
  83. package/dist/component/strava/types/stravaApi/core/bodySerializer.gen.d.ts.map +1 -0
  84. package/dist/component/strava/types/stravaApi/core/bodySerializer.gen.js +58 -0
  85. package/dist/component/strava/types/stravaApi/core/bodySerializer.gen.js.map +1 -0
  86. package/dist/component/strava/types/stravaApi/core/params.gen.d.ts +44 -0
  87. package/dist/component/strava/types/stravaApi/core/params.gen.d.ts.map +1 -0
  88. package/dist/component/strava/types/stravaApi/core/params.gen.js +101 -0
  89. package/dist/component/strava/types/stravaApi/core/params.gen.js.map +1 -0
  90. package/dist/component/strava/types/stravaApi/core/pathSerializer.gen.d.ts +34 -0
  91. package/dist/component/strava/types/stravaApi/core/pathSerializer.gen.d.ts.map +1 -0
  92. package/dist/component/strava/types/stravaApi/core/pathSerializer.gen.js +107 -0
  93. package/dist/component/strava/types/stravaApi/core/pathSerializer.gen.js.map +1 -0
  94. package/dist/component/strava/types/stravaApi/core/queryKeySerializer.gen.d.ts +19 -0
  95. package/dist/component/strava/types/stravaApi/core/queryKeySerializer.gen.d.ts.map +1 -0
  96. package/dist/component/strava/types/stravaApi/core/queryKeySerializer.gen.js +93 -0
  97. package/dist/component/strava/types/stravaApi/core/queryKeySerializer.gen.js.map +1 -0
  98. package/dist/component/strava/types/stravaApi/core/serverSentEvents.gen.d.ts +72 -0
  99. package/dist/component/strava/types/stravaApi/core/serverSentEvents.gen.d.ts.map +1 -0
  100. package/dist/component/strava/types/stravaApi/core/serverSentEvents.gen.js +134 -0
  101. package/dist/component/strava/types/stravaApi/core/serverSentEvents.gen.js.map +1 -0
  102. package/dist/component/strava/types/stravaApi/core/types.gen.d.ts +79 -0
  103. package/dist/component/strava/types/stravaApi/core/types.gen.d.ts.map +1 -0
  104. package/dist/component/strava/types/stravaApi/core/types.gen.js +3 -0
  105. package/dist/component/strava/types/stravaApi/core/types.gen.js.map +1 -0
  106. package/dist/component/strava/types/stravaApi/core/utils.gen.d.ts +20 -0
  107. package/dist/component/strava/types/stravaApi/core/utils.gen.d.ts.map +1 -0
  108. package/dist/component/strava/types/stravaApi/core/utils.gen.js +88 -0
  109. package/dist/component/strava/types/stravaApi/core/utils.gen.js.map +1 -0
  110. package/dist/component/strava/types/stravaApi/index.d.ts +3 -0
  111. package/dist/component/strava/types/stravaApi/index.d.ts.map +1 -0
  112. package/dist/component/strava/types/stravaApi/index.js +3 -0
  113. package/dist/component/strava/types/stravaApi/index.js.map +1 -0
  114. package/dist/component/strava/types/stravaApi/sdk.gen.d.ts +224 -0
  115. package/dist/component/strava/types/stravaApi/sdk.gen.d.ts.map +1 -0
  116. package/dist/component/strava/types/stravaApi/sdk.gen.js +361 -0
  117. package/dist/component/strava/types/stravaApi/sdk.gen.js.map +1 -0
  118. package/dist/component/strava/types/stravaApi/types.gen.d.ts +2209 -0
  119. package/dist/component/strava/types/stravaApi/types.gen.d.ts.map +1 -0
  120. package/dist/component/strava/types/stravaApi/types.gen.js +3 -0
  121. package/dist/component/strava/types/stravaApi/types.gen.js.map +1 -0
  122. package/dist/component/strava/types/stravaApi/zod.gen.d.ts +5332 -0
  123. package/dist/component/strava/types/stravaApi/zod.gen.d.ts.map +1 -0
  124. package/dist/component/strava/types/stravaApi/zod.gen.js +1009 -0
  125. package/dist/component/strava/types/stravaApi/zod.gen.js.map +1 -0
  126. package/dist/component/strava/utils.d.ts +15 -0
  127. package/dist/component/strava/utils.d.ts.map +1 -0
  128. package/dist/component/strava/utils.js +36 -0
  129. package/dist/component/strava/utils.js.map +1 -0
  130. package/dist/component/utils.d.ts +5 -0
  131. package/dist/component/utils.d.ts.map +1 -0
  132. package/dist/component/utils.js +11 -0
  133. package/dist/component/utils.js.map +1 -0
  134. package/package.json +131 -130
  135. package/src/client/index.ts +285 -164
  136. package/src/component/_generated/api.ts +18 -0
  137. package/src/component/_generated/component.ts +191 -24
  138. package/src/component/garmin/auth.ts +0 -9
  139. package/src/component/garmin/private.ts +84 -12
  140. package/src/component/garmin/public.ts +812 -348
  141. package/src/component/garmin/utils.ts +17 -0
  142. package/src/component/schema.ts +5 -3
  143. package/src/{strava → component/strava}/auth.ts +143 -185
  144. package/src/component/strava/client.ts +20 -0
  145. package/src/component/strava/private.ts +147 -89
  146. package/src/component/strava/public.ts +191 -139
  147. package/src/{strava → component/strava/transform}/activity.ts +256 -276
  148. package/src/{strava → component/strava/transform}/athlete.ts +41 -47
  149. package/src/{strava/maps/sport-type.ts → component/strava/transform/maps/sportType.ts} +100 -99
  150. package/src/component/strava/types/specs/strava-api.json +4796 -0
  151. package/src/component/strava/types/stravaApi/client/client.gen.ts +290 -0
  152. package/src/component/strava/types/stravaApi/client/index.ts +25 -0
  153. package/src/component/strava/types/stravaApi/client/types.gen.ts +214 -0
  154. package/src/component/strava/types/stravaApi/client/utils.gen.ts +316 -0
  155. package/src/component/strava/types/stravaApi/client.gen.ts +16 -0
  156. package/src/component/strava/types/stravaApi/core/auth.gen.ts +41 -0
  157. package/src/component/strava/types/stravaApi/core/bodySerializer.gen.ts +82 -0
  158. package/src/component/strava/types/stravaApi/core/params.gen.ts +169 -0
  159. package/src/component/strava/types/stravaApi/core/pathSerializer.gen.ts +171 -0
  160. package/src/component/strava/types/stravaApi/core/queryKeySerializer.gen.ts +117 -0
  161. package/src/component/strava/types/stravaApi/core/serverSentEvents.gen.ts +243 -0
  162. package/src/component/strava/types/stravaApi/core/types.gen.ts +104 -0
  163. package/src/component/strava/types/stravaApi/core/utils.gen.ts +140 -0
  164. package/src/component/strava/types/stravaApi/index.ts +4 -0
  165. package/src/component/strava/types/stravaApi/sdk.gen.ts +410 -0
  166. package/src/component/strava/types/stravaApi/types.gen.ts +2435 -0
  167. package/src/component/strava/types/stravaApi/zod.gen.ts +1132 -0
  168. package/src/component/strava/utils.ts +52 -0
  169. package/src/component/utils.ts +11 -0
  170. package/dist/strava/activity.d.ts +0 -121
  171. package/dist/strava/activity.d.ts.map +0 -1
  172. package/dist/strava/activity.js.map +0 -1
  173. package/dist/strava/athlete.d.ts.map +0 -1
  174. package/dist/strava/athlete.js.map +0 -1
  175. package/dist/strava/auth.d.ts.map +0 -1
  176. package/dist/strava/auth.js.map +0 -1
  177. package/dist/strava/client.d.ts +0 -93
  178. package/dist/strava/client.d.ts.map +0 -1
  179. package/dist/strava/client.js +0 -158
  180. package/dist/strava/client.js.map +0 -1
  181. package/dist/strava/index.d.ts +0 -13
  182. package/dist/strava/index.d.ts.map +0 -1
  183. package/dist/strava/index.js +0 -17
  184. package/dist/strava/index.js.map +0 -1
  185. package/dist/strava/maps/sport-type.d.ts +0 -7
  186. package/dist/strava/maps/sport-type.d.ts.map +0 -1
  187. package/dist/strava/maps/sport-type.js.map +0 -1
  188. package/dist/strava/sync.d.ts +0 -104
  189. package/dist/strava/sync.d.ts.map +0 -1
  190. package/dist/strava/sync.js +0 -87
  191. package/dist/strava/sync.js.map +0 -1
  192. package/dist/strava/types.d.ts +0 -266
  193. package/dist/strava/types.d.ts.map +0 -1
  194. package/dist/strava/types.js +0 -8
  195. package/dist/strava/types.js.map +0 -1
  196. package/src/strava/activity.test.ts +0 -415
  197. package/src/strava/athlete.test.ts +0 -139
  198. package/src/strava/auth.test.ts +0 -78
  199. package/src/strava/client.ts +0 -212
  200. package/src/strava/index.ts +0 -54
  201. package/src/strava/maps/sport-type.test.ts +0 -69
  202. package/src/strava/sync.ts +0 -168
  203. package/src/strava/types.ts +0 -361
@@ -1,99 +1,100 @@
1
- // ─── Strava SportType → Terra ActivityType ───────────────────────────────────
2
- // Maps Strava sport_type strings to Terra's ActivityType numeric enum
3
- // used by the Soma schema.
4
- //
5
- // Strava values: https://developers.strava.com/docs/reference/#api-models-SportType
6
- // Terra values: https://docs.tryterra.co/reference/health-and-fitness-api/data-models#activitytype
7
-
8
- import type { StravaSportType } from "../types.js";
9
-
10
- const sportTypeMap: Record<string, number> = {
11
- // ── Cycling ────────────────────────────────────────────────────────────────
12
- // Terra Biking = 1
13
- Ride: 1,
14
- MountainBikeRide: 1,
15
- GravelRide: 1,
16
- EBikeRide: 1,
17
- EMountainBikeRide: 1,
18
- VirtualRide: 1,
19
- Velomobile: 1,
20
-
21
- // ── Running ────────────────────────────────────────────────────────────────
22
- // Terra Running = 8
23
- Run: 8,
24
- TrailRun: 8,
25
- VirtualRun: 8,
26
-
27
- // ── Walking ────────────────────────────────────────────────────────────────
28
- // Terra Walking = 7
29
- Walk: 7,
30
-
31
- // ── Swimming ───────────────────────────────────────────────────────────────
32
- // Terra Swimming = 82
33
- Swim: 82,
34
-
35
- // ── Hiking ─────────────────────────────────────────────────────────────────
36
- // Terra Hiking = 35
37
- Hike: 35,
38
-
39
- // ── Snow Sports ────────────────────────────────────────────────────────────
40
- AlpineSki: 66, // Terra Alpine Skiing
41
- BackcountrySki: 66, // Terra Alpine Skiing
42
- NordicSki: 67, // Terra Cross Country Skiing
43
- Snowboard: 73, // Terra Snowboarding
44
- Snowshoe: 74, // Terra Snowshoeing
45
-
46
- // ── Water Sports ───────────────────────────────────────────────────────────
47
- Rowing: 53, // Terra Rowing
48
- VirtualRow: 53, // Terra Rowing
49
- Kayaking: 40, // Terra Kayaking
50
- Canoeing: 22, // Terra Canoeing
51
- Sail: 59, // Terra Sailing
52
- Surfing: 81, // Terra Surfing
53
- Kitesurf: 41, // Terra Kitesurfing
54
- Windsurf: 99, // Terra Windsurfing
55
- StandUpPaddling: 129, // Terra Paddling
56
-
57
- // ── Skating ────────────────────────────────────────────────────────────────
58
- IceSkate: 62, // Terra Skating
59
- InlineSkate: 62, // Terra Skating
60
- Skateboard: 62, // Terra Skating
61
- RollerSki: 62, // Terra Skating
62
-
63
- // ── Racket Sports ──────────────────────────────────────────────────────────
64
- Tennis: 87, // Terra Tennis
65
- TableTennis: 85, // Terra Table Tennis
66
- Badminton: 10, // Terra Badminton
67
- Racquetball: 51, // Terra Racquetball
68
- Squash: 76, // Terra Squash
69
- Pickleball: 108, // Terra Other (no direct mapping)
70
-
71
- // ── Gym / Fitness ──────────────────────────────────────────────────────────
72
- WeightTraining: 80, // Terra Strength Training
73
- Crossfit: 113, // Terra Crossfit
74
- Elliptical: 25, // Terra Elliptical
75
- StairStepper: 78, // Terra Stair Climbing Machine
76
- Yoga: 100, // Terra Yoga
77
- Pilates: 49, // Terra Pilates
78
- HighIntensityIntervalTraining: 114, // Terra HIIT
79
-
80
- // ── Climbing ───────────────────────────────────────────────────────────────
81
- RockClimbing: 52, // Terra Rock Climbing
82
-
83
- // ── Team Sports ────────────────────────────────────────────────────────────
84
- Soccer: 29, // Terra English Football
85
-
86
- // ── Other ──────────────────────────────────────────────────────────────────
87
- Golf: 32, // Terra Golf
88
- Handcycle: 14, // Terra Handbiking
89
- Wheelchair: 98, // Terra Wheelchair
90
- Workout: 108, // Terra Other
91
- };
92
-
93
- /**
94
- * Map a Strava sport_type string to the Terra ActivityType enum.
95
- * Returns Terra "Other" (108) for unknown types.
96
- */
97
- export function mapSportType(sportType: StravaSportType): number {
98
- return sportTypeMap[sportType] ?? 108;
99
- }
1
+ // ─── Strava SportType → Terra ActivityType ───────────────────────────────────
2
+ // Maps Strava sport_type strings to Terra's ActivityType numeric enum
3
+ // used by the Soma schema.
4
+ //
5
+ // Strava values: https://developers.strava.com/docs/reference/#api-models-SportType
6
+ // Terra values: https://docs.tryterra.co/reference/health-and-fitness-api/data-models#activitytype
7
+
8
+ import type { SportType } from "../../types/stravaApi/types.gen.js";
9
+
10
+ const sportTypeMap: Record<string, number> = {
11
+ // ── Cycling ────────────────────────────────────────────────────────────────
12
+ // Terra Biking = 1
13
+ Ride: 1,
14
+ MountainBikeRide: 1,
15
+ GravelRide: 1,
16
+ EBikeRide: 1,
17
+ EMountainBikeRide: 1,
18
+ VirtualRide: 1,
19
+ Velomobile: 1,
20
+
21
+ // ── Running ────────────────────────────────────────────────────────────────
22
+ // Terra Running = 8
23
+ Run: 8,
24
+ TrailRun: 8,
25
+ VirtualRun: 8,
26
+
27
+ // ── Walking ────────────────────────────────────────────────────────────────
28
+ // Terra Walking = 7
29
+ Walk: 7,
30
+
31
+ // ── Swimming ───────────────────────────────────────────────────────────────
32
+ // Terra Swimming = 82
33
+ Swim: 82,
34
+
35
+ // ── Hiking ─────────────────────────────────────────────────────────────────
36
+ // Terra Hiking = 35
37
+ Hike: 35,
38
+
39
+ // ── Snow Sports ────────────────────────────────────────────────────────────
40
+ AlpineSki: 66, // Terra Alpine Skiing
41
+ BackcountrySki: 66, // Terra Alpine Skiing
42
+ NordicSki: 67, // Terra Cross Country Skiing
43
+ Snowboard: 73, // Terra Snowboarding
44
+ Snowshoe: 74, // Terra Snowshoeing
45
+
46
+ // ── Water Sports ───────────────────────────────────────────────────────────
47
+ Rowing: 53, // Terra Rowing
48
+ VirtualRow: 53, // Terra Rowing
49
+ Kayaking: 40, // Terra Kayaking
50
+ Canoeing: 22, // Terra Canoeing
51
+ Sail: 59, // Terra Sailing
52
+ Surfing: 81, // Terra Surfing
53
+ Kitesurf: 41, // Terra Kitesurfing
54
+ Windsurf: 99, // Terra Windsurfing
55
+ StandUpPaddling: 129, // Terra Paddling
56
+
57
+ // ── Skating ────────────────────────────────────────────────────────────────
58
+ IceSkate: 62, // Terra Skating
59
+ InlineSkate: 62, // Terra Skating
60
+ Skateboard: 62, // Terra Skating
61
+ RollerSki: 62, // Terra Skating
62
+
63
+ // ── Racket Sports ──────────────────────────────────────────────────────────
64
+ Tennis: 87, // Terra Tennis
65
+ TableTennis: 85, // Terra Table Tennis
66
+ Badminton: 10, // Terra Badminton
67
+ Racquetball: 51, // Terra Racquetball
68
+ Squash: 76, // Terra Squash
69
+ Pickleball: 108, // Terra Other (no direct mapping)
70
+
71
+ // ── Gym / Fitness ──────────────────────────────────────────────────────────
72
+ WeightTraining: 80, // Terra Strength Training
73
+ Crossfit: 113, // Terra Crossfit
74
+ Elliptical: 25, // Terra Elliptical
75
+ StairStepper: 78, // Terra Stair Climbing Machine
76
+ Yoga: 100, // Terra Yoga
77
+ Pilates: 49, // Terra Pilates
78
+ HighIntensityIntervalTraining: 114, // Terra HIIT
79
+
80
+ // ── Climbing ───────────────────────────────────────────────────────────────
81
+ RockClimbing: 52, // Terra Rock Climbing
82
+
83
+ // ── Team Sports ────────────────────────────────────────────────────────────
84
+ Soccer: 29, // Terra English Football
85
+
86
+ // ── Other ──────────────────────────────────────────────────────────────────
87
+ Golf: 32, // Terra Golf
88
+ Handcycle: 14, // Terra Handbiking
89
+ Wheelchair: 98, // Terra Wheelchair
90
+ Workout: 108, // Terra Other
91
+ };
92
+
93
+ /**
94
+ * Map a Strava sport_type string to the Terra ActivityType enum.
95
+ * Returns Terra "Other" (108) for unknown or undefined types.
96
+ */
97
+ export function mapSportType(sportType: SportType | undefined): number {
98
+ if (!sportType) return 108;
99
+ return sportTypeMap[sportType] ?? 108;
100
+ }