@nativesquare/soma 0.6.0 → 0.7.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.
- package/dist/client/index.d.ts +151 -53
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +162 -69
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/component.d.ts +130 -17
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/garmin.d.ts +61 -43
- package/dist/component/garmin.d.ts.map +1 -1
- package/dist/component/garmin.js +208 -122
- package/dist/component/garmin.js.map +1 -1
- package/dist/component/public.d.ts +363 -0
- package/dist/component/public.d.ts.map +1 -1
- package/dist/component/public.js +124 -0
- package/dist/component/public.js.map +1 -1
- package/dist/component/schema.d.ts +7 -9
- package/dist/component/schema.d.ts.map +1 -1
- package/dist/component/schema.js +9 -10
- package/dist/component/schema.js.map +1 -1
- package/dist/component/strava.d.ts +0 -1
- package/dist/component/strava.d.ts.map +1 -1
- package/dist/component/strava.js +0 -1
- package/dist/component/strava.js.map +1 -1
- package/dist/component/validators/enums.d.ts +1 -1
- package/dist/garmin/auth.d.ts +55 -46
- package/dist/garmin/auth.d.ts.map +1 -1
- package/dist/garmin/auth.js +82 -122
- package/dist/garmin/auth.js.map +1 -1
- package/dist/garmin/client.d.ts +64 -17
- package/dist/garmin/client.d.ts.map +1 -1
- package/dist/garmin/client.js +143 -29
- package/dist/garmin/client.js.map +1 -1
- package/dist/garmin/index.d.ts +3 -3
- package/dist/garmin/index.d.ts.map +1 -1
- package/dist/garmin/index.js +4 -4
- package/dist/garmin/index.js.map +1 -1
- package/dist/garmin/plannedWorkout.d.ts +12 -0
- package/dist/garmin/plannedWorkout.d.ts.map +1 -0
- package/dist/garmin/plannedWorkout.js +267 -0
- package/dist/garmin/plannedWorkout.js.map +1 -0
- package/dist/garmin/types.d.ts +78 -6
- package/dist/garmin/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +147 -0
- package/src/component/_generated/component.ts +142 -0
- package/src/component/garmin.ts +118 -0
- package/src/component/public.ts +135 -0
- package/src/garmin/client.ts +164 -0
- package/src/garmin/plannedWorkout.ts +333 -0
- package/src/garmin/types.ts +143 -0
package/dist/client/index.js
CHANGED
|
@@ -78,20 +78,20 @@ export class Soma {
|
|
|
78
78
|
* Returns undefined if the required vars are not set.
|
|
79
79
|
*/
|
|
80
80
|
readGarminEnv() {
|
|
81
|
-
const
|
|
82
|
-
const
|
|
83
|
-
if (!
|
|
81
|
+
const clientId = process.env.GARMIN_CLIENT_ID;
|
|
82
|
+
const clientSecret = process.env.GARMIN_CLIENT_SECRET;
|
|
83
|
+
if (!clientId || !clientSecret)
|
|
84
84
|
return undefined;
|
|
85
|
-
return {
|
|
85
|
+
return { clientId, clientSecret };
|
|
86
86
|
}
|
|
87
87
|
/**
|
|
88
88
|
* Get the resolved Garmin config, or throw a clear error if not configured.
|
|
89
89
|
*/
|
|
90
90
|
requireGarminConfig() {
|
|
91
91
|
if (!this.garminConfig) {
|
|
92
|
-
throw new Error("Garmin is not configured. Either set
|
|
93
|
-
"
|
|
94
|
-
"or pass { garmin: {
|
|
92
|
+
throw new Error("Garmin is not configured. Either set GARMIN_CLIENT_ID and " +
|
|
93
|
+
"GARMIN_CLIENT_SECRET environment variables in the Convex dashboard, " +
|
|
94
|
+
"or pass { garmin: { clientId, clientSecret } } to the Soma constructor.");
|
|
95
95
|
}
|
|
96
96
|
return this.garminConfig;
|
|
97
97
|
}
|
|
@@ -511,6 +511,98 @@ export class Soma {
|
|
|
511
511
|
async getAthlete(ctx, args) {
|
|
512
512
|
return await ctx.runQuery(this.component.public.getAthlete, args);
|
|
513
513
|
}
|
|
514
|
+
// ── Planned Workouts ────────────────────────────────────────────────────────
|
|
515
|
+
/**
|
|
516
|
+
* Ingest a planned workout record.
|
|
517
|
+
*
|
|
518
|
+
* Upserts by `connectionId + metadata.id` when an id is present.
|
|
519
|
+
*
|
|
520
|
+
* @param ctx - Mutation context from the host app
|
|
521
|
+
* @param args - Planned workout data including connectionId, userId, metadata, and steps
|
|
522
|
+
* @returns The planned workout document ID
|
|
523
|
+
*/
|
|
524
|
+
async ingestPlannedWorkout(ctx, args) {
|
|
525
|
+
return await ctx.runMutation(this.component.public.ingestPlannedWorkout, args);
|
|
526
|
+
}
|
|
527
|
+
/**
|
|
528
|
+
* List planned workout records for a user, optionally filtered by planned date range.
|
|
529
|
+
*
|
|
530
|
+
* @param ctx - Query context from the host app
|
|
531
|
+
* @param args.userId - The host app's user identifier
|
|
532
|
+
* @param args.startDate - Optional lower bound (inclusive) on metadata.planned_date (YYYY-MM-DD)
|
|
533
|
+
* @param args.endDate - Optional upper bound (inclusive) on metadata.planned_date (YYYY-MM-DD)
|
|
534
|
+
* @param args.order - Sort order: "asc" or "desc" (default: "desc")
|
|
535
|
+
* @param args.limit - Optional max number of results to return
|
|
536
|
+
*/
|
|
537
|
+
async listPlannedWorkouts(ctx, args) {
|
|
538
|
+
return await ctx.runQuery(this.component.public.listPlannedWorkouts, args);
|
|
539
|
+
}
|
|
540
|
+
/**
|
|
541
|
+
* Paginate planned workout records for a user, optionally filtered by planned date range.
|
|
542
|
+
*
|
|
543
|
+
* Returns `{ page, isDone, continueCursor }` for cursor-based pagination.
|
|
544
|
+
*
|
|
545
|
+
* @param ctx - Query context from the host app
|
|
546
|
+
* @param args.userId - The host app's user identifier
|
|
547
|
+
* @param args.startDate - Optional lower bound (inclusive) on metadata.planned_date
|
|
548
|
+
* @param args.endDate - Optional upper bound (inclusive) on metadata.planned_date
|
|
549
|
+
* @param args.paginationOpts - Convex pagination options `{ numItems, cursor }`
|
|
550
|
+
*/
|
|
551
|
+
async paginatePlannedWorkouts(ctx, args) {
|
|
552
|
+
return await ctx.runQuery(this.component.public.paginatePlannedWorkouts, args);
|
|
553
|
+
}
|
|
554
|
+
/**
|
|
555
|
+
* Delete a planned workout by document ID.
|
|
556
|
+
*
|
|
557
|
+
* @param ctx - Mutation context from the host app
|
|
558
|
+
* @param args.plannedWorkoutId - The planned workout document ID
|
|
559
|
+
*/
|
|
560
|
+
async deletePlannedWorkout(ctx, args) {
|
|
561
|
+
return await ctx.runMutation(this.component.public.deletePlannedWorkout, args);
|
|
562
|
+
}
|
|
563
|
+
/**
|
|
564
|
+
* Get a single planned workout by document ID.
|
|
565
|
+
*
|
|
566
|
+
* @param ctx - Query context from the host app
|
|
567
|
+
* @param args.plannedWorkoutId - The planned workout document ID
|
|
568
|
+
*/
|
|
569
|
+
async getPlannedWorkout(ctx, args) {
|
|
570
|
+
return await ctx.runQuery(this.component.public.getPlannedWorkout, args);
|
|
571
|
+
}
|
|
572
|
+
/**
|
|
573
|
+
* Push a planned workout to Garmin Connect.
|
|
574
|
+
*
|
|
575
|
+
* Creates the workout on Garmin's Training API and optionally schedules it
|
|
576
|
+
* to the user's calendar if `metadata.planned_date` is set. The workout
|
|
577
|
+
* will appear on the user's Garmin device after they sync.
|
|
578
|
+
*
|
|
579
|
+
* @param ctx - Action context from the host app
|
|
580
|
+
* @param args.userId - The host app's user identifier
|
|
581
|
+
* @param args.plannedWorkoutId - The Soma planned workout document ID
|
|
582
|
+
* @param args.workoutProvider - Name shown to user in Garmin Connect (default: "Soma", 20 chars max)
|
|
583
|
+
* @returns `{ garminWorkoutId, garminScheduleId }`
|
|
584
|
+
*
|
|
585
|
+
* @example
|
|
586
|
+
* ```ts
|
|
587
|
+
* export const pushWorkout = action({
|
|
588
|
+
* args: { userId: v.string(), workoutId: v.string() },
|
|
589
|
+
* handler: async (ctx, { userId, workoutId }) => {
|
|
590
|
+
* return await soma.pushPlannedWorkoutToGarmin(ctx, {
|
|
591
|
+
* userId,
|
|
592
|
+
* plannedWorkoutId: workoutId,
|
|
593
|
+
* });
|
|
594
|
+
* },
|
|
595
|
+
* });
|
|
596
|
+
* ```
|
|
597
|
+
*/
|
|
598
|
+
async pushPlannedWorkoutToGarmin(ctx, args) {
|
|
599
|
+
const config = this.requireGarminConfig();
|
|
600
|
+
return await ctx.runAction(this.component.garmin.pushPlannedWorkout, {
|
|
601
|
+
...args,
|
|
602
|
+
clientId: config.clientId,
|
|
603
|
+
clientSecret: config.clientSecret,
|
|
604
|
+
});
|
|
605
|
+
}
|
|
514
606
|
// ─── Strava Integration ──────────────────────────────────────────────────────
|
|
515
607
|
// High-level methods that handle OAuth, token storage, and data syncing
|
|
516
608
|
// for Strava. Requires Strava credentials to be configured either via
|
|
@@ -638,63 +730,60 @@ export class Soma {
|
|
|
638
730
|
});
|
|
639
731
|
}
|
|
640
732
|
// ─── Garmin Integration ──────────────────────────────────────────────────────
|
|
641
|
-
// High-level methods that handle OAuth
|
|
642
|
-
// for Garmin. Requires Garmin credentials to be configured either
|
|
643
|
-
// environment variables or the constructor.
|
|
733
|
+
// High-level methods that handle OAuth 2.0 PKCE, token storage, and data
|
|
734
|
+
// syncing for Garmin. Requires Garmin credentials to be configured either
|
|
735
|
+
// via environment variables or the constructor.
|
|
644
736
|
/**
|
|
645
|
-
*
|
|
737
|
+
* Generate a Garmin OAuth 2.0 authorization URL with PKCE.
|
|
646
738
|
*
|
|
647
|
-
* Returns the
|
|
648
|
-
*
|
|
739
|
+
* Returns the `authUrl` to redirect the user to, along with the `state`
|
|
740
|
+
* and `codeVerifier` used for the PKCE flow.
|
|
649
741
|
*
|
|
650
|
-
* If `userId` is provided, the
|
|
651
|
-
*
|
|
652
|
-
*
|
|
653
|
-
*
|
|
742
|
+
* If `userId` is provided, the PKCE state is stored inside the component
|
|
743
|
+
* automatically, and the callback handler registered by `registerRoutes`
|
|
744
|
+
* will complete the flow without further host-app intervention. This is
|
|
745
|
+
* the recommended approach.
|
|
654
746
|
*
|
|
655
|
-
* If `userId` is omitted, the host app must store
|
|
656
|
-
* itself and pass
|
|
747
|
+
* If `userId` is omitted, the host app must store the returned
|
|
748
|
+
* `codeVerifier` itself and pass it to `connectGarmin` manually.
|
|
657
749
|
*
|
|
658
750
|
* @param ctx - Action context from the host app
|
|
659
|
-
* @param opts.
|
|
751
|
+
* @param opts.redirectUri - The URL Garmin will redirect to after authorization
|
|
660
752
|
* @param opts.userId - The host app's user identifier (required for `registerRoutes` flow)
|
|
661
|
-
* @returns `{
|
|
753
|
+
* @returns `{ authUrl, state, codeVerifier }`
|
|
662
754
|
*
|
|
663
755
|
* @example
|
|
664
756
|
* ```ts
|
|
665
|
-
*
|
|
666
|
-
* const { authUrl } = await soma.getGarminRequestToken(ctx, {
|
|
757
|
+
* const { authUrl } = await soma.getGarminAuthUrl(ctx, {
|
|
667
758
|
* userId: "user_123",
|
|
668
|
-
*
|
|
759
|
+
* redirectUri: "https://your-app.convex.site/api/garmin/callback",
|
|
669
760
|
* });
|
|
670
761
|
* // Redirect user to authUrl — the callback is handled automatically
|
|
671
762
|
* ```
|
|
672
763
|
*/
|
|
673
|
-
async
|
|
764
|
+
async getGarminAuthUrl(ctx, opts) {
|
|
674
765
|
const config = this.requireGarminConfig();
|
|
675
|
-
return await ctx.runAction(this.component.garmin.
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
callbackUrl: opts.callbackUrl,
|
|
766
|
+
return await ctx.runAction(this.component.garmin.getGarminAuthUrl, {
|
|
767
|
+
clientId: config.clientId,
|
|
768
|
+
redirectUri: opts.redirectUri,
|
|
679
769
|
userId: opts.userId,
|
|
680
770
|
});
|
|
681
771
|
}
|
|
682
772
|
/**
|
|
683
|
-
*
|
|
773
|
+
* Handle the Garmin OAuth 2.0 callback (manual flow).
|
|
684
774
|
*
|
|
685
|
-
* Exchanges the
|
|
686
|
-
*
|
|
687
|
-
*
|
|
688
|
-
* sleep, body composition, menstruation).
|
|
775
|
+
* Exchanges the authorization code for tokens, creates/reactivates the
|
|
776
|
+
* Soma connection, stores tokens securely, and syncs the last 30 days
|
|
777
|
+
* of all data types.
|
|
689
778
|
*
|
|
690
|
-
* Call this from your OAuth callback endpoint after receiving the
|
|
691
|
-
*
|
|
779
|
+
* Call this from your OAuth callback endpoint after receiving the `code`
|
|
780
|
+
* query parameter from Garmin.
|
|
692
781
|
*
|
|
693
782
|
* @param ctx - Action context from the host app
|
|
694
783
|
* @param args.userId - The host app's user identifier
|
|
695
|
-
* @param args.
|
|
696
|
-
* @param args.
|
|
697
|
-
* @param args.
|
|
784
|
+
* @param args.code - The authorization code from the callback
|
|
785
|
+
* @param args.codeVerifier - The PKCE code verifier from Step 1
|
|
786
|
+
* @param args.redirectUri - The redirect URI used in the authorization request
|
|
698
787
|
* @returns `{ connectionId, synced, errors }`
|
|
699
788
|
*
|
|
700
789
|
* @example
|
|
@@ -702,9 +791,8 @@ export class Soma {
|
|
|
702
791
|
* export const handleGarminCallback = action({
|
|
703
792
|
* args: {
|
|
704
793
|
* userId: v.string(),
|
|
705
|
-
*
|
|
706
|
-
*
|
|
707
|
-
* verifier: v.string(),
|
|
794
|
+
* code: v.string(),
|
|
795
|
+
* codeVerifier: v.string(),
|
|
708
796
|
* },
|
|
709
797
|
* handler: async (ctx, args) => {
|
|
710
798
|
* return await soma.connectGarmin(ctx, args);
|
|
@@ -716,28 +804,29 @@ export class Soma {
|
|
|
716
804
|
const config = this.requireGarminConfig();
|
|
717
805
|
return await ctx.runAction(this.component.garmin.connectGarmin, {
|
|
718
806
|
...args,
|
|
719
|
-
|
|
720
|
-
|
|
807
|
+
clientId: config.clientId,
|
|
808
|
+
clientSecret: config.clientSecret,
|
|
721
809
|
});
|
|
722
810
|
}
|
|
723
811
|
/**
|
|
724
|
-
* Complete a Garmin OAuth flow using stored pending state.
|
|
812
|
+
* Complete a Garmin OAuth 2.0 flow using stored pending state.
|
|
725
813
|
*
|
|
726
814
|
* This is called automatically by the `registerRoutes` callback handler.
|
|
727
|
-
* It looks up the pending OAuth state stored during `
|
|
728
|
-
* exchanges for
|
|
815
|
+
* It looks up the pending OAuth state stored during `getGarminAuthUrl`,
|
|
816
|
+
* exchanges for tokens, creates the connection, and syncs data.
|
|
729
817
|
*
|
|
730
818
|
* @param ctx - Action context from the host app
|
|
731
|
-
* @param args.
|
|
732
|
-
* @param args.
|
|
819
|
+
* @param args.code - The authorization code from the callback query params
|
|
820
|
+
* @param args.state - The state parameter from the callback query params
|
|
821
|
+
* @param args.redirectUri - The redirect URI used in the authorization request
|
|
733
822
|
* @returns `{ connectionId, synced, errors }`
|
|
734
823
|
*/
|
|
735
824
|
async completeGarminOAuth(ctx, args) {
|
|
736
825
|
const config = this.requireGarminConfig();
|
|
737
826
|
return await ctx.runAction(this.component.garmin.completeGarminOAuth, {
|
|
738
827
|
...args,
|
|
739
|
-
|
|
740
|
-
|
|
828
|
+
clientId: config.clientId,
|
|
829
|
+
clientSecret: config.clientSecret,
|
|
741
830
|
});
|
|
742
831
|
}
|
|
743
832
|
/**
|
|
@@ -745,6 +834,7 @@ export class Soma {
|
|
|
745
834
|
*
|
|
746
835
|
* Fetches activities, dailies, sleep, body composition, and menstruation
|
|
747
836
|
* data for the specified time range (defaults to last 30 days).
|
|
837
|
+
* Automatically refreshes expired tokens.
|
|
748
838
|
*
|
|
749
839
|
* @param ctx - Action context from the host app
|
|
750
840
|
* @param args.userId - The host app's user identifier
|
|
@@ -766,16 +856,15 @@ export class Soma {
|
|
|
766
856
|
const config = this.requireGarminConfig();
|
|
767
857
|
return await ctx.runAction(this.component.garmin.syncGarmin, {
|
|
768
858
|
...args,
|
|
769
|
-
|
|
770
|
-
|
|
859
|
+
clientId: config.clientId,
|
|
860
|
+
clientSecret: config.clientSecret,
|
|
771
861
|
});
|
|
772
862
|
}
|
|
773
863
|
/**
|
|
774
864
|
* Disconnect a user from Garmin.
|
|
775
865
|
*
|
|
776
|
-
*
|
|
777
|
-
*
|
|
778
|
-
* is local only.
|
|
866
|
+
* Deregisters the user at Garmin (best-effort), deletes stored tokens,
|
|
867
|
+
* and sets the connection to inactive.
|
|
779
868
|
*
|
|
780
869
|
* @param ctx - Action context from the host app
|
|
781
870
|
* @param args.userId - The host app's user identifier
|
|
@@ -897,25 +986,29 @@ export function registerRoutes(http, component, opts) {
|
|
|
897
986
|
method: "GET",
|
|
898
987
|
handler: httpActionGeneric(async (ctx, request) => {
|
|
899
988
|
const url = new URL(request.url);
|
|
900
|
-
const
|
|
901
|
-
const
|
|
902
|
-
if (!
|
|
903
|
-
return new Response("Missing
|
|
989
|
+
const code = url.searchParams.get("code");
|
|
990
|
+
const state = url.searchParams.get("state");
|
|
991
|
+
if (!code) {
|
|
992
|
+
return new Response("Missing authorization code", {
|
|
904
993
|
status: 400,
|
|
905
994
|
});
|
|
906
995
|
}
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
996
|
+
if (!state) {
|
|
997
|
+
return new Response("Missing state parameter. Ensure the state was included " +
|
|
998
|
+
"when building the Garmin auth URL.", { status: 400 });
|
|
999
|
+
}
|
|
1000
|
+
const clientId = garmin.clientId ?? process.env.GARMIN_CLIENT_ID;
|
|
1001
|
+
const clientSecret = garmin.clientSecret ?? process.env.GARMIN_CLIENT_SECRET;
|
|
1002
|
+
if (!clientId || !clientSecret) {
|
|
1003
|
+
return new Response("Garmin credentials not configured. Set GARMIN_CLIENT_ID and " +
|
|
1004
|
+
"GARMIN_CLIENT_SECRET environment variables, or pass them to registerRoutes.", { status: 500 });
|
|
912
1005
|
}
|
|
913
1006
|
try {
|
|
914
1007
|
await ctx.runAction(component.garmin.completeGarminOAuth, {
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
1008
|
+
code,
|
|
1009
|
+
state,
|
|
1010
|
+
clientId,
|
|
1011
|
+
clientSecret,
|
|
919
1012
|
});
|
|
920
1013
|
}
|
|
921
1014
|
catch (error) {
|
package/dist/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,10 +21,11 @@ import type { FunctionReference } from "convex/server";
|
|
|
21
21
|
export type ComponentApi<Name extends string | undefined = string | undefined> = {
|
|
22
22
|
garmin: {
|
|
23
23
|
completeGarminOAuth: FunctionReference<"action", "internal", {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
clientId: string;
|
|
25
|
+
clientSecret: string;
|
|
26
|
+
code: string;
|
|
27
|
+
redirectUri?: string;
|
|
28
|
+
state: string;
|
|
28
29
|
}, {
|
|
29
30
|
connectionId: string;
|
|
30
31
|
errors: Array<{
|
|
@@ -41,12 +42,12 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
41
42
|
};
|
|
42
43
|
}, Name>;
|
|
43
44
|
connectGarmin: FunctionReference<"action", "internal", {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
clientId: string;
|
|
46
|
+
clientSecret: string;
|
|
47
|
+
code: string;
|
|
48
|
+
codeVerifier: string;
|
|
49
|
+
redirectUri?: string;
|
|
48
50
|
userId: string;
|
|
49
|
-
verifier: string;
|
|
50
51
|
}, {
|
|
51
52
|
connectionId: string;
|
|
52
53
|
errors: Array<{
|
|
@@ -65,19 +66,28 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
65
66
|
disconnectGarmin: FunctionReference<"action", "internal", {
|
|
66
67
|
userId: string;
|
|
67
68
|
}, null, Name>;
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
consumerSecret: string;
|
|
69
|
+
getGarminAuthUrl: FunctionReference<"action", "internal", {
|
|
70
|
+
clientId: string;
|
|
71
|
+
redirectUri?: string;
|
|
72
72
|
userId?: string;
|
|
73
73
|
}, {
|
|
74
74
|
authUrl: string;
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
codeVerifier: string;
|
|
76
|
+
state: string;
|
|
77
|
+
}, Name>;
|
|
78
|
+
pushPlannedWorkout: FunctionReference<"action", "internal", {
|
|
79
|
+
clientId: string;
|
|
80
|
+
clientSecret: string;
|
|
81
|
+
plannedWorkoutId: string;
|
|
82
|
+
userId: string;
|
|
83
|
+
workoutProvider?: string;
|
|
84
|
+
}, {
|
|
85
|
+
garminScheduleId: number | null;
|
|
86
|
+
garminWorkoutId: number;
|
|
77
87
|
}, Name>;
|
|
78
88
|
syncGarmin: FunctionReference<"action", "internal", {
|
|
79
|
-
|
|
80
|
-
|
|
89
|
+
clientId: string;
|
|
90
|
+
clientSecret: string;
|
|
81
91
|
endTimeInSeconds?: number;
|
|
82
92
|
startTimeInSeconds?: number;
|
|
83
93
|
userId: string;
|
|
@@ -104,6 +114,9 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
104
114
|
deleteConnection: FunctionReference<"mutation", "internal", {
|
|
105
115
|
connectionId: string;
|
|
106
116
|
}, null, Name>;
|
|
117
|
+
deletePlannedWorkout: FunctionReference<"mutation", "internal", {
|
|
118
|
+
plannedWorkoutId: string;
|
|
119
|
+
}, null, Name>;
|
|
107
120
|
disconnect: FunctionReference<"mutation", "internal", {
|
|
108
121
|
provider: string;
|
|
109
122
|
userId: string;
|
|
@@ -132,6 +145,9 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
132
145
|
provider: string;
|
|
133
146
|
userId: string;
|
|
134
147
|
}, Name>;
|
|
148
|
+
getPlannedWorkout: FunctionReference<"query", "internal", {
|
|
149
|
+
plannedWorkoutId: string;
|
|
150
|
+
}, any, Name>;
|
|
135
151
|
ingestActivity: FunctionReference<"mutation", "internal", {
|
|
136
152
|
MET_data?: {
|
|
137
153
|
MET_samples?: Array<{
|
|
@@ -978,6 +994,83 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
978
994
|
};
|
|
979
995
|
userId: string;
|
|
980
996
|
}, string, Name>;
|
|
997
|
+
ingestPlannedWorkout: FunctionReference<"mutation", "internal", {
|
|
998
|
+
connectionId: string;
|
|
999
|
+
metadata: {
|
|
1000
|
+
created_date?: string;
|
|
1001
|
+
description?: string;
|
|
1002
|
+
estimated_calories?: number;
|
|
1003
|
+
estimated_distance_meters?: number;
|
|
1004
|
+
estimated_duration_seconds?: number;
|
|
1005
|
+
estimated_elevation_gain_meters?: number;
|
|
1006
|
+
estimated_energy_kj?: number;
|
|
1007
|
+
estimated_if?: number;
|
|
1008
|
+
estimated_pace_minutes_per_kilometer?: number;
|
|
1009
|
+
estimated_speed_meters_per_second?: number;
|
|
1010
|
+
estimated_tscore?: number;
|
|
1011
|
+
estimated_tss?: number;
|
|
1012
|
+
id?: string;
|
|
1013
|
+
name?: string;
|
|
1014
|
+
planned_date?: string;
|
|
1015
|
+
pool_length_meters?: number;
|
|
1016
|
+
provider?: string;
|
|
1017
|
+
type?: string;
|
|
1018
|
+
};
|
|
1019
|
+
steps?: Array<{
|
|
1020
|
+
description?: string;
|
|
1021
|
+
durations?: Array<{
|
|
1022
|
+
calories?: number;
|
|
1023
|
+
distance_meters?: number;
|
|
1024
|
+
duration_type?: string;
|
|
1025
|
+
hr_above_bpm?: number;
|
|
1026
|
+
hr_below_bpm?: number;
|
|
1027
|
+
power_above_watts?: number;
|
|
1028
|
+
power_below_watts?: number;
|
|
1029
|
+
reps?: number;
|
|
1030
|
+
rest_seconds?: number;
|
|
1031
|
+
seconds?: number;
|
|
1032
|
+
steps?: number;
|
|
1033
|
+
}>;
|
|
1034
|
+
equipment_type?: string;
|
|
1035
|
+
exercise_category?: string;
|
|
1036
|
+
exercise_name?: string;
|
|
1037
|
+
intensity?: string | number;
|
|
1038
|
+
name?: string;
|
|
1039
|
+
order?: number;
|
|
1040
|
+
steps?: Array<any>;
|
|
1041
|
+
stroke_type?: string;
|
|
1042
|
+
targets?: Array<{
|
|
1043
|
+
cadence?: number;
|
|
1044
|
+
cadence_high?: number;
|
|
1045
|
+
cadence_low?: number;
|
|
1046
|
+
hr_bpm_high?: number;
|
|
1047
|
+
hr_bpm_low?: number;
|
|
1048
|
+
hr_percentage?: number;
|
|
1049
|
+
hr_percentage_high?: number;
|
|
1050
|
+
hr_percentage_low?: number;
|
|
1051
|
+
if_high?: number;
|
|
1052
|
+
if_low?: number;
|
|
1053
|
+
pace_minutes_per_kilometer?: number;
|
|
1054
|
+
power_percentage?: number;
|
|
1055
|
+
power_percentage_high?: number;
|
|
1056
|
+
power_percentage_low?: number;
|
|
1057
|
+
power_watt?: number;
|
|
1058
|
+
power_watt_high?: number;
|
|
1059
|
+
power_watt_low?: number;
|
|
1060
|
+
repetitions?: number;
|
|
1061
|
+
speed_meters_per_second?: number;
|
|
1062
|
+
speed_percentage?: number;
|
|
1063
|
+
speed_percentage_high?: number;
|
|
1064
|
+
speed_percentage_low?: number;
|
|
1065
|
+
swim_strokes?: number;
|
|
1066
|
+
target_type?: string;
|
|
1067
|
+
tss?: number;
|
|
1068
|
+
}>;
|
|
1069
|
+
type?: string;
|
|
1070
|
+
weight_kg?: number;
|
|
1071
|
+
}>;
|
|
1072
|
+
userId: string;
|
|
1073
|
+
}, string, Name>;
|
|
981
1074
|
ingestSleep: FunctionReference<"mutation", "internal", {
|
|
982
1075
|
connectionId: string;
|
|
983
1076
|
data_enrichment?: {
|
|
@@ -1171,6 +1264,13 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
1171
1264
|
startTime?: string;
|
|
1172
1265
|
userId: string;
|
|
1173
1266
|
}, any, Name>;
|
|
1267
|
+
listPlannedWorkouts: FunctionReference<"query", "internal", {
|
|
1268
|
+
endDate?: string;
|
|
1269
|
+
limit?: number;
|
|
1270
|
+
order?: "asc" | "desc";
|
|
1271
|
+
startDate?: string;
|
|
1272
|
+
userId: string;
|
|
1273
|
+
}, any, Name>;
|
|
1174
1274
|
listSleep: FunctionReference<"query", "internal", {
|
|
1175
1275
|
endTime?: string;
|
|
1176
1276
|
limit?: number;
|
|
@@ -1243,6 +1343,19 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
|
|
|
1243
1343
|
startTime?: string;
|
|
1244
1344
|
userId: string;
|
|
1245
1345
|
}, any, Name>;
|
|
1346
|
+
paginatePlannedWorkouts: FunctionReference<"query", "internal", {
|
|
1347
|
+
endDate?: string;
|
|
1348
|
+
paginationOpts: {
|
|
1349
|
+
cursor: string | null;
|
|
1350
|
+
endCursor?: string | null;
|
|
1351
|
+
id?: number;
|
|
1352
|
+
maximumBytesRead?: number;
|
|
1353
|
+
maximumRowsRead?: number;
|
|
1354
|
+
numItems: number;
|
|
1355
|
+
};
|
|
1356
|
+
startDate?: string;
|
|
1357
|
+
userId: string;
|
|
1358
|
+
}, any, Name>;
|
|
1246
1359
|
paginateSleep: FunctionReference<"query", "internal", {
|
|
1247
1360
|
endTime?: string;
|
|
1248
1361
|
paginationOpts: {
|