@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.
package/types.gen.ts CHANGED
@@ -322,6 +322,110 @@ export type PlayerSearchResultDto = {
322
322
  pageSize: number;
323
323
  };
324
324
 
325
+ export type BodyMeasurementProfileDto = {
326
+ id: string;
327
+ createdAt?: string | null;
328
+ selfReportedHeightCm?: number | null;
329
+ wingspanToSkeletonRatio?: number | null;
330
+ legToTorsoRatio?: number | null;
331
+ femurToTibiaRatio?: number | null;
332
+ shoulderToHipRatio?: number | null;
333
+ headCircumferenceCm?: number | null;
334
+ neckCircumferenceCm?: number | null;
335
+ chestCircumferenceCm?: number | null;
336
+ waistCircumferenceCm?: number | null;
337
+ hipCircumferenceCm?: number | null;
338
+ footLengthCm?: number | null;
339
+ footWidthCm?: number | null;
340
+ qualityStatus?: string | null;
341
+ metricStatus?: {
342
+ [key: string]: unknown;
343
+ };
344
+ poseLandmarksContext?: {
345
+ [key: string]: unknown;
346
+ };
347
+ isUsable: boolean;
348
+ };
349
+
350
+ export type CmjMeasurementProfileDto = {
351
+ id: string;
352
+ createdAt?: string | null;
353
+ verticalJumpCm?: number | null;
354
+ qualityTier?: string | null;
355
+ retakeReason?: string | null;
356
+ isUsable: boolean;
357
+ };
358
+
359
+ export type MeasurementSessionMetricsDto = {
360
+ selfReportedHeightCm?: number | null;
361
+ verticalJumpCm?: number | null;
362
+ wingspanToSkeletonRatio?: number | null;
363
+ legToTorsoRatio?: number | null;
364
+ femurToTibiaRatio?: number | null;
365
+ shoulderToHipRatio?: number | null;
366
+ };
367
+
368
+ export type MeasurementTagEvaluationDto = {
369
+ key?: string;
370
+ status?: string;
371
+ label?: string;
372
+ };
373
+
374
+ export type MeasurementSessionDto = {
375
+ id: string;
376
+ bodyMeasurementId: string;
377
+ jumpMeasurementId: string;
378
+ contractVersion?: string | null;
379
+ schemaVersion?: string | null;
380
+ rulesetId?: string | null;
381
+ rulesetVersion?: string | null;
382
+ metrics: MeasurementSessionMetricsDto;
383
+ declaredPositions?: {
384
+ [key: string]: unknown;
385
+ };
386
+ biomechanicalAlignment?: {
387
+ [key: string]: unknown;
388
+ };
389
+ biomechanicalAlignmentCopyKeys?: Array<string>;
390
+ checkedTagKeys?: Array<string>;
391
+ tagEvaluations?: Array<MeasurementTagEvaluationDto>;
392
+ qualitySummary?: {
393
+ [key: string]: unknown;
394
+ };
395
+ playerDisplay?: {
396
+ [key: string]: unknown;
397
+ };
398
+ scoutDisplay?: {
399
+ [key: string]: unknown;
400
+ };
401
+ metricDefinitions?: {
402
+ [key: string]: unknown;
403
+ };
404
+ createdAt?: string | null;
405
+ updatedAt?: string | null;
406
+ };
407
+
408
+ export type MeasurementProfileResponseDto = {
409
+ status: 'missing' | 'partial' | 'ready' | 'needs_update';
410
+ body?: BodyMeasurementProfileDto | null;
411
+ cmj?: CmjMeasurementProfileDto | null;
412
+ session?: MeasurementSessionDto | null;
413
+ updatedAt?: string | null;
414
+ };
415
+
416
+ export type PlayerReportViewDto = {
417
+ technicalPillar: string;
418
+ physicalPillar: string;
419
+ tacticalPillar: string;
420
+ mentalPillar: string;
421
+ };
422
+
423
+ export type PlayerReportResponseDto = {
424
+ reportReferenceId: string;
425
+ generatedAt?: string | null;
426
+ scouterView: PlayerReportViewDto;
427
+ };
428
+
325
429
  export type PlayerClubDto = {
326
430
  clubName: string;
327
431
  /**
@@ -672,6 +776,53 @@ export type OkDto = {
672
776
  ok: boolean;
673
777
  };
674
778
 
779
+ export type CreateUploadUrlDto = {
780
+ /**
781
+ * Target storage bucket
782
+ */
783
+ bucket: 'videos' | 'avatars' | 'documents';
784
+ /**
785
+ * MIME type of the file being uploaded
786
+ */
787
+ contentType: string;
788
+ /**
789
+ * Size of the file in bytes
790
+ */
791
+ sizeBytes: number;
792
+ /**
793
+ * Optional filename hint (not used for path)
794
+ */
795
+ filenameHint?: string;
796
+ };
797
+
798
+ export type UploadUrlResponseDto = {
799
+ /**
800
+ * Signed URL the client PUTs raw bytes to
801
+ */
802
+ uploadUrl: string;
803
+ /**
804
+ * Signed-upload token (opaque)
805
+ */
806
+ token: string;
807
+ /**
808
+ * Storage path (persist this as video_path / file_path)
809
+ */
810
+ path: string;
811
+ /**
812
+ * Bucket the upload targets
813
+ */
814
+ bucket: string;
815
+ /**
816
+ * URL validity window in seconds
817
+ */
818
+ expiresIn: number;
819
+ };
820
+
821
+ export type CreateMeasurementPlayerSessionDto = {
822
+ bodyMeasurementId: string;
823
+ jumpMeasurementId: string;
824
+ };
825
+
675
826
  export type PreviousClubDto = {
676
827
  /**
677
828
  * Club name
@@ -1561,48 +1712,6 @@ export type UpdateOrganizationDto = {
1561
1712
  phone?: string;
1562
1713
  };
1563
1714
 
1564
- export type CreateUploadUrlDto = {
1565
- /**
1566
- * Target storage bucket
1567
- */
1568
- bucket: 'videos' | 'avatars' | 'documents';
1569
- /**
1570
- * MIME type of the file being uploaded
1571
- */
1572
- contentType: string;
1573
- /**
1574
- * Size of the file in bytes
1575
- */
1576
- sizeBytes: number;
1577
- /**
1578
- * Optional filename hint (not used for path)
1579
- */
1580
- filenameHint?: string;
1581
- };
1582
-
1583
- export type UploadUrlResponseDto = {
1584
- /**
1585
- * Signed URL the client PUTs raw bytes to
1586
- */
1587
- uploadUrl: string;
1588
- /**
1589
- * Signed-upload token (opaque)
1590
- */
1591
- token: string;
1592
- /**
1593
- * Storage path (persist this as video_path / file_path)
1594
- */
1595
- path: string;
1596
- /**
1597
- * Bucket the upload targets
1598
- */
1599
- bucket: string;
1600
- /**
1601
- * URL validity window in seconds
1602
- */
1603
- expiresIn: number;
1604
- };
1605
-
1606
1715
  export type SendInvitationRequestDto = {
1607
1716
  email: string;
1608
1717
  };
