@globalscoutme/api-client 1.1.2 → 1.1.4

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.
@@ -296,6 +296,102 @@ export type PlayerSearchResultDto = {
296
296
  page: number;
297
297
  pageSize: number;
298
298
  };
299
+ export type BodyMeasurementProfileDto = {
300
+ id: string;
301
+ createdAt?: string | null;
302
+ selfReportedHeightCm?: number | null;
303
+ wingspanToSkeletonRatio?: number | null;
304
+ legToTorsoRatio?: number | null;
305
+ femurToTibiaRatio?: number | null;
306
+ shoulderToHipRatio?: number | null;
307
+ headCircumferenceCm?: number | null;
308
+ neckCircumferenceCm?: number | null;
309
+ chestCircumferenceCm?: number | null;
310
+ waistCircumferenceCm?: number | null;
311
+ hipCircumferenceCm?: number | null;
312
+ footLengthCm?: number | null;
313
+ footWidthCm?: number | null;
314
+ qualityStatus?: string | null;
315
+ metricStatus?: {
316
+ [key: string]: unknown;
317
+ };
318
+ poseLandmarksContext?: {
319
+ [key: string]: unknown;
320
+ };
321
+ isUsable: boolean;
322
+ };
323
+ export type CmjMeasurementProfileDto = {
324
+ id: string;
325
+ createdAt?: string | null;
326
+ verticalJumpCm?: number | null;
327
+ qualityTier?: string | null;
328
+ retakeReason?: string | null;
329
+ isUsable: boolean;
330
+ };
331
+ export type MeasurementSessionMetricsDto = {
332
+ selfReportedHeightCm?: number | null;
333
+ verticalJumpCm?: number | null;
334
+ wingspanToSkeletonRatio?: number | null;
335
+ legToTorsoRatio?: number | null;
336
+ femurToTibiaRatio?: number | null;
337
+ shoulderToHipRatio?: number | null;
338
+ };
339
+ export type MeasurementTagEvaluationDto = {
340
+ key?: string;
341
+ status?: string;
342
+ label?: string;
343
+ };
344
+ export type MeasurementSessionDto = {
345
+ id: string;
346
+ bodyMeasurementId: string;
347
+ jumpMeasurementId: string;
348
+ contractVersion?: string | null;
349
+ schemaVersion?: string | null;
350
+ rulesetId?: string | null;
351
+ rulesetVersion?: string | null;
352
+ metrics: MeasurementSessionMetricsDto;
353
+ declaredPositions?: {
354
+ [key: string]: unknown;
355
+ };
356
+ biomechanicalAlignment?: {
357
+ [key: string]: unknown;
358
+ };
359
+ biomechanicalAlignmentCopyKeys?: Array<string>;
360
+ checkedTagKeys?: Array<string>;
361
+ tagEvaluations?: Array<MeasurementTagEvaluationDto>;
362
+ qualitySummary?: {
363
+ [key: string]: unknown;
364
+ };
365
+ playerDisplay?: {
366
+ [key: string]: unknown;
367
+ };
368
+ scoutDisplay?: {
369
+ [key: string]: unknown;
370
+ };
371
+ metricDefinitions?: {
372
+ [key: string]: unknown;
373
+ };
374
+ createdAt?: string | null;
375
+ updatedAt?: string | null;
376
+ };
377
+ export type MeasurementProfileResponseDto = {
378
+ status: 'missing' | 'partial' | 'ready' | 'needs_update';
379
+ body?: BodyMeasurementProfileDto | null;
380
+ cmj?: CmjMeasurementProfileDto | null;
381
+ session?: MeasurementSessionDto | null;
382
+ updatedAt?: string | null;
383
+ };
384
+ export type PlayerReportViewDto = {
385
+ technicalPillar: string;
386
+ physicalPillar: string;
387
+ tacticalPillar: string;
388
+ mentalPillar: string;
389
+ };
390
+ export type PlayerReportResponseDto = {
391
+ reportReferenceId: string;
392
+ generatedAt?: string | null;
393
+ scouterView: PlayerReportViewDto;
394
+ };
299
395
  export type PlayerClubDto = {
300
396
  clubName: string;
301
397
  /**
@@ -608,6 +704,50 @@ export type DeactivatePushDeviceDto = {
608
704
  export type OkDto = {
609
705
  ok: boolean;
610
706
  };
707
+ export type CreateUploadUrlDto = {
708
+ /**
709
+ * Target storage bucket
710
+ */
711
+ bucket: 'videos' | 'avatars' | 'documents';
712
+ /**
713
+ * MIME type of the file being uploaded
714
+ */
715
+ contentType: string;
716
+ /**
717
+ * Size of the file in bytes
718
+ */
719
+ sizeBytes: number;
720
+ /**
721
+ * Optional filename hint (not used for path)
722
+ */
723
+ filenameHint?: string;
724
+ };
725
+ export type UploadUrlResponseDto = {
726
+ /**
727
+ * Signed URL the client PUTs raw bytes to
728
+ */
729
+ uploadUrl: string;
730
+ /**
731
+ * Signed-upload token (opaque)
732
+ */
733
+ token: string;
734
+ /**
735
+ * Storage path (persist this as video_path / file_path)
736
+ */
737
+ path: string;
738
+ /**
739
+ * Bucket the upload targets
740
+ */
741
+ bucket: string;
742
+ /**
743
+ * URL validity window in seconds
744
+ */
745
+ expiresIn: number;
746
+ };
747
+ export type CreateMeasurementPlayerSessionDto = {
748
+ bodyMeasurementId: string;
749
+ jumpMeasurementId: string;
750
+ };
611
751
  export type PreviousClubDto = {
612
752
  /**
613
753
  * Club name
@@ -1463,46 +1603,6 @@ export type UpdateOrganizationDto = {
1463
1603
  */
1464
1604
  phone?: string;
1465
1605
  };
