@globalscoutme/api-client 1.0.11 → 1.0.14

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/README.md CHANGED
@@ -1,119 +1,197 @@
1
- # @globalscoutme/api-client
2
-
3
- Auto-generated TypeScript HTTP client for the GlobalScoutMe API, built with [`@hey-api/openapi-ts`](https://heyapi.dev/) and axios.
4
-
5
- ## Install
6
-
7
- ```bash
8
- npm install @globalscoutme/api-client
9
- ```
10
-
11
- ## Setup
12
-
13
- Configure the client once at app startup with your API base URL and auth token:
14
-
15
- ```ts
16
- import { client } from '@globalscoutme/api-client';
17
-
18
- client.setConfig({
19
- baseURL: 'https://your-api-url.com',
20
- headers: {
21
- Authorization: `Bearer ${yourSupabaseAccessToken}`,
22
- },
23
- });
24
- ```
25
-
26
- ## Usage
27
-
28
- All endpoints are grouped by controller and fully typed:
29
-
30
- ```ts
31
- import { Players, Profile, Documents, Videos, Achievements, Body, Index, Offers, Organizations, Storage } from '@globalscoutme/api-client';
32
-
33
- // Players
34
- const player = await Players.getPlayersMe();
35
- await Players.patchPlayersMe({ body: { fullName: 'John Doe' } });
36
- await Players.deletePlayersMe();
37
- const dashboard = await Players.getPlayersMeDashboard();
38
- const results = await Players.searchPlayers({
39
- body: {
40
- search: 'John',
41
- page: 1,
42
- pageSize: 20,
43
- sortBy: 'age_asc',
44
- nationalities: ['EG', 'MA'],
45
- positions: ['CM', 'CB'],
46
- baseFoot: 'right',
47
- isFreeAgent: true,
48
- hasVideo: true,
49
- heightOperator: 'gte',
50
- heightCm: 180,
51
- },
52
- });
53
- const playerProfile = await Players.getPlayerById({ path: { id: 'player-uuid' } });
54
-
55
- // Profile
56
- const profile = await Profile.getProfileMe();
57
- await Profile.putProfileMe({ body: { dominantFoot: 'Right' } });
58
-
59
- // Documents
60
- const docs = await Documents.getDocumentsMe();
61
- await Documents.postDocuments({ body: { type: 'license' } });
62
-
63
- // Videos
64
- const videos = await Videos.getVideosMe();
65
- await Videos.postVideos({ body: { type: 'cmj', storagePath: 'path/to/video' } });
66
- await Videos.deleteVideosById({ path: { id: 'video-id' } });
67
-
68
- // Achievements
69
- const achievements = await Achievements.getAchievementsMe();
70
- await Achievements.postAchievements({ body: { title: 'Top scorer' } });
71
-
72
- // Body measurements
73
- const measurement = await Body.getBodyMeasurementsMe();
74
- await Body.postBodyMeasurements({ body: { heightCm: 180 } });
75
-
76
- // Index (lookup tables)
77
- const positions = await Index.getIndexByTableName({ path: { tableName: 'positions' } });
78
-
79
- // Offers (conversations between scouts and players)
80
- const conversations = await Offers.listConversations({ query: { filter: 'all', page: 1, pageSize: 20 } });
81
- const conversation = await Offers.createConversation({ body: { playerId: 'player-uuid', initialMessage: 'Hi!' } });
82
- const messages = await Offers.listMessages({ path: { id: 'conversation-uuid' }, query: { page: 1, pageSize: 20 } });
83
- await Offers.sendMessage({ path: { id: 'conversation-uuid' }, body: { body: 'Looking forward to it!' } });
84
- await Offers.markConversationRead({ path: { id: 'conversation-uuid' } });
85
-
86
- // Organizations
87
- const org = await Organizations.getOrganizationsMe();
88
-
89
- // Storage get a signed upload URL, then PUT the file directly to Supabase Storage
90
- const { uploadUrl, token, path, bucket, expiresIn } = await Storage.createUploadUrl({
91
- body: { bucket: 'avatars', contentType: 'image/jpeg', sizeBytes: 204800 },
92
- });
93
- await fetch(uploadUrl, { method: 'PUT', body: fileBlob, headers: { 'Content-Type': 'image/jpeg' } });
94
- // persist `path` on the player record (e.g. patchPlayersMe with avatarPath: path)
95
- ```
96
-
97
- ## Updating auth token
98
-
99
- Update the Bearer token after sign-in or token refresh:
100
-
101
- ```ts
102
- client.setConfig({
103
- headers: {
104
- Authorization: `Bearer ${newAccessToken}`,
105
- },
106
- });
107
- ```
108
-
109
- ## Versioning
110
-
111
- This package is auto-generated from the backend OpenAPI spec. Version increments follow semver:
112
-
113
- - **patch** — no API shape changes
114
- - **minor** new endpoints added
115
- - **major** breaking changes (renamed/removed endpoints or fields)
116
-
117
- ## Package format
118
-
119
- The published package ships compiled JavaScript (`dist/`) alongside the raw TypeScript source. `main` points to `dist/index.js` so all bundlers work without extra configuration.
1
+ # @globalscoutme/api-client
2
+
3
+ Auto-generated TypeScript HTTP client for the GlobalScoutMe API, built with [`@hey-api/openapi-ts`](https://heyapi.dev/) and axios.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @globalscoutme/api-client
9
+ ```
10
+
11
+ ## Setup
12
+
13
+ Configure the client once at app startup with your API base URL and auth token:
14
+
15
+ ```ts
16
+ import { client } from '@globalscoutme/api-client';
17
+
18
+ client.setConfig({
19
+ baseURL: 'https://your-api-url.com',
20
+ headers: {
21
+ Authorization: `Bearer ${yourSupabaseAccessToken}`,
22
+ },
23
+ });
24
+ ```
25
+
26
+ ## Usage
27
+
28
+ All endpoints are grouped by controller and fully typed:
29
+
30
+ ```ts
31
+ import {
32
+ Auth,
33
+ Players,
34
+ Profile,
35
+ Documents,
36
+ Videos,
37
+ Achievements,
38
+ Body,
39
+ Index,
40
+ Offers,
41
+ Organizations,
42
+ Clubs,
43
+ Challenges,
44
+ Training,
45
+ Invitations,
46
+ Storage,
47
+ } from '@globalscoutme/api-client';
48
+
49
+ // Auth
50
+ const authMe = await Auth.getAuthMe();
51
+ // Returns { id: string, userType: string | null }
52
+
53
+ // Players
54
+ const player = await Players.getMe();
55
+ await Players.patchMe({ body: { fullName: 'John Doe' } });
56
+ await Players.deleteMe();
57
+ const dashboard = await Players.getMyDashboard();
58
+ await Players.heartbeat({ body: { timezone: 'Europe/Bucharest' } });
59
+ const results = await Players.searchPlayers({
60
+ body: {
61
+ search: 'John',
62
+ page: 1,
63
+ pageSize: 20,
64
+ sortBy: 'age_asc',
65
+ nationalities: ['EG', 'MA'],
66
+ positions: ['CM', 'CB'],
67
+ baseFoot: 'right',
68
+ isFreeAgent: true,
69
+ hasVideo: true,
70
+ heightOperator: 'gte',
71
+ heightCm: 180,
72
+ },
73
+ });
74
+ const playerProfile = await Players.getPlayerById({
75
+ path: { id: 'player-uuid' },
76
+ });
77
+
78
+ // Profile
79
+ const profile = await Profile.getProfileMe();
80
+ await Profile.updateProfileMe({ body: { dominantFoot: 'Right' } });
81
+
82
+ // Documents
83
+ const docs = await Documents.getMyDocuments();
84
+ await Documents.createDocument({ body: { type: 'license' } });
85
+
86
+ // Videos
87
+ const videos = await Videos.getMyVideos();
88
+ await Videos.createVideo({
89
+ body: { type: 'cmj', storagePath: 'path/to/video' },
90
+ });
91
+ const playUrl = await Videos.getVideoPlayUrl({ path: { id: 'video-uuid' } });
92
+ await Videos.deleteVideo({ path: { id: 'video-uuid' } });
93
+
94
+ // Achievements
95
+ const catalog = await Achievements.getAchievementsCatalog();
96
+ const myAchievements = await Achievements.getMyAchievements();
97
+
98
+ // Body measurements
99
+ const measurement = await Body.getMyMeasurements();
100
+ await Body.createMeasurement({ body: { heightCm: 180 } });
101
+
102
+ // Index (lookup tables)
103
+ const positions = await Index.getIndexItems({
104
+ path: { tableName: 'positions' },
105
+ });
106
+
107
+ // Offers (conversations between scouts and players)
108
+ const conversations = await Offers.listConversations({
109
+ query: { filter: 'all', page: 1, pageSize: 20 },
110
+ });
111
+ const conversation = await Offers.createConversation({
112
+ body: { playerId: 'player-uuid', initialMessage: 'Hi!' },
113
+ });
114
+ const messages = await Offers.listMessages({
115
+ path: { id: 'conversation-uuid' },
116
+ query: { page: 1, pageSize: 20 },
117
+ });
118
+ await Offers.sendMessage({
119
+ path: { id: 'conversation-uuid' },
120
+ body: { body: 'Looking forward to it!' },
121
+ });
122
+ await Offers.markConversationRead({ path: { id: 'conversation-uuid' } });
123
+
124
+ // Organizations
125
+ const org = await Organizations.getMyOrganization();
126
+ await Organizations.updateMyOrganization({ body: { name: 'FC Example' } });
127
+ await Organizations.registerClub({
128
+ body: { name: 'FC Example', email: 'admin@example.com' },
129
+ });
130
+
131
+ // Clubs (coach/admin club entries within an organization)
132
+ const clubs = await Clubs.getMyClubs();
133
+ const club = await Clubs.createMyClub({ body: { name: 'U19 Team' } });
134
+ await Clubs.updateMyClub({
135
+ path: { id: 'club-uuid' },
136
+ body: { name: 'U21 Team' },
137
+ });
138
+ await Clubs.deleteMyClub({ path: { id: 'club-uuid' } });
139
+
140
+ // Challenges
141
+ const challengeCatalog = await Challenges.getChallengesCatalog();
142
+ const myChallenges = await Challenges.getMyChallenges();
143
+
144
+ // Training
145
+ const grouped = await Training.getTrainingGrouped();
146
+ const trainingList = await Training.getTrainingList({
147
+ query: { categoryCode: 'fitness', page: 1, pageSize: 20 },
148
+ });
149
+ const trainingItem = await Training.getTrainingById({
150
+ path: { id: 'training-uuid' },
151
+ });
152
+
153
+ // Invitations (org admin invites members)
154
+ await Invitations.sendInvitation({
155
+ body: { email: 'coach@example.com', role: 'coach' },
156
+ });
157
+ const invitations = await Invitations.listInvitations();
158
+ await Invitations.resendInvitation({ path: { id: 'invitation-uuid' } });
159
+ await Invitations.deleteInvitation({ path: { id: 'invitation-uuid' } });
160
+ await Invitations.acceptInvitation(); // called after Supabase auth callback
161
+
162
+ // Storage — get a signed upload URL, then PUT the file directly to Supabase Storage
163
+ const { uploadUrl, token, path, bucket, expiresIn } =
164
+ await Storage.createUploadUrl({
165
+ body: { bucket: 'avatars', contentType: 'image/jpeg', sizeBytes: 204800 },
166
+ });
167
+ await fetch(uploadUrl, {
168
+ method: 'PUT',
169
+ body: fileBlob,
170
+ headers: { 'Content-Type': 'image/jpeg' },
171
+ });
172
+ // persist `path` on the player record (e.g. patchMe with avatarPath: path)
173
+ ```
174
+
175
+ ## Updating auth token
176
+
177
+ Update the Bearer token after sign-in or token refresh:
178
+
179
+ ```ts
180
+ client.setConfig({
181
+ headers: {
182
+ Authorization: `Bearer ${newAccessToken}`,
183
+ },
184
+ });
185
+ ```
186
+
187
+ ## Versioning
188
+
189
+ This package is auto-generated from the backend OpenAPI spec. Version increments follow semver:
190
+
191
+ - **patch** — no API shape changes
192
+ - **minor** — new endpoints added
193
+ - **major** — breaking changes (renamed/removed endpoints or fields)
194
+
195
+ ## Package format
196
+
197
+ The published package ships compiled JavaScript (`dist/`) alongside the raw TypeScript source. `main` points to `dist/index.js` so all bundlers work without extra configuration.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { Achievements, Auth, Body, Documents, GlobalScoutMeClient, Index, Offers, type Options, Organizations, Players, Profile, Storage, Videos, } from './sdk.gen.js';
2
- export type { AchievementCatalogDto, AuthMeResponseDto, BodyMeasurementResponseDto, CareerAchievementDto, ClientOptions, ConversationDetailDto, ConversationItemDto, ConversationListResultDto, ConversationParticipantDto, CreateBodyMeasurementDto, CreateConversationDto, CreateDocumentDto, CreateUploadUrlDto, CreateVideoDto, DashboardResponseDto, DeletePlayersMeData, DeletePlayersMeErrors, DeletePlayersMeResponse, DeletePlayersMeResponses, DeleteVideosByIdData, DeleteVideosByIdErrors, DeleteVideosByIdResponse, DeleteVideosByIdResponses, DocumentResponseDto, GetAchievementsData, GetAchievementsMeData, GetAchievementsMeErrors, GetAchievementsMeResponse, GetAchievementsMeResponses, GetAchievementsResponse, GetAchievementsResponses, GetAuthMeData, GetAuthMeErrors, GetAuthMeResponse, GetAuthMeResponses, GetBodyMeasurementsMeData, GetBodyMeasurementsMeErrors, GetBodyMeasurementsMeResponse, GetBodyMeasurementsMeResponses, GetDocumentsMeData, GetDocumentsMeErrors, GetDocumentsMeResponse, GetDocumentsMeResponses, GetIndexByTableNameData, GetIndexByTableNameErrors, GetIndexByTableNameResponse, GetIndexByTableNameResponses, GetOffersConversationsByIdMessagesData, GetOffersConversationsByIdMessagesErrors, GetOffersConversationsByIdMessagesResponse, GetOffersConversationsByIdMessagesResponses, GetOffersConversationsData, GetOffersConversationsErrors, GetOffersConversationsResponse, GetOffersConversationsResponses, GetOrganizationsMeData, GetOrganizationsMeErrors, GetOrganizationsMeResponse, GetOrganizationsMeResponses, GetPlayersByIdData, GetPlayersByIdErrors, GetPlayersByIdResponse, GetPlayersByIdResponses, GetPlayersMeDashboardData, GetPlayersMeDashboardErrors, GetPlayersMeDashboardResponse, GetPlayersMeDashboardResponses, GetPlayersMeData, GetPlayersMeErrors, GetPlayersMeResponse, GetPlayersMeResponses, GetProfileMeData, GetProfileMeErrors, GetProfileMeResponse, GetProfileMeResponses, GetVideosByIdPlayUrlData, GetVideosByIdPlayUrlErrors, GetVideosByIdPlayUrlResponse, GetVideosByIdPlayUrlResponses, GetVideosMeData, GetVideosMeErrors, GetVideosMeResponse, GetVideosMeResponses, IndexItemDto, MessageItemDto, MessageListResultDto, MessageSenderDto, OrganizationResponseDto, PatchOffersConversationsByIdReadData, PatchOffersConversationsByIdReadErrors, PatchOffersConversationsByIdReadResponses, PatchPlayersMeData, PatchPlayersMeErrors, PatchPlayersMeResponse, PatchPlayersMeResponses, PlayerAchievementDto, PlayerByIdDto, PlayerClubDto, PlayerResponseDto, PlayerSearchItemDto, PlayerSearchRequestDto, PlayerSearchResultDto, PlayerVideoDto, PlayUrlResponseDto, PostBodyMeasurementsData, PostBodyMeasurementsErrors, PostBodyMeasurementsResponse, PostBodyMeasurementsResponses, PostDocumentsData, PostDocumentsErrors, PostDocumentsResponse, PostDocumentsResponses, PostOffersConversationsByIdMessagesData, PostOffersConversationsByIdMessagesErrors, PostOffersConversationsByIdMessagesResponse, PostOffersConversationsByIdMessagesResponses, PostOffersConversationsData, PostOffersConversationsErrors, PostOffersConversationsResponse, PostOffersConversationsResponses, PostOrganizationsRegisterClubData, PostOrganizationsRegisterClubErrors, PostOrganizationsRegisterClubResponse, PostOrganizationsRegisterClubResponses, PostPlayersSearchData, PostPlayersSearchErrors, PostPlayersSearchResponse, PostPlayersSearchResponses, PostStorageUploadUrlData, PostStorageUploadUrlErrors, PostStorageUploadUrlResponse, PostStorageUploadUrlResponses, PostVideosData, PostVideosErrors, PostVideosResponse, PostVideosResponses, PreviousClubDto, ProfileResponseDto, PutOrganizationsMeData, PutOrganizationsMeErrors, PutOrganizationsMeResponse, PutOrganizationsMeResponses, PutProfileMeData, PutProfileMeErrors, PutProfileMeResponse, PutProfileMeResponses, RegisterClubDto, RegisterClubResponseDto, SendMessageDto, UpdateOrganizationDto, UpdatePlayerDto, UpdateProfileDto, UploadUrlResponseDto, UserAchievementResponseDto, VideoResponseDto, WatchingOrgDto, } from './types.gen.js';
1
+ export { Achievements, Auth, Body, Challenges, Clubs, Documents, GlobalScoutMeClient, Index, Invitations, Offers, type Options, Organizations, Players, Profile, Storage, Training, Videos, } from './sdk.gen.js';
2
+ export type { AchievementCatalogDto, AuthMeResponseDto, BodyMeasurementResponseDto, CareerAchievementDto, ChallengeCatalogDto, ClientOptions, ClubResponseDto, ConversationDetailDto, ConversationItemDto, ConversationListResultDto, ConversationOrganizationDto, ConversationParticipantDto, CreateBodyMeasurementDto, CreateClubDto, CreateConversationDto, CreateDocumentDto, CreateUploadUrlDto, CreateVideoDto, DashboardResponseDto, DeleteClubsMeByIdData, DeleteClubsMeByIdErrors, DeleteClubsMeByIdResponse, DeleteClubsMeByIdResponses, DeleteInvitationsByIdData, DeleteInvitationsByIdErrors, DeleteInvitationsByIdResponse, DeleteInvitationsByIdResponses, DeletePlayersMeData, DeletePlayersMeErrors, DeletePlayersMeResponse, DeletePlayersMeResponses, DeleteVideosByIdData, DeleteVideosByIdErrors, DeleteVideosByIdResponse, DeleteVideosByIdResponses, DivisionDto, DocumentResponseDto, GetAchievementsData, GetAchievementsMeData, GetAchievementsMeErrors, GetAchievementsMeResponse, GetAchievementsMeResponses, GetAchievementsResponse, GetAchievementsResponses, GetAuthMeData, GetAuthMeErrors, GetAuthMeResponse, GetAuthMeResponses, GetBodyMeasurementsMeData, GetBodyMeasurementsMeErrors, GetBodyMeasurementsMeResponse, GetBodyMeasurementsMeResponses, GetChallengesData, GetChallengesErrors, GetChallengesMeData, GetChallengesMeErrors, GetChallengesMeResponse, GetChallengesMeResponses, GetChallengesResponse, GetChallengesResponses, GetClubsMeData, GetClubsMeErrors, GetClubsMeResponse, GetClubsMeResponses, GetDocumentsMeData, GetDocumentsMeErrors, GetDocumentsMeResponse, GetDocumentsMeResponses, GetIndexByTableNameData, GetIndexByTableNameErrors, GetIndexByTableNameResponse, GetIndexByTableNameResponses, GetInvitationsData, GetInvitationsResponse, GetInvitationsResponses, GetOffersConversationsByIdMessagesData, GetOffersConversationsByIdMessagesErrors, GetOffersConversationsByIdMessagesResponse, GetOffersConversationsByIdMessagesResponses, GetOffersConversationsData, GetOffersConversationsErrors, GetOffersConversationsResponse, GetOffersConversationsResponses, GetOrganizationsMeData, GetOrganizationsMeErrors, GetOrganizationsMeResponse, GetOrganizationsMeResponses, GetPlayersByIdData, GetPlayersByIdErrors, GetPlayersByIdResponse, GetPlayersByIdResponses, GetPlayersMeDashboardData, GetPlayersMeDashboardErrors, GetPlayersMeDashboardResponse, GetPlayersMeDashboardResponses, GetPlayersMeData, GetPlayersMeErrors, GetPlayersMeResponse, GetPlayersMeResponses, GetProfileMeData, GetProfileMeErrors, GetProfileMeResponse, GetProfileMeResponses, GetTrainingByIdData, GetTrainingByIdErrors, GetTrainingByIdResponse, GetTrainingByIdResponses, GetTrainingData, GetTrainingErrors, GetTrainingGroupedData, GetTrainingGroupedErrors, GetTrainingGroupedResponse, GetTrainingGroupedResponses, GetTrainingResponse, GetTrainingResponses, GetVideosByIdPlayUrlData, GetVideosByIdPlayUrlErrors, GetVideosByIdPlayUrlResponse, GetVideosByIdPlayUrlResponses, GetVideosMeData, GetVideosMeErrors, GetVideosMeResponse, GetVideosMeResponses, HeartbeatDto, HeartbeatResponseDto, IndexItemDto, InvitationResponseDto, MessageItemDto, MessageListResultDto, MessageSenderDto, MyChallengeDto, OrganizationResponseDto, PaginatedTrainingContentDto, PatchClubsMeByIdData, PatchClubsMeByIdErrors, PatchClubsMeByIdResponse, PatchClubsMeByIdResponses, PatchOffersConversationsByIdReadData, PatchOffersConversationsByIdReadErrors, PatchOffersConversationsByIdReadResponses, PatchPlayersMeData, PatchPlayersMeErrors, PatchPlayersMeResponse, PatchPlayersMeResponses, PlayerAchievementDto, PlayerByIdDto, PlayerClubDto, PlayerResponseDto, PlayerSearchItemDto, PlayerSearchRequestDto, PlayerSearchResultDto, PlayerVideoDto, PlayUrlResponseDto, PostBodyMeasurementsData, PostBodyMeasurementsErrors, PostBodyMeasurementsResponse, PostBodyMeasurementsResponses, PostClubsMeData, PostClubsMeErrors, PostClubsMeResponse, PostClubsMeResponses, PostDocumentsData, PostDocumentsErrors, PostDocumentsResponse, PostDocumentsResponses, PostInvitationsAcceptData, PostInvitationsAcceptResponse, PostInvitationsAcceptResponses, PostInvitationsByIdResendData, PostInvitationsByIdResendErrors, PostInvitationsByIdResendResponse, PostInvitationsByIdResendResponses, PostInvitationsData, PostInvitationsErrors, PostInvitationsResponse, PostInvitationsResponses, PostOffersConversationsByIdMessagesData, PostOffersConversationsByIdMessagesErrors, PostOffersConversationsByIdMessagesResponse, PostOffersConversationsByIdMessagesResponses, PostOffersConversationsData, PostOffersConversationsErrors, PostOffersConversationsResponse, PostOffersConversationsResponses, PostOrganizationsRegisterClubData, PostOrganizationsRegisterClubErrors, PostOrganizationsRegisterClubResponse, PostOrganizationsRegisterClubResponses, PostPlayersMeHeartbeatData, PostPlayersMeHeartbeatErrors, PostPlayersMeHeartbeatResponse, PostPlayersMeHeartbeatResponses, PostPlayersSearchData, PostPlayersSearchErrors, PostPlayersSearchResponse, PostPlayersSearchResponses, PostStorageUploadUrlData, PostStorageUploadUrlErrors, PostStorageUploadUrlResponse, PostStorageUploadUrlResponses, PostVideosData, PostVideosErrors, PostVideosResponse, PostVideosResponses, PreviousClubDto, ProfileResponseDto, PutOrganizationsMeData, PutOrganizationsMeErrors, PutOrganizationsMeResponse, PutOrganizationsMeResponses, PutProfileMeData, PutProfileMeErrors, PutProfileMeResponse, PutProfileMeResponses, RegisterClubDto, RegisterClubResponseDto, SendInvitationRequestDto, SendMessageDto, TrainingCategoryGroupDto, TrainingContentDetailDto, TrainingContentListItemDto, UpdateClubDto, UpdateOrganizationDto, UpdatePlayerDto, UpdateProfileDto, UploadUrlResponseDto, UserAchievementResponseDto, VideoResponseDto, WatchingOrgDto, } from './types.gen.js';
3
3
  export { client, type CreateClientConfig } from './client.gen.js';
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
- export { Achievements, Auth, Body, Documents, GlobalScoutMeClient, Index, Offers, Organizations, Players, Profile, Storage, Videos, } from './sdk.gen.js';
2
+ export { Achievements, Auth, Body, Challenges, Clubs, Documents, GlobalScoutMeClient, Index, Invitations, Offers, Organizations, Players, Profile, Storage, Training, Videos, } from './sdk.gen.js';
3
3
  export { client } from './client.gen.js';
package/dist/sdk.gen.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Client, Options as Options2, TDataShape } from './client/index.js';
2
- import type { DeletePlayersMeData, DeletePlayersMeErrors, DeletePlayersMeResponses, DeleteVideosByIdData, DeleteVideosByIdErrors, DeleteVideosByIdResponses, GetAchievementsData, GetAchievementsMeData, GetAchievementsMeErrors, GetAchievementsMeResponses, GetAchievementsResponses, GetAuthMeData, GetAuthMeErrors, GetAuthMeResponses, GetBodyMeasurementsMeData, GetBodyMeasurementsMeErrors, GetBodyMeasurementsMeResponses, GetDocumentsMeData, GetDocumentsMeErrors, GetDocumentsMeResponses, GetIndexByTableNameData, GetIndexByTableNameErrors, GetIndexByTableNameResponses, GetOffersConversationsByIdMessagesData, GetOffersConversationsByIdMessagesErrors, GetOffersConversationsByIdMessagesResponses, GetOffersConversationsData, GetOffersConversationsErrors, GetOffersConversationsResponses, GetOrganizationsMeData, GetOrganizationsMeErrors, GetOrganizationsMeResponses, GetPlayersByIdData, GetPlayersByIdErrors, GetPlayersByIdResponses, GetPlayersMeDashboardData, GetPlayersMeDashboardErrors, GetPlayersMeDashboardResponses, GetPlayersMeData, GetPlayersMeErrors, GetPlayersMeResponses, GetProfileMeData, GetProfileMeErrors, GetProfileMeResponses, GetVideosByIdPlayUrlData, GetVideosByIdPlayUrlErrors, GetVideosByIdPlayUrlResponses, GetVideosMeData, GetVideosMeErrors, GetVideosMeResponses, PatchOffersConversationsByIdReadData, PatchOffersConversationsByIdReadErrors, PatchOffersConversationsByIdReadResponses, PatchPlayersMeData, PatchPlayersMeErrors, PatchPlayersMeResponses, PostBodyMeasurementsData, PostBodyMeasurementsErrors, PostBodyMeasurementsResponses, PostDocumentsData, PostDocumentsErrors, PostDocumentsResponses, PostOffersConversationsByIdMessagesData, PostOffersConversationsByIdMessagesErrors, PostOffersConversationsByIdMessagesResponses, PostOffersConversationsData, PostOffersConversationsErrors, PostOffersConversationsResponses, PostOrganizationsRegisterClubData, PostOrganizationsRegisterClubErrors, PostOrganizationsRegisterClubResponses, PostPlayersSearchData, PostPlayersSearchErrors, PostPlayersSearchResponses, PostStorageUploadUrlData, PostStorageUploadUrlErrors, PostStorageUploadUrlResponses, PostVideosData, PostVideosErrors, PostVideosResponses, PutOrganizationsMeData, PutOrganizationsMeErrors, PutOrganizationsMeResponses, PutProfileMeData, PutProfileMeErrors, PutProfileMeResponses } from './types.gen.js';
2
+ import type { DeleteClubsMeByIdData, DeleteClubsMeByIdErrors, DeleteClubsMeByIdResponses, DeleteInvitationsByIdData, DeleteInvitationsByIdErrors, DeleteInvitationsByIdResponses, DeletePlayersMeData, DeletePlayersMeErrors, DeletePlayersMeResponses, DeleteVideosByIdData, DeleteVideosByIdErrors, DeleteVideosByIdResponses, GetAchievementsData, GetAchievementsMeData, GetAchievementsMeErrors, GetAchievementsMeResponses, GetAchievementsResponses, GetAuthMeData, GetAuthMeErrors, GetAuthMeResponses, GetBodyMeasurementsMeData, GetBodyMeasurementsMeErrors, GetBodyMeasurementsMeResponses, GetChallengesData, GetChallengesErrors, GetChallengesMeData, GetChallengesMeErrors, GetChallengesMeResponses, GetChallengesResponses, GetClubsMeData, GetClubsMeErrors, GetClubsMeResponses, GetDocumentsMeData, GetDocumentsMeErrors, GetDocumentsMeResponses, GetIndexByTableNameData, GetIndexByTableNameErrors, GetIndexByTableNameResponses, GetInvitationsData, GetInvitationsResponses, GetOffersConversationsByIdMessagesData, GetOffersConversationsByIdMessagesErrors, GetOffersConversationsByIdMessagesResponses, GetOffersConversationsData, GetOffersConversationsErrors, GetOffersConversationsResponses, GetOrganizationsMeData, GetOrganizationsMeErrors, GetOrganizationsMeResponses, GetPlayersByIdData, GetPlayersByIdErrors, GetPlayersByIdResponses, GetPlayersMeDashboardData, GetPlayersMeDashboardErrors, GetPlayersMeDashboardResponses, GetPlayersMeData, GetPlayersMeErrors, GetPlayersMeResponses, GetProfileMeData, GetProfileMeErrors, GetProfileMeResponses, GetTrainingByIdData, GetTrainingByIdErrors, GetTrainingByIdResponses, GetTrainingData, GetTrainingErrors, GetTrainingGroupedData, GetTrainingGroupedErrors, GetTrainingGroupedResponses, GetTrainingResponses, GetVideosByIdPlayUrlData, GetVideosByIdPlayUrlErrors, GetVideosByIdPlayUrlResponses, GetVideosMeData, GetVideosMeErrors, GetVideosMeResponses, PatchClubsMeByIdData, PatchClubsMeByIdErrors, PatchClubsMeByIdResponses, PatchOffersConversationsByIdReadData, PatchOffersConversationsByIdReadErrors, PatchOffersConversationsByIdReadResponses, PatchPlayersMeData, PatchPlayersMeErrors, PatchPlayersMeResponses, PostBodyMeasurementsData, PostBodyMeasurementsErrors, PostBodyMeasurementsResponses, PostClubsMeData, PostClubsMeErrors, PostClubsMeResponses, PostDocumentsData, PostDocumentsErrors, PostDocumentsResponses, PostInvitationsAcceptData, PostInvitationsAcceptResponses, PostInvitationsByIdResendData, PostInvitationsByIdResendErrors, PostInvitationsByIdResendResponses, PostInvitationsData, PostInvitationsErrors, PostInvitationsResponses, PostOffersConversationsByIdMessagesData, PostOffersConversationsByIdMessagesErrors, PostOffersConversationsByIdMessagesResponses, PostOffersConversationsData, PostOffersConversationsErrors, PostOffersConversationsResponses, PostOrganizationsRegisterClubData, PostOrganizationsRegisterClubErrors, PostOrganizationsRegisterClubResponses, PostPlayersMeHeartbeatData, PostPlayersMeHeartbeatErrors, PostPlayersMeHeartbeatResponses, PostPlayersSearchData, PostPlayersSearchErrors, PostPlayersSearchResponses, PostStorageUploadUrlData, PostStorageUploadUrlErrors, PostStorageUploadUrlResponses, PostVideosData, PostVideosErrors, PostVideosResponses, PutOrganizationsMeData, PutOrganizationsMeErrors, PutOrganizationsMeResponses, PutProfileMeData, PutProfileMeErrors, PutProfileMeResponses } from './types.gen.js';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -33,6 +33,10 @@ export declare class Players extends HeyApiClient {
33
33
  getMe<ThrowOnError extends boolean = false>(options?: Options<GetPlayersMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetPlayersMeResponses, GetPlayersMeErrors, ThrowOnError, "fields">;
34
34
  patchMe<ThrowOnError extends boolean = false>(options: Options<PatchPlayersMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PatchPlayersMeResponses, PatchPlayersMeErrors, ThrowOnError, "fields">;
35
35
  getMyDashboard<ThrowOnError extends boolean = false>(options?: Options<GetPlayersMeDashboardData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetPlayersMeDashboardResponses, GetPlayersMeDashboardErrors, ThrowOnError, "fields">;
36
+ /**
37
+ * Ping presence; records login day and updates user timezone
38
+ */
39
+ heartbeat<ThrowOnError extends boolean = false>(options: Options<PostPlayersMeHeartbeatData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostPlayersMeHeartbeatResponses, PostPlayersMeHeartbeatErrors, ThrowOnError, "fields">;
36
40
  searchPlayers<ThrowOnError extends boolean = false>(options: Options<PostPlayersSearchData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostPlayersSearchResponses, PostPlayersSearchErrors, ThrowOnError, "fields">;
37
41
  getPlayerById<ThrowOnError extends boolean = false>(options: Options<GetPlayersByIdData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetPlayersByIdResponses, GetPlayersByIdErrors, ThrowOnError, "fields">;
38
42
  }
@@ -48,6 +52,22 @@ export declare class Body extends HeyApiClient {
48
52
  getMyMeasurements<ThrowOnError extends boolean = false>(options?: Options<GetBodyMeasurementsMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetBodyMeasurementsMeResponses, GetBodyMeasurementsMeErrors, ThrowOnError, "fields">;
49
53
  createMeasurement<ThrowOnError extends boolean = false>(options: Options<PostBodyMeasurementsData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostBodyMeasurementsResponses, PostBodyMeasurementsErrors, ThrowOnError, "fields">;
50
54
  }
55
+ export declare class Challenges extends HeyApiClient {
56
+ /**
57
+ * List all active challenges
58
+ */
59
+ getChallengesCatalog<ThrowOnError extends boolean = false>(options?: Options<GetChallengesData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetChallengesResponses, GetChallengesErrors, ThrowOnError, "fields">;
60
+ /**
61
+ * Get the current user's active + recently-expired challenges
62
+ */
63
+ getMyChallenges<ThrowOnError extends boolean = false>(options?: Options<GetChallengesMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetChallengesMeResponses, GetChallengesMeErrors, ThrowOnError, "fields">;
64
+ }
65
+ export declare class Clubs extends HeyApiClient {
66
+ getMyClubs<ThrowOnError extends boolean = false>(options?: Options<GetClubsMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetClubsMeResponses, GetClubsMeErrors, ThrowOnError, "fields">;
67
+ createMyClub<ThrowOnError extends boolean = false>(options: Options<PostClubsMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostClubsMeResponses, PostClubsMeErrors, ThrowOnError, "fields">;
68
+ deleteMyClub<ThrowOnError extends boolean = false>(options: Options<DeleteClubsMeByIdData, ThrowOnError>): import("./client/types.gen.js").RequestResult<DeleteClubsMeByIdResponses, DeleteClubsMeByIdErrors, ThrowOnError, "fields">;
69
+ updateMyClub<ThrowOnError extends boolean = false>(options: Options<PatchClubsMeByIdData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PatchClubsMeByIdResponses, PatchClubsMeByIdErrors, ThrowOnError, "fields">;
70
+ }
51
71
  export declare class Documents extends HeyApiClient {
52
72
  getMyDocuments<ThrowOnError extends boolean = false>(options?: Options<GetDocumentsMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetDocumentsMeResponses, GetDocumentsMeErrors, ThrowOnError, "fields">;
53
73
  createDocument<ThrowOnError extends boolean = false>(options: Options<PostDocumentsData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostDocumentsResponses, PostDocumentsErrors, ThrowOnError, "fields">;
@@ -70,6 +90,30 @@ export declare class Organizations extends HeyApiClient {
70
90
  export declare class Storage extends HeyApiClient {
71
91
  createUploadUrl<ThrowOnError extends boolean = false>(options: Options<PostStorageUploadUrlData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostStorageUploadUrlResponses, PostStorageUploadUrlErrors, ThrowOnError, "fields">;
72
92
  }
93
+ export declare class Invitations extends HeyApiClient {
94
+ listInvitations<ThrowOnError extends boolean = false>(options?: Options<GetInvitationsData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetInvitationsResponses, unknown, ThrowOnError, "fields">;
95
+ sendInvitation<ThrowOnError extends boolean = false>(options: Options<PostInvitationsData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostInvitationsResponses, PostInvitationsErrors, ThrowOnError, "fields">;
96
+ resendInvitation<ThrowOnError extends boolean = false>(options: Options<PostInvitationsByIdResendData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostInvitationsByIdResendResponses, PostInvitationsByIdResendErrors, ThrowOnError, "fields">;
97
+ deleteInvitation<ThrowOnError extends boolean = false>(options: Options<DeleteInvitationsByIdData, ThrowOnError>): import("./client/types.gen.js").RequestResult<DeleteInvitationsByIdResponses, DeleteInvitationsByIdErrors, ThrowOnError, "fields">;
98
+ /**
99
+ * Called by web app after Supabase auth callback to link invitee to their organization
100
+ */
101
+ acceptInvitation<ThrowOnError extends boolean = false>(options?: Options<PostInvitationsAcceptData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostInvitationsAcceptResponses, unknown, ThrowOnError, "fields">;
102
+ }
103
+ export declare class Training extends HeyApiClient {
104
+ /**
105
+ * Get training content grouped by category, top 3 per category
106
+ */
107
+ getTrainingGrouped<ThrowOnError extends boolean = false>(options?: Options<GetTrainingGroupedData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetTrainingGroupedResponses, GetTrainingGroupedErrors, ThrowOnError, "fields">;
108
+ /**
109
+ * List training content, optionally filtered by category
110
+ */
111
+ getTrainingList<ThrowOnError extends boolean = false>(options?: Options<GetTrainingData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetTrainingResponses, GetTrainingErrors, ThrowOnError, "fields">;
112
+ /**
113
+ * Get full detail of a training content item
114
+ */
115
+ getTrainingById<ThrowOnError extends boolean = false>(options: Options<GetTrainingByIdData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetTrainingByIdResponses, GetTrainingByIdErrors, ThrowOnError, "fields">;
116
+ }
73
117
  export declare class Videos extends HeyApiClient {
74
118
  getMyVideos<ThrowOnError extends boolean = false>(options: Options<GetVideosMeData, ThrowOnError>): import("./client/types.gen.js").RequestResult<GetVideosMeResponses, GetVideosMeErrors, ThrowOnError, "fields">;
75
119
  createVideo<ThrowOnError extends boolean = false>(options: Options<PostVideosData, ThrowOnError>): import("./client/types.gen.js").RequestResult<PostVideosResponses, PostVideosErrors, ThrowOnError, "fields">;
@@ -92,6 +136,10 @@ export declare class GlobalScoutMeClient extends HeyApiClient {
92
136
  get achievements(): Achievements;
93
137
  private _body?;
94
138
  get body(): Body;
139
+ private _challenges?;
140
+ get challenges(): Challenges;
141
+ private _clubs?;
142
+ get clubs(): Clubs;
95
143
  private _documents?;
96
144
  get documents(): Documents;
97
145
  private _index?;
@@ -102,6 +150,10 @@ export declare class GlobalScoutMeClient extends HeyApiClient {
102
150
  get organizations(): Organizations;
103
151
  private _storage?;
104
152
  get storage(): Storage;
153
+ private _invitations?;
154
+ get invitations(): Invitations;
155
+ private _training?;
156
+ get training(): Training;
105
157
  private _videos?;
106
158
  get videos(): Videos;
107
159
  }
package/dist/sdk.gen.js CHANGED
@@ -46,6 +46,19 @@ export class Players extends HeyApiClient {
46
46
  getMyDashboard(options) {
47
47
  return (options?.client ?? this.client).get({ url: '/players/me/dashboard', ...options });
48
48
  }
49
+ /**
50
+ * Ping presence; records login day and updates user timezone
51
+ */
52
+ heartbeat(options) {
53
+ return (options.client ?? this.client).post({
54
+ url: '/players/me/heartbeat',
55
+ ...options,
56
+ headers: {
57
+ 'Content-Type': 'application/json',
58
+ ...options.headers,
59
+ },
60
+ });
61
+ }
49
62
  searchPlayers(options) {
50
63
  return (options.client ?? this.client).post({
51
64
  url: '/players/search',
@@ -98,6 +111,48 @@ export class Body extends HeyApiClient {
98
111
  });
99
112
  }
100
113
  }
114
+ export class Challenges extends HeyApiClient {
115
+ /**
116
+ * List all active challenges
117
+ */
118
+ getChallengesCatalog(options) {
119
+ return (options?.client ?? this.client).get({ url: '/challenges', ...options });
120
+ }
121
+ /**
122
+ * Get the current user's active + recently-expired challenges
123
+ */
124
+ getMyChallenges(options) {
125
+ return (options?.client ?? this.client).get({ url: '/challenges/me', ...options });
126
+ }
127
+ }
128
+ export class Clubs extends HeyApiClient {
129
+ getMyClubs(options) {
130
+ return (options?.client ?? this.client).get({ url: '/clubs/me', ...options });
131
+ }
132
+ createMyClub(options) {
133
+ return (options.client ?? this.client).post({
134
+ url: '/clubs/me',
135
+ ...options,
136
+ headers: {
137
+ 'Content-Type': 'application/json',
138
+ ...options.headers,
139
+ },
140
+ });
141
+ }
142
+ deleteMyClub(options) {
143
+ return (options.client ?? this.client).delete({ url: '/clubs/me/{id}', ...options });
144
+ }
145
+ updateMyClub(options) {
146
+ return (options.client ?? this.client).patch({
147
+ url: '/clubs/me/{id}',
148
+ ...options,
149
+ headers: {
150
+ 'Content-Type': 'application/json',
151
+ ...options.headers,
152
+ },
153
+ });
154
+ }
155
+ }
101
156
  export class Documents extends HeyApiClient {
102
157
  getMyDocuments(options) {
103
158
  return (options?.client ?? this.client).get({ url: '/documents/me', ...options });
@@ -186,6 +241,53 @@ export class Storage extends HeyApiClient {
186
241
  });
187
242
  }
188
243
  }
244
+ export class Invitations extends HeyApiClient {
245
+ listInvitations(options) {
246
+ return (options?.client ?? this.client).get({ url: '/invitations', ...options });
247
+ }
248
+ sendInvitation(options) {
249
+ return (options.client ?? this.client).post({
250
+ url: '/invitations',
251
+ ...options,
252
+ headers: {
253
+ 'Content-Type': 'application/json',
254
+ ...options.headers,
255
+ },
256
+ });
257
+ }
258
+ resendInvitation(options) {
259
+ return (options.client ?? this.client).post({ url: '/invitations/{id}/resend', ...options });
260
+ }
261
+ deleteInvitation(options) {
262
+ return (options.client ?? this.client).delete({ url: '/invitations/{id}', ...options });
263
+ }
264
+ /**
265
+ * Called by web app after Supabase auth callback to link invitee to their organization
266
+ */
267
+ acceptInvitation(options) {
268
+ return (options?.client ?? this.client).post({ url: '/invitations/accept', ...options });
269
+ }
270
+ }
271
+ export class Training extends HeyApiClient {
272
+ /**
273
+ * Get training content grouped by category, top 3 per category
274
+ */
275
+ getTrainingGrouped(options) {
276
+ return (options?.client ?? this.client).get({ url: '/training/grouped', ...options });
277
+ }
278
+ /**
279
+ * List training content, optionally filtered by category
280
+ */
281
+ getTrainingList(options) {
282
+ return (options?.client ?? this.client).get({ url: '/training', ...options });
283
+ }
284
+ /**
285
+ * Get full detail of a training content item
286
+ */
287
+ getTrainingById(options) {
288
+ return (options.client ?? this.client).get({ url: '/training/{id}', ...options });
289
+ }
290
+ }
189
291
  export class Videos extends HeyApiClient {
190
292
  getMyVideos(options) {
191
293
  return (options.client ?? this.client).get({ url: '/videos/me', ...options });
@@ -227,6 +329,12 @@ export class GlobalScoutMeClient extends HeyApiClient {
227
329
  get body() {
228
330
  return (this._body ?? (this._body = new Body({ client: this.client })));
229
331
  }
332
+ get challenges() {
333
+ return (this._challenges ?? (this._challenges = new Challenges({ client: this.client })));
334
+ }
335
+ get clubs() {
336
+ return (this._clubs ?? (this._clubs = new Clubs({ client: this.client })));
337
+ }
230
338
  get documents() {
231
339
  return (this._documents ?? (this._documents = new Documents({ client: this.client })));
232
340
  }
@@ -242,6 +350,12 @@ export class GlobalScoutMeClient extends HeyApiClient {
242
350
  get storage() {
243
351
  return (this._storage ?? (this._storage = new Storage({ client: this.client })));
244
352
  }
353
+ get invitations() {
354
+ return (this._invitations ?? (this._invitations = new Invitations({ client: this.client })));
355
+ }
356
+ get training() {
357
+ return (this._training ?? (this._training = new Training({ client: this.client })));
358
+ }
245
359
  get videos() {
246
360
  return (this._videos ?? (this._videos = new Videos({ client: this.client })));
247
361
  }