@taimos/radball-digital-api 0.0.40 → 0.0.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/docs/assets/navigation.js +1 -1
  2. package/docs/assets/search.js +1 -1
  3. package/docs/enums/RegistrationPermission.html +4 -0
  4. package/docs/modules.html +1 -1
  5. package/docs/types/Association.html +3 -2
  6. package/docs/types/Competition.html +18 -0
  7. package/docs/types/CompetitionGroup.html +11 -0
  8. package/docs/types/CompetitionGroupStatistics.html +6 -0
  9. package/docs/types/CompetitionGroupView.html +7 -0
  10. package/docs/types/CompetitionRegistrationError.html +6 -0
  11. package/docs/types/CompetitionRegistrationResult.html +5 -0
  12. package/docs/types/CompetitionTeam.html +12 -0
  13. package/docs/types/ModifyCompetitionGroupInput.html +7 -0
  14. package/docs/types/ModifyCompetitionInput.html +15 -0
  15. package/docs/types/ModifyCompetitionTeamInput.html +9 -0
  16. package/docs/types/Mutation.html +13 -2
  17. package/docs/types/MutationAddCompetitionArgs.html +2 -0
  18. package/docs/types/MutationAddCompetitionGroupArgs.html +2 -0
  19. package/docs/types/MutationAddCompetitionTeamArgs.html +2 -0
  20. package/docs/types/MutationModifyCompetitionArgs.html +2 -0
  21. package/docs/types/MutationModifyCompetitionGroupArgs.html +2 -0
  22. package/docs/types/MutationModifyCompetitionTeamArgs.html +2 -0
  23. package/docs/types/MutationRegisterCompetitionTeamsArgs.html +2 -0
  24. package/docs/types/MutationRemoveCompetitionArgs.html +2 -0
  25. package/docs/types/MutationRemoveCompetitionGroupArgs.html +2 -0
  26. package/docs/types/MutationRemoveCompetitionTeamArgs.html +2 -0
  27. package/docs/types/MutationUpdateCompetitionTeamGroupArgs.html +3 -0
  28. package/docs/types/Query.html +11 -2
  29. package/docs/types/QueryCanClubRegisterForCompetitionArgs.html +3 -0
  30. package/docs/types/QueryGetCompetitionByIdArgs.html +2 -0
  31. package/docs/types/QueryGetCompetitionGroupByIdArgs.html +2 -0
  32. package/docs/types/QueryGetCompetitionGroupViewArgs.html +2 -0
  33. package/docs/types/QueryGetCompetitionTeamByIdArgs.html +2 -0
  34. package/docs/types/QueryGetListOfCompetitionsArgs.html +2 -0
  35. package/docs/types/QueryGetListOfGroupsInCompetitionArgs.html +2 -0
  36. package/docs/types/QueryGetListOfTeamsInCompetitionArgs.html +2 -0
  37. package/docs/types/QueryGetListOfTeamsInCompetitionGroupArgs.html +2 -0
  38. package/docs/types/RegisterCompetitionTeamInput.html +9 -0
  39. package/docs/types/RegisterCompetitionTeamsInput.html +5 -0
  40. package/docs/types/RegistrationEligibility.html +6 -0
  41. package/docs/types/SaveCompetitionGroupInput.html +7 -0
  42. package/docs/types/SaveCompetitionInput.html +15 -0
  43. package/docs/types/SaveCompetitionTeamInput.html +10 -0
  44. package/lib/generated/graphql.model.generated.d.ts +252 -0
  45. package/lib/generated/graphql.model.generated.js +8 -2
  46. package/llm.md +1055 -440
  47. package/package.json +1 -1
  48. package/schema.graphql +235 -0
package/package.json CHANGED
@@ -74,7 +74,7 @@
74
74
  "publishConfig": {
75
75
  "access": "public"
76
76
  },