1466
- export type CreateUploadUrlDto = {
1467
- /**
1468
- * Target storage bucket
1469
- */
1470
- bucket: 'videos' | 'avatars' | 'documents';
1471
- /**
1472
- * MIME type of the file being uploaded
1473
- */
1474
- contentType: string;
1475
- /**
1476
- * Size of the file in bytes
1477
- */
1478
- sizeBytes: number;
1479
- /**
1480
- * Optional filename hint (not used for path)
1481
- */
1482
- filenameHint?: string;
1483
- };
1484
- export type UploadUrlResponseDto = {
1485
- /**
1486
- * Signed URL the client PUTs raw bytes to
1487
- */
1488
- uploadUrl: string;
1489
- /**
1490
- * Signed-upload token (opaque)
1491
- */
1492
- token: string;
1493
- /**
1494
- * Storage path (persist this as video_path / file_path)
1495
- */
1496
- path: string;
1497
- /**
1498
- * Bucket the upload targets
1499
- */
1500
- bucket: string;
1501
- /**
1502
- * URL validity window in seconds
1503
- */
1504
- expiresIn: number;
1505
- };
1506
1606
  export type SendInvitationRequestDto = {
1507
1607
  email: string;
1508
1608
  };
@@ -1602,95 +1702,6 @@ export type CancelKycRequestDto = {
1602
1702
  */
1603
1703
  jobId: string;
1604
1704
  };