@@ -1698,125 +1807,29 @@ export type MarkSubmittedKycRequestDto = {
1698
1807
 
1699
1808
  export type KycStatusDto = {
1700
1809
  status:
1701
- | 'pending'
1702
- | 'capture_started'
1703
- | 'processing'
1704
- | 'approved'
1705
- | 'rejected'
1706
- | 'blocked';
1707
- retryCount: number;
1708
- retriesRemaining: number;
1709
- /**
1710
- * SmileID job identifier for the current or latest KYC attempt
1711
- */
1712
- jobId?: string | null;
1713
- /**
1714
- * ISO 3166-1 alpha-2 country code used for the KYC attempt
1715
- */
1716
- country?: string | null;
1717
- };
1718
-
1719
- export type CancelKycRequestDto = {
1720
- /**
1721
- * SmileID job identifier returned by /kyc/start or status
1722
- */
1723
- jobId: string;
1724
- };
1725
-
1726
- export type BodyMeasurementProfileDto = {
1727
- id: string;
1728
- createdAt?: string | null;
1729
- selfReportedHeightCm?: number | null;
1730
- wingspanToSkeletonRatio?: number | null;
1731
- legToTorsoRatio?: number | null;
1732
- femurToTibiaRatio?: number | null;
1733
- shoulderToHipRatio?: number | null;
1734
- headCircumferenceCm?: number | null;
1735
- neckCircumferenceCm?: number | null;
1736
- chestCircumferenceCm?: number | null;
1737
- waistCircumferenceCm?: number | null;
1738
- hipCircumferenceCm?: number | null;
1739
- footLengthCm?: number | null;
1740
- footWidthCm?: number | null;
1741
- qualityStatus?: string | null;
1742
- metricStatus?: {
1743
- [key: string]: unknown;
1744
- };
1745
- poseLandmarksContext?: {
1746
- [key: string]: unknown;
1747
- };
1748
- isUsable: boolean;
1749
- };
1750
-
1751
- export type CmjMeasurementProfileDto = {
1752
- id: string;
1753
- createdAt?: string | null;
1754
- verticalJumpCm?: number | null;
1755
- qualityTier?: string | null;
1756
- retakeReason?: string | null;
1757
- isUsable: boolean;
1758
- };
1759
-
1760
- export type MeasurementSessionMetricsDto = {
1761
- selfReportedHeightCm?: number | null;
1762
- verticalJumpCm?: number | null;
1763
- wingspanToSkeletonRatio?: number | null;
1764
- legToTorsoRatio?: number | null;
1765
- femurToTibiaRatio?: number | null;
1766
- shoulderToHipRatio?: number | null;
1767
- };
1768
-
1769
- export type MeasurementTagEvaluationDto = {
1770
- key?: string;
1771
- status?: string;
1772
- label?: string;
1773
- };
1774
-
1775
- export type MeasurementSessionDto = {
1776
- id: string;
1777
- bodyMeasurementId: string;
1778
- jumpMeasurementId: string;
1779
- contractVersion?: string | null;
1780
- schemaVersion?: string | null;
1781
- rulesetId?: string | null;
1782
- rulesetVersion?: string | null;
1783
- metrics: MeasurementSessionMetricsDto;
1784
- declaredPositions?: {
1785
- [key: string]: unknown;
1786
- };
1787
- biomechanicalAlignment?: {
1788
- [key: string]: unknown;
1789
- };
1790
- biomechanicalAlignmentCopyKeys?: Array<string>;
1791
- checkedTagKeys?: Array<string>;
1792
- tagEvaluations?: Array<MeasurementTagEvaluationDto>;
1793
- qualitySummary?: {
1794
- [key: string]: unknown;
1795
- };
1796
- playerDisplay?: {
1797
- [key: string]: unknown;
1798
- };
1799
- scoutDisplay?: {
1800
- [key: string]: unknown;
1801
- };
1802
- metricDefinitions?: {
1803
- [key: string]: unknown;
1804
- };
1805
- createdAt?: string | null;
1806
- updatedAt?: string | null;
1807
- };
1808
-
1809
- export type MeasurementProfileResponseDto = {
1810
- status: 'missing' | 'partial' | 'ready' | 'needs_update';
1811
- body?: BodyMeasurementProfileDto | null;
1812
- cmj?: CmjMeasurementProfileDto | null;
1813
- session?: MeasurementSessionDto | null;
1814
- updatedAt?: string | null;
1810
+ | 'pending'
1811
+ | 'capture_started'
1812
+ | 'processing'
1813
+ | 'approved'
1814
+ | 'rejected'
1815
+ | 'blocked';
1816
+ retryCount: number;
1817
+ retriesRemaining: number;
1818
+ /**
1819
+ * SmileID job identifier for the current or latest KYC attempt
1820
+ */
1821
+ jobId?: string | null;
1822
+ /**
1823
+ * ISO 3166-1 alpha-2 country code used for the KYC attempt
1824
+ */
1825
+ country?: string | null;
1815
1826
  };
1816
1827
 
1817
- export type CreateMeasurementPlayerSessionDto = {
1818
- bodyMeasurementId: string;
1819
- jumpMeasurementId: string;
1828
+ export type CancelKycRequestDto = {
1829
+ /**
1830
+ * SmileID job identifier returned by /kyc/start or status
1831
+ */
1832
+ jobId: string;
1820
1833
  };
1821
1834
 
1822
1835
  export type TrainingContentListItemDto = {
@@ -1871,6 +1884,14 @@ export type VideoResponseDto = {
1871
1884
  thumbnailUrl?: string | null;
1872
1885
  videoType?: string | null;
1873
1886
  durationSeconds?: number | null;
1887
+ /**
1888
+ * Original uploaded file size in bytes, when known.
1889
+ */
1890
+ fileSizeBytes?: number | null;
1891
+ /**
1892
+ * Original client-side file name, when known.
1893
+ */
1894
+ originalFileName?: string | null;
1874
1895
  uploadStatus?: string | null;
1875
1896
  processingStatus?: string | null;
1876
1897
  isPublic?: boolean | null;
@@ -1902,6 +1923,14 @@ export type CreateVideoDto = {
1902
1923
  * Duration in seconds
1903
1924
  */
1904
1925
  durationSeconds?: number;
1926
+ /**
1927
+ * Original uploaded file size in bytes, used for duplicate warnings
1928
+ */
1929
+ fileSizeBytes?: number;
1930
+ /**
1931
+ * Original client-side file name, used for duplicate warnings
1932
+ */
1933
+ originalFileName?: string;
1905
1934
  /**
1906
1935
  * Make video public
1907
1936
  */
@@ -2200,6 +2229,60 @@ export type PostApiPlayersSearchResponses = {
2200
2229
  export type PostApiPlayersSearchResponse =
2201
2230
  PostApiPlayersSearchResponses[keyof PostApiPlayersSearchResponses];
2202
2231
 
2232
+ export type GetApiPlayersByIdMeasurementsData = {
2233
+ body?: never;
2234
+ path: {
2235
+ id: string;
2236
+ };
2237
+ query?: never;
2238
+ url: '/api/players/{id}/measurements';
2239
+ };
2240
+
2241
+ export type GetApiPlayersByIdMeasurementsErrors = {
2242
+ /**
2243
+ * Unauthorized
2244
+ */
2245
+ 401: unknown;
2246
+ /**
2247
+ * Player not found
2248
+ */
2249
+ 404: unknown;
2250
+ };
2251
+
2252
+ export type GetApiPlayersByIdMeasurementsResponses = {
2253
+ 200: MeasurementProfileResponseDto;
2254
+ };
2255
+
2256
+ export type GetApiPlayersByIdMeasurementsResponse =
2257
+ GetApiPlayersByIdMeasurementsResponses[keyof GetApiPlayersByIdMeasurementsResponses];
2258
+
2259
+ export type GetApiPlayersByIdReportData = {
2260
+ body?: never;
2261
+ path: {
2262
+ id: string;
2263
+ };
2264
+ query?: never;
2265
+ url: '/api/players/{id}/report';
2266
+ };
2267
+
2268
+ export type GetApiPlayersByIdReportErrors = {
2269
+ /**
2270
+ * Unauthorized
2271
+ */
2272
+ 401: unknown;
2273
+ /**
2274
+ * Player or report not found
2275
+ */
2276
+ 404: unknown;
2277
+ };
2278
+
2279
+ export type GetApiPlayersByIdReportResponses = {
2280
+ 200: PlayerReportResponseDto;
2281
+ };
2282
+
2283
+ export type GetApiPlayersByIdReportResponse =
2284
+ GetApiPlayersByIdReportResponses[keyof GetApiPlayersByIdReportResponses];
2285
+
2203
2286
  export type GetApiPlayersByIdData = {
2204
2287
  body?: never;
2205
2288
  path: {
@@ -2471,6 +2554,98 @@ export type DeleteApiNotificationsDevicesCurrentResponses = {
2471
2554
  export type DeleteApiNotificationsDevicesCurrentResponse =
2472
2555
  DeleteApiNotificationsDevicesCurrentResponses[keyof DeleteApiNotificationsDevicesCurrentResponses];
2473
2556
 
2557
+ export type PostApiStorageUploadUrlData = {
2558
+ body: CreateUploadUrlDto;
2559
+ path?: never;
2560
+ query?: never;
2561
+ url: '/api/storage/upload-url';
2562
+ };
2563
+
2564
+ export type PostApiStorageUploadUrlErrors = {
2565
+ /**
2566
+ * Unknown bucket or disallowed MIME
2567
+ */
2568
+ 400: unknown;
2569
+ /**
2570
+ * Unauthorized
2571
+ */
2572
+ 401: unknown;
2573
+ /**
2574
+ * File too large for bucket
2575
+ */
2576
+ 413: unknown;
2577
+ };
2578
+
2579
+ export type PostApiStorageUploadUrlResponses = {
2580
+ /**
2581
+ * Signed upload URL issued
2582
+ */
2583
+ 201: UploadUrlResponseDto;
2584
+ };
2585
+
2586
+ export type PostApiStorageUploadUrlResponse =
2587
+ PostApiStorageUploadUrlResponses[keyof PostApiStorageUploadUrlResponses];
2588
+
2589
+ export type GetApiMeasurementsProfileMeData = {
2590
+ body?: never;
2591
+ path?: never;
2592
+ query?: never;
2593
+ url: '/api/measurements/profile/me';
2594
+ };
2595
+
2596
+ export type GetApiMeasurementsProfileMeErrors = {
2597
+ /**
2598
+ * Unauthorized
2599
+ */
2600
+ 401: unknown;
2601
+ };
2602
+
2603
+ export type GetApiMeasurementsProfileMeResponses = {
2604
+ /**
2605
+ * Latest combined measurement profile
2606
+ */
2607
+ 200: MeasurementProfileResponseDto;
2608
+ };
2609
+
2610
+ export type GetApiMeasurementsProfileMeResponse =
2611
+ GetApiMeasurementsProfileMeResponses[keyof GetApiMeasurementsProfileMeResponses];
2612
+
2613
+ export type PostApiMeasurementsPlayerSessionMeData = {
2614
+ body: CreateMeasurementPlayerSessionDto;
2615
+ path?: never;
2616
+ query?: never;
2617
+ url: '/api/measurements/player-session/me';
2618
+ };
2619
+
2620
+ export type PostApiMeasurementsPlayerSessionMeErrors = {
2621
+ /**
2622
+ * Missing measurement ids
2623
+ */
2624
+ 400: unknown;
2625
+ /**
2626
+ * Unauthorized
2627
+ */
2628
+ 401: unknown;
2629
+ /**
2630
+ * Missing body or CMJ measurement
2631
+ */
2632
+ 409: unknown;
2633
+ /**
2634
+ * Interpretation service down
2635
+ */
2636
+ 503: unknown;
2637
+ };
2638
+
2639
+ export type PostApiMeasurementsPlayerSessionMeResponses = {
2640
+ /**
2641
+ * Combined measurement player session
2642
+ */
2643
+ 201: MeasurementSessionDto;
2644
+ };
2645
+
2646
+ export type PostApiMeasurementsPlayerSessionMeResponse =
2647
+ PostApiMeasurementsPlayerSessionMeResponses[keyof PostApiMeasurementsPlayerSessionMeResponses];
2648
+
2474
2649
  export type GetApiProfileMeData = {
2475
2650
  body?: never;
2476
2651
  path?: never;
@@ -3128,38 +3303,6 @@ export type PutApiOrganizationsMeResponses = {
3128
3303
  export type PutApiOrganizationsMeResponse =
3129
3304
  PutApiOrganizationsMeResponses[keyof PutApiOrganizationsMeResponses];
3130
3305
 
3131
- export type PostApiStorageUploadUrlData = {
3132
- body: CreateUploadUrlDto;
3133
- path?: never;
3134
- query?: never;
3135
- url: '/api/storage/upload-url';
3136
- };
3137
-
3138
- export type PostApiStorageUploadUrlErrors = {
3139
- /**
3140
- * Unknown bucket or disallowed MIME
3141
- */
3142
- 400: unknown;
3143
- /**
3144
- * Unauthorized
3145
- */
3146
- 401: unknown;
3147
- /**
3148
- * File too large for bucket
3149
- */
3150
- 413: unknown;
3151
- };
3152
-
3153
- export type PostApiStorageUploadUrlResponses = {
3154
- /**
3155
- * Signed upload URL issued
3156
- */
3157
- 201: UploadUrlResponseDto;
3158
- };
3159
-
3160
- export type PostApiStorageUploadUrlResponse =
3161
- PostApiStorageUploadUrlResponses[keyof PostApiStorageUploadUrlResponses];
3162
-
3163
3306
  export type GetApiInvitationsData = {
3164
3307
  body?: never;
3165
3308
  path?: never;
@@ -3396,66 +3539,6 @@ export type GetApiKycStatusByUserIdResponses = {
3396
3539
  export type GetApiKycStatusByUserIdResponse =
3397
3540
  GetApiKycStatusByUserIdResponses[keyof GetApiKycStatusByUserIdResponses];
3398
3541
 
3399
- export type GetApiMeasurementsProfileMeData = {
3400
- body?: never;
3401
- path?: never;
3402
- query?: never;
3403
- url: '/api/measurements/profile/me';
3404
- };
3405
-
3406
- export type GetApiMeasurementsProfileMeErrors = {
3407
- /**
3408
- * Unauthorized
3409
- */
3410
- 401: unknown;
3411
- };
3412
-
3413
- export type GetApiMeasurementsProfileMeResponses = {
3414
- /**
3415
- * Latest combined measurement profile
3416
- */
3417
- 200: MeasurementProfileResponseDto;
3418
- };
3419
-
3420
- export type GetApiMeasurementsProfileMeResponse =
3421
- GetApiMeasurementsProfileMeResponses[keyof GetApiMeasurementsProfileMeResponses];
3422
-
3423
- export type PostApiMeasurementsPlayerSessionMeData = {
3424
- body: CreateMeasurementPlayerSessionDto;
3425
- path?: never;
3426
- query?: never;
3427
- url: '/api/measurements/player-session/me';
3428
- };
3429
-
3430
- export type PostApiMeasurementsPlayerSessionMeErrors = {
3431
- /**
3432
- * Missing measurement ids
3433
- */
3434
- 400: unknown;
3435
- /**
3436
- * Unauthorized
3437
- */
3438
- 401: unknown;
3439
- /**
3440
- * Missing body or CMJ measurement
3441
- */
3442
- 409: unknown;
3443
- /**
3444
- * Interpretation service down
3445
- */
3446
- 503: unknown;
3447
- };
3448
-
3449
- export type PostApiMeasurementsPlayerSessionMeResponses = {
3450
- /**
3451
- * Combined measurement player session
3452
- */
3453
- 201: MeasurementSessionDto;
3454
- };
3455
-
3456
- export type PostApiMeasurementsPlayerSessionMeResponse =
3457
- PostApiMeasurementsPlayerSessionMeResponses[keyof PostApiMeasurementsPlayerSessionMeResponses];
3458
-
3459
3542
  export type GetApiTrainingGroupedData = {
3460
3543
  body?: never;
3461
3544
  path?: never;