77
- "version": "0.0.40",
77
+ "version": "0.0.41",
78
78
  "jest": {
79
79
  "coverageProvider": "v8",
80
80
  "moduleNameMapper": {
package/schema.graphql CHANGED
@@ -5,6 +5,13 @@ enum PreferenceStatus {
5
5
  AVAILABLE
6
6
  }
7
7
 
8
+ # Competition enums
9
+ enum RegistrationPermission {
10
+ ALL_CLUBS
11
+ ASSOCIATIONS_ONLY
12
+ INVITE_ONLY
13
+ }
14
+
8
15
  type PreferredMatchdayDate @aws_cognito_user_pools {
9
16
  club: Club!
10
17
  season: Season!
@@ -27,6 +34,7 @@ type Association @aws_cognito_user_pools {
27
34
  coordinators: [Person]!
28
35
  groupLeaders: [Person]!
29
36
  seasons: [Season]
37
+ competitions: [Competition]
30
38
  }
31
39
 
32
40
  type Season @aws_cognito_user_pools {
@@ -68,6 +76,71 @@ type LeagueGroup @aws_cognito_user_pools {
68
76
  regulation: String!
69
77
  }
70
78
 
79
+ # Competition types (standalone, not tied to Season)
80
+ type Competition @aws_cognito_user_pools {
81
+ id: ID!
82
+ name: String!
83
+ shortName: String!
84
+ description: String
85
+
86
+ association: Association!
87
+
88
+ # Own date range
89
+ startDate: AWSDate!
90
+ endDate: AWSDate!
91
+
92
+ # Registration period
93
+ registrationStart: AWSDate!
94
+ registrationEnd: AWSDate!
95
+
96
+ # Registration permissions
97
+ registrationPermission: RegistrationPermission!
98
+ allowedRegistrars: [ID]
99
+
100
+ # Age restrictions
101
+ minAge: Int
102
+ maxAge: Int
103
+
104
+ # Relations
105
+ groups: [CompetitionGroup]
106
+ coordinators: [Person]
107
+
108
+ regulationFileUrl: AWSURL
109
+ }
110
+
111
+ type CompetitionGroup @aws_cognito_user_pools {
112
+ id: ID!
113
+
114
+ competition: Competition!
115
+ association: Association!
116
+
117
+ number: Int!
118
+ name: String!
119
+ shortName: String!
120
+
121
+ leader: Person
122
+ regulation: String!
123
+
124
+ teams: [CompetitionTeam]
125
+ }
126
+
127
+ type CompetitionTeam @aws_cognito_user_pools {
128
+ id: ID!
129
+
130
+ name: String!
131
+
132
+ club: Club!
133
+ competition: Competition!
134
+ competitionGroup: CompetitionGroup
135
+
136
+ players: [Person]!
137
+
138
+ withoutCompetition: Boolean
139
+ exemptionRequest: String
140
+ secondRightToPlay: Boolean
141
+ sgClub: Club
142
+ }
143
+
71
144
  type Club @aws_cognito_user_pools {
72
145
  id: ID!
73
146
  name: String!
@@ -239,6 +312,42 @@ type CalendarDate @aws_cognito_user_pools {
239
312
  matchdays: [MatchDay!]!
240
313
  }
241
314
 
315
+ # Competition registration types
316
+ type RegistrationEligibility @aws_cognito_user_pools {
317
+ canRegister: Boolean!
318
+ reason: String
319
+ registrationOpen: Boolean!
320
+ registrationEnds: AWSDate
321
+ }
322
+
323
+ type CompetitionRegistrationResult @aws_cognito_user_pools {
324
+ success: Boolean!
325
+ registeredTeams: [CompetitionTeam]!
326
+ errors: [CompetitionRegistrationError]!
327
+ }
328
+
329
+ type CompetitionRegistrationError @aws_cognito_user_pools {
330
+ teamName: String!
331
+ clubId: ID
332
+ errorCode: String!
333
+ message: String!
334
+ }
335
+
336
+ type CompetitionGroupView @aws_cognito_user_pools {
337
+ competitionGroup: CompetitionGroup!
338
+ teams: [TeamDetail]!
339
+ clubs: [Club]!
340
+ gyms: [Gym]!
341
+ statistics: CompetitionGroupStatistics
342
+ }
343
+
344
+ type CompetitionGroupStatistics @aws_cognito_user_pools {
345
+ totalTeams: Int!
346
+ totalPlayers: Int!
347
+ totalClubs: Int!
348
+ totalGyms: Int!
349
+ }
350
+
242
351
  # Connection types for pagination
243
352
 
244
353
  type PersonConnection @aws_cognito_user_pools {
@@ -537,6 +646,100 @@ input RegisterTeamsForSeasonInput {
537
646
  preferredDates: [SavePreferredMatchdayDateInput]
538
647
  }
539
648
 
649
+ # Competition input types
650
+ input SaveCompetitionInput {
651
+ name: String!
652
+ shortName: String!
653
+ description: String
654
+ associationId: ID!
655
+ startDate: AWSDate!
656
+ endDate: AWSDate!
657
+ registrationStart: AWSDate!
658
+ registrationEnd: AWSDate!
659
+ registrationPermission: RegistrationPermission
660
+ allowedRegistrars: [ID]
661
+ minAge: Int
662
+ maxAge: Int
663
+ regulationFileUrl: AWSURL
664
+ coordinatorIds: [ID]
665
+ }
666
+
667
+ input ModifyCompetitionInput {
668
+ id: ID!
669
+ name: String
670
+ shortName: String
671
+ description: String
672
+ startDate: AWSDate
673
+ endDate: AWSDate
674
+ registrationStart: AWSDate
675
+ registrationEnd: AWSDate
676
+ registrationPermission: RegistrationPermission
677
+ allowedRegistrars: [ID]
678
+ minAge: Int
679
+ maxAge: Int
680
+ regulationFileUrl: AWSURL
681
+ coordinatorIds: [ID]
682
+ }
683
+
684
+ input SaveCompetitionGroupInput {
685
+ competitionId: ID!
686
+ number: Int!
687
+ name: String!
688
+ shortName: String!
689
+ leaderId: ID
690
+ regulation: String!
691
+ }
692
+
693
+ input ModifyCompetitionGroupInput {
694
+ id: ID!
695
+ number: Int
696
+ name: String
697
+ shortName: String
698
+ leaderId: ID
699
+ regulation: String
700
+ }
701
+
702
+ input SaveCompetitionTeamInput {
703
+ name: String!
704
+ clubId: ID!
705
+ competitionId: ID!
706
+ competitionGroupId: ID
707
+ playerIds: [ID!]!
708
+ withoutCompetition: Boolean
709
+ exemptionRequest: String
710
+ secondRightToPlay: Boolean
711
+ sgClubId: ID
712
+ }
713
+
714
+ input ModifyCompetitionTeamInput {
715
+ id: ID!
716
+ name: String
717
+ competitionGroupId: ID
718
+ playerIds: [ID]
719
+ withoutCompetition: Boolean
720
+ exemptionRequest: String
721
+ secondRightToPlay: Boolean
722
+ sgClubId: ID
723
+ }
724
+
725
+ # Federation bulk registration for competitions
726
+ input RegisterCompetitionTeamsInput {
727
+ competitionId: ID!
728
+ registrarClubId: ID!
729
+ registrarPersonId: ID!
730
+ teams: [RegisterCompetitionTeamInput!]!
731
+ }
732
+
733
+ input RegisterCompetitionTeamInput {
734
+ clubId: ID!
735
+ name: String!
736
+ playerIds: [ID!]!
737
+ competitionGroupId: ID
738
+ withoutCompetition: Boolean
739
+ exemptionRequest: String
740
+ secondRightToPlay: Boolean
741
+ sgClubId: ID
742
+ }
540
743
 
541
744
 
542
745
  # Queries
@@ -595,6 +798,21 @@ type Query {
595
798
 
596
799
  # Aggregated queries
597
800
  getAllMatchdaysInSeason(seasonId: ID!): [MatchDay!]! @aws_cognito_user_pools
801
+
802
+ # Competition queries
803
+ getCompetitionById(id: ID!): Competition @aws_cognito_user_pools
804
+ getListOfCompetitions(associationId: ID!): [Competition] @aws_cognito_user_pools
805
+
806
+ getCompetitionGroupById(groupId: ID!): CompetitionGroup @aws_cognito_user_pools
807
+ getCompetitionGroupView(groupId: ID!): CompetitionGroupView @aws_cognito_user_pools
808
+ getListOfGroupsInCompetition(competitionId: ID!): [CompetitionGroup] @aws_cognito_user_pools
809
+
810
+ getCompetitionTeamById(id: ID!): CompetitionTeam @aws_cognito_user_pools
811
+ getListOfTeamsInCompetition(competitionId: ID!): [CompetitionTeam] @aws_cognito_user_pools
812
+ getListOfTeamsInCompetitionGroup(groupId: ID!): [CompetitionTeam] @aws_cognito_user_pools
813
+
814
+ # Registration eligibility check
815
+ canClubRegisterForCompetition(clubId: ID!, competitionId: ID!): RegistrationEligibility @aws_cognito_user_pools
598
816
  }
599
817
 
600
818
  # Mutations
@@ -656,4 +874,21 @@ type Mutation {
656
874
 
657
875
  # Bulk import
658
876
  importMatchdayFromRBT(groupId: ID!, data: String!): MatchDay @aws_cognito_user_pools
877
+
878
+ # Competition mutations
879
+ addCompetition(competition: SaveCompetitionInput!): Competition @aws_cognito_user_pools
880
+ modifyCompetition(competition: ModifyCompetitionInput!): Competition @aws_cognito_user_pools
881
+ removeCompetition(competitionId: ID!): Boolean @aws_cognito_user_pools
882
+
883
+ addCompetitionGroup(group: SaveCompetitionGroupInput!): CompetitionGroup @aws_cognito_user_pools
884
+ modifyCompetitionGroup(group: ModifyCompetitionGroupInput!): CompetitionGroup @aws_cognito_user_pools
885
+ removeCompetitionGroup(groupId: ID!): Boolean @aws_cognito_user_pools
886
+
887
+ addCompetitionTeam(team: SaveCompetitionTeamInput!): CompetitionTeam @aws_cognito_user_pools
888
+ modifyCompetitionTeam(team: ModifyCompetitionTeamInput!): CompetitionTeam @aws_cognito_user_pools
889
+ removeCompetitionTeam(teamId: ID!): Boolean @aws_cognito_user_pools
890
+ updateCompetitionTeamGroup(teamId: ID!, groupId: ID!): CompetitionTeam @aws_cognito_user_pools
891
+
892
+ # Federation bulk registration for competitions
893
+ registerCompetitionTeams(registration: RegisterCompetitionTeamsInput!): CompetitionRegistrationResult @aws_cognito_user_pools
659
894
  }