1605
- export type BodyMeasurementProfileDto = {
1606
- id: string;
1607
- createdAt?: string | null;
1608
- selfReportedHeightCm?: number | null;
1609
- wingspanToSkeletonRatio?: number | null;
1610
- legToTorsoRatio?: number | null;
1611
- femurToTibiaRatio?: number | null;
1612
- shoulderToHipRatio?: number | null;
1613
- headCircumferenceCm?: number | null;
1614
- neckCircumferenceCm?: number | null;
1615
- chestCircumferenceCm?: number | null;
1616
- waistCircumferenceCm?: number | null;
1617
- hipCircumferenceCm?: number | null;
1618
- footLengthCm?: number | null;
1619
- footWidthCm?: number | null;
1620
- qualityStatus?: string | null;
1621
- metricStatus?: {
1622
- [key: string]: unknown;
1623
- };
1624
- poseLandmarksContext?: {
1625
- [key: string]: unknown;
1626
- };
1627
- isUsable: boolean;
1628
- };
1629
- export type CmjMeasurementProfileDto = {
1630
- id: string;
1631
- createdAt?: string | null;
1632
- verticalJumpCm?: number | null;
1633
- qualityTier?: string | null;
1634
- retakeReason?: string | null;
1635
- isUsable: boolean;
1636
- };
1637
- export type MeasurementSessionMetricsDto = {
1638
- selfReportedHeightCm?: number | null;
1639
- verticalJumpCm?: number | null;
1640
- wingspanToSkeletonRatio?: number | null;
1641
- legToTorsoRatio?: number | null;
1642
- femurToTibiaRatio?: number | null;
1643
- shoulderToHipRatio?: number | null;
1644
- };
1645
- export type MeasurementTagEvaluationDto = {
1646
- key?: string;
1647
- status?: string;
1648
- label?: string;
1649
- };
1650
- export type MeasurementSessionDto = {
1651
- id: string;
1652
- bodyMeasurementId: string;
1653
- jumpMeasurementId: string;
1654
- contractVersion?: string | null;
1655
- schemaVersion?: string | null;
1656
- rulesetId?: string | null;
1657
- rulesetVersion?: string | null;
1658
- metrics: MeasurementSessionMetricsDto;
1659
- declaredPositions?: {
1660
- [key: string]: unknown;
1661
- };
1662
- biomechanicalAlignment?: {
1663
- [key: string]: unknown;
1664
- };
1665
- biomechanicalAlignmentCopyKeys?: Array<string>;
1666
- checkedTagKeys?: Array<string>;
1667
- tagEvaluations?: Array<MeasurementTagEvaluationDto>;
1668
- qualitySummary?: {
1669
- [key: string]: unknown;
1670
- };
1671
- playerDisplay?: {
1672
- [key: string]: unknown;
1673
- };
1674
- scoutDisplay?: {
1675
- [key: string]: unknown;
1676
- };
1677
- metricDefinitions?: {
1678
- [key: string]: unknown;
1679
- };
1680
- createdAt?: string | null;
1681
- updatedAt?: string | null;
1682
- };
1683
- export type MeasurementProfileResponseDto = {
1684
- status: 'missing' | 'partial' | 'ready' | 'needs_update';
1685
- body?: BodyMeasurementProfileDto | null;
1686
- cmj?: CmjMeasurementProfileDto | null;
1687
- session?: MeasurementSessionDto | null;
1688
- updatedAt?: string | null;
1689
- };
1690
- export type CreateMeasurementPlayerSessionDto = {
1691
- bodyMeasurementId: string;
1692
- jumpMeasurementId: string;
1693
- };
1694
1705
  export type TrainingContentListItemDto = {
1695
1706
  id: string;
1696
1707
  title: string;
@@ -1739,6 +1750,14 @@ export type VideoResponseDto = {
1739
1750
  thumbnailUrl?: string | null;
1740
1751
  videoType?: string | null;
1741
1752
  durationSeconds?: number | null;
1753
+ /**
1754
+ * Original uploaded file size in bytes, when known.
1755
+ */
1756
+ fileSizeBytes?: number | null;
1757
+ /**
1758
+ * Original client-side file name, when known.
1759
+ */
1760
+ originalFileName?: string | null;
1742
1761
  uploadStatus?: string | null;
1743
1762
  processingStatus?: string | null;
1744
1763
  isPublic?: boolean | null;
@@ -1769,6 +1788,14 @@ export type CreateVideoDto = {
1769
1788
  * Duration in seconds
1770
1789
  */
1771
1790
  durationSeconds?: number;
1791
+ /**
1792
+ * Original uploaded file size in bytes, used for duplicate warnings
1793
+ */
1794
+ fileSizeBytes?: number;
1795
+ /**
1796
+ * Original client-side file name, used for duplicate warnings
1797
+ */
1798
+ originalFileName?: string;
1772
1799
  /**
1773
1800
  * Make video public
1774
1801
  */
@@ -2020,6 +2047,50 @@ export type PostApiPlayersSearchResponses = {
2020
2047
  200: PlayerSearchResultDto;
2021
2048
  };
2022
2049
  export type PostApiPlayersSearchResponse = PostApiPlayersSearchResponses[keyof PostApiPlayersSearchResponses];
2050
+ export type GetApiPlayersByIdMeasurementsData = {
2051
+ body?: never;
2052
+ path: {
2053
+ id: string;
2054
+ };
2055
+ query?: never;
2056
+ url: '/api/players/{id}/measurements';
2057
+ };
2058
+ export type GetApiPlayersByIdMeasurementsErrors = {
2059
+ /**
2060
+ * Unauthorized
2061
+ */
2062
+ 401: unknown;
2063
+ /**
2064
+ * Player not found
2065
+ */
2066
+ 404: unknown;
2067
+ };
2068
+ export type GetApiPlayersByIdMeasurementsResponses = {
2069
+ 200: MeasurementProfileResponseDto;
2070
+ };
2071
+ export type GetApiPlayersByIdMeasurementsResponse = GetApiPlayersByIdMeasurementsResponses[keyof GetApiPlayersByIdMeasurementsResponses];
2072
+ export type GetApiPlayersByIdReportData = {
2073
+ body?: never;
2074
+ path: {
2075
+ id: string;
2076
+ };
2077
+ query?: never;
2078
+ url: '/api/players/{id}/report';
2079
+ };
2080
+ export type GetApiPlayersByIdReportErrors = {
2081
+ /**
2082
+ * Unauthorized
2083
+ */
2084
+ 401: unknown;
2085
+ /**
2086
+ * Player or report not found
2087
+ */
2088
+ 404: unknown;
2089
+ };
2090
+ export type GetApiPlayersByIdReportResponses = {
2091
+ 200: PlayerReportResponseDto;
2092
+ };
2093
+ export type GetApiPlayersByIdReportResponse = GetApiPlayersByIdReportResponses[keyof GetApiPlayersByIdReportResponses];
2023
2094
  export type GetApiPlayersByIdData = {
2024
2095
  body?: never;
2025
2096
  path: {
@@ -2230,6 +2301,83 @@ export type DeleteApiNotificationsDevicesCurrentResponses = {
2230
2301
  200: OkDto;
2231
2302
  };
2232
2303
  export type DeleteApiNotificationsDevicesCurrentResponse = DeleteApiNotificationsDevicesCurrentResponses[keyof DeleteApiNotificationsDevicesCurrentResponses];
2304
+ export type PostApiStorageUploadUrlData = {
2305
+ body: CreateUploadUrlDto;
2306
+ path?: never;
2307
+ query?: never;
2308
+ url: '/api/storage/upload-url';
2309
+ };
2310
+ export type PostApiStorageUploadUrlErrors = {
2311
+ /**
2312
+ * Unknown bucket or disallowed MIME
2313
+ */
2314
+ 400: unknown;
2315
+ /**
2316
+ * Unauthorized
2317
+ */
2318
+ 401: unknown;
2319
+ /**
2320
+ * File too large for bucket
2321
+ */
2322
+ 413: unknown;
2323
+ };
2324
+ export type PostApiStorageUploadUrlResponses = {
2325
+ /**
2326
+ * Signed upload URL issued
2327
+ */
2328
+ 201: UploadUrlResponseDto;
2329
+ };
2330
+ export type PostApiStorageUploadUrlResponse = PostApiStorageUploadUrlResponses[keyof PostApiStorageUploadUrlResponses];
2331
+ export type GetApiMeasurementsProfileMeData = {
2332
+ body?: never;
2333
+ path?: never;
2334
+ query?: never;
2335
+ url: '/api/measurements/profile/me';
2336
+ };
2337
+ export type GetApiMeasurementsProfileMeErrors = {
2338
+ /**
2339
+ * Unauthorized
2340
+ */
2341
+ 401: unknown;
2342
+ };
2343
+ export type GetApiMeasurementsProfileMeResponses = {
2344
+ /**
2345
+ * Latest combined measurement profile
2346
+ */
2347
+ 200: MeasurementProfileResponseDto;
2348
+ };
2349
+ export type GetApiMeasurementsProfileMeResponse = GetApiMeasurementsProfileMeResponses[keyof GetApiMeasurementsProfileMeResponses];
2350
+ export type PostApiMeasurementsPlayerSessionMeData = {
2351
+ body: CreateMeasurementPlayerSessionDto;
2352
+ path?: never;
2353
+ query?: never;
2354
+ url: '/api/measurements/player-session/me';
2355
+ };
2356
+ export type PostApiMeasurementsPlayerSessionMeErrors = {
2357
+ /**
2358
+ * Missing measurement ids
2359
+ */
2360
+ 400: unknown;
2361
+ /**
2362
+ * Unauthorized
2363
+ */
2364
+ 401: unknown;
2365
+ /**
2366
+ * Missing body or CMJ measurement
2367
+ */
2368
+ 409: unknown;
2369
+ /**
2370
+ * Interpretation service down
2371
+ */
2372
+ 503: unknown;
2373
+ };
2374
+ export type PostApiMeasurementsPlayerSessionMeResponses = {
2375
+ /**
2376
+ * Combined measurement player session
2377
+ */
2378
+ 201: MeasurementSessionDto;
2379
+ };
2380
+ export type PostApiMeasurementsPlayerSessionMeResponse = PostApiMeasurementsPlayerSessionMeResponses[keyof PostApiMeasurementsPlayerSessionMeResponses];
2233
2381
  export type GetApiProfileMeData = {
2234
2382
  body?: never;
2235
2383
  path?: never;
@@ -2760,33 +2908,6 @@ export type PutApiOrganizationsMeResponses = {
2760
2908
  200: OrganizationResponseDto;
2761
2909
  };
2762
2910
  export type PutApiOrganizationsMeResponse = PutApiOrganizationsMeResponses[keyof PutApiOrganizationsMeResponses];
2763
- export type PostApiStorageUploadUrlData = {
2764
- body: CreateUploadUrlDto;
2765
- path?: never;
2766
- query?: never;
2767
- url: '/api/storage/upload-url';
2768
- };
2769
- export type PostApiStorageUploadUrlErrors = {
2770
- /**
2771
- * Unknown bucket or disallowed MIME
2772
- */
2773
- 400: unknown;
2774
- /**
2775
- * Unauthorized
2776
- */
2777
- 401: unknown;
2778
- /**
2779
- * File too large for bucket
2780
- */
2781
- 413: unknown;
2782
- };
2783
- export type PostApiStorageUploadUrlResponses = {
2784
- /**
2785
- * Signed upload URL issued
2786
- */
2787
- 201: UploadUrlResponseDto;
2788
- };
2789
- export type PostApiStorageUploadUrlResponse = PostApiStorageUploadUrlResponses[keyof PostApiStorageUploadUrlResponses];
2790
2911
  export type GetApiInvitationsData = {
2791
2912
  body?: never;
2792
2913
  path?: never;
@@ -2977,56 +3098,6 @@ export type GetApiKycStatusByUserIdResponses = {
2977
3098
  200: KycStatusDto;
2978
3099
  };
2979
3100
  export type GetApiKycStatusByUserIdResponse = GetApiKycStatusByUserIdResponses[keyof GetApiKycStatusByUserIdResponses];
2980
- export type GetApiMeasurementsProfileMeData = {
2981
- body?: never;
2982
- path?: never;
2983
- query?: never;
2984
- url: '/api/measurements/profile/me';
2985
- };
2986
- export type GetApiMeasurementsProfileMeErrors = {
2987
- /**
2988
- * Unauthorized
2989
- */
2990
- 401: unknown;
2991
- };
2992
- export type GetApiMeasurementsProfileMeResponses = {
2993
- /**
2994
- * Latest combined measurement profile
2995
- */
2996
- 200: MeasurementProfileResponseDto;
2997
- };
2998
- export type GetApiMeasurementsProfileMeResponse = GetApiMeasurementsProfileMeResponses[keyof GetApiMeasurementsProfileMeResponses];
2999
- export type PostApiMeasurementsPlayerSessionMeData = {
3000
- body: CreateMeasurementPlayerSessionDto;
3001
- path?: never;
3002
- query?: never;
3003
- url: '/api/measurements/player-session/me';
3004
- };
3005
- export type PostApiMeasurementsPlayerSessionMeErrors = {
3006
- /**
3007
- * Missing measurement ids
3008
- */
3009
- 400: unknown;
3010
- /**
3011
- * Unauthorized
3012
- */
3013
- 401: unknown;
3014
- /**
3015
- * Missing body or CMJ measurement
3016
- */
3017
- 409: unknown;
3018
- /**
3019
- * Interpretation service down
3020
- */
3021
- 503: unknown;
3022
- };
3023
- export type PostApiMeasurementsPlayerSessionMeResponses = {
3024
- /**
3025
- * Combined measurement player session
3026
- */
3027
- 201: MeasurementSessionDto;
3028
- };
3029
- export type PostApiMeasurementsPlayerSessionMeResponse = PostApiMeasurementsPlayerSessionMeResponses[keyof PostApiMeasurementsPlayerSessionMeResponses];
3030
3101
  export type GetApiTrainingGroupedData = {
3031
3102
  body?: never;
3032
3103
  path?: never;
package/index.ts CHANGED
@@ -185,6 +185,14 @@ export type {
185
185
  GetApiOrganizationsMeResponses,
186
186
  GetApiPlayersByIdData,
187
187
  GetApiPlayersByIdErrors,
188
+ GetApiPlayersByIdMeasurementsData,
189
+ GetApiPlayersByIdMeasurementsErrors,
190
+ GetApiPlayersByIdMeasurementsResponse,
191
+ GetApiPlayersByIdMeasurementsResponses,
192
+ GetApiPlayersByIdReportData,
193
+ GetApiPlayersByIdReportErrors,
194
+ GetApiPlayersByIdReportResponse,
195
+ GetApiPlayersByIdReportResponses,
188
196
  GetApiPlayersByIdResponse,
189
197
  GetApiPlayersByIdResponses,
190
198
  GetApiPlayersMeDashboardData,
@@ -263,6 +271,8 @@ export type {
263
271
  PlayerAchievementDto,
264
272
  PlayerByIdDto,
265
273
  PlayerClubDto,
274
+ PlayerReportResponseDto,
275
+ PlayerReportViewDto,
266
276
  PlayerResponseDto,
267
277
  PlayerSearchItemDto,
268
278
  PlayerSearchRequestDto,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@globalscoutme/api-client",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "GlobalScoutMe API client (generated)",
5
5
  "author": "GlobalScoutMe",
6
6
  "license": "UNLICENSED",