@taimos/radball-digital-api 0.0.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.
Files changed (174) hide show
  1. package/README.md +129 -0
  2. package/aws.graphql +24 -0
  3. package/docs/.nojekyll +1 -0
  4. package/docs/assets/hierarchy.js +1 -0
  5. package/docs/assets/highlight.css +92 -0
  6. package/docs/assets/icons.js +18 -0
  7. package/docs/assets/icons.svg +1 -0
  8. package/docs/assets/main.js +60 -0
  9. package/docs/assets/navigation.js +1 -0
  10. package/docs/assets/search.js +1 -0
  11. package/docs/assets/style.css +1640 -0
  12. package/docs/classes/ValidationCheckResult.html +11 -0
  13. package/docs/enums/PreferenceStatus.html +3 -0
  14. package/docs/functions/checkAddress.html +1 -0
  15. package/docs/functions/checkAssociation.html +1 -0
  16. package/docs/functions/checkClub.html +1 -0
  17. package/docs/functions/checkGym.html +1 -0
  18. package/docs/functions/checkLeague.html +1 -0
  19. package/docs/functions/checkLeagueGroup.html +1 -0
  20. package/docs/functions/checkPerson.html +1 -0
  21. package/docs/functions/checkSeason.html +1 -0
  22. package/docs/functions/checkTeam.html +1 -0
  23. package/docs/functions/validateAddress.html +1 -0
  24. package/docs/functions/validateAssociation.html +1 -0
  25. package/docs/functions/validateClub.html +1 -0
  26. package/docs/functions/validateGym.html +1 -0
  27. package/docs/functions/validateLeague.html +1 -0
  28. package/docs/functions/validateLeagueGroup.html +1 -0
  29. package/docs/functions/validatePerson.html +1 -0
  30. package/docs/functions/validateSeason.html +1 -0
  31. package/docs/functions/validateTeam.html +1 -0
  32. package/docs/hierarchy.html +1 -0
  33. package/docs/index.html +65 -0
  34. package/docs/interfaces/components.html +7 -0
  35. package/docs/interfaces/operations.html +4 -0
  36. package/docs/interfaces/paths.html +118 -0
  37. package/docs/modules.html +1 -0
  38. package/docs/types/AddGameInput.html +4 -0
  39. package/docs/types/Address.html +6 -0
  40. package/docs/types/AddressInput.html +5 -0
  41. package/docs/types/Association.html +13 -0
  42. package/docs/types/AuditLogEntry.html +8 -0
  43. package/docs/types/Club.html +11 -0
  44. package/docs/types/Exact.html +1 -0
  45. package/docs/types/Game.html +13 -0
  46. package/docs/types/Gym.html +7 -0
  47. package/docs/types/Incremental.html +1 -0
  48. package/docs/types/InputMaybe.html +1 -0
  49. package/docs/types/League.html +13 -0
  50. package/docs/types/LeagueGroup.html +11 -0
  51. package/docs/types/MakeEmpty.html +1 -0
  52. package/docs/types/MakeMaybe.html +1 -0
  53. package/docs/types/MakeOptional.html +1 -0
  54. package/docs/types/MatchDay.html +15 -0
  55. package/docs/types/MatchdayTeam.html +6 -0
  56. package/docs/types/Maybe.html +1 -0
  57. package/docs/types/ModifyAssociationInput.html +10 -0
  58. package/docs/types/ModifyClubInput.html +7 -0
  59. package/docs/types/ModifyGameInput.html +10 -0
  60. package/docs/types/ModifyGymInput.html +5 -0
  61. package/docs/types/ModifyLeagueGroupInput.html +7 -0
  62. package/docs/types/ModifyLeagueInput.html +9 -0
  63. package/docs/types/ModifyMatchDayInput.html +10 -0
  64. package/docs/types/ModifyMatchDayTeamInput.html +3 -0
  65. package/docs/types/ModifyPersonInput.html +12 -0
  66. package/docs/types/ModifyPreferredMatchdayDateInput.html +6 -0
  67. package/docs/types/ModifySeasonInput.html +7 -0
  68. package/docs/types/ModifyTeamInput.html +10 -0
  69. package/docs/types/Mutation.html +39 -0
  70. package/docs/types/MutationAddAssociationArgs.html +2 -0
  71. package/docs/types/MutationAddClubArgs.html +2 -0
  72. package/docs/types/MutationAddGameToMatchDayArgs.html +4 -0
  73. package/docs/types/MutationAddGymArgs.html +2 -0
  74. package/docs/types/MutationAddLeagueArgs.html +2 -0
  75. package/docs/types/MutationAddLeagueGroupArgs.html +2 -0
  76. package/docs/types/MutationAddMatchDayArgs.html +2 -0
  77. package/docs/types/MutationAddMatchDayTeamArgs.html +2 -0
  78. package/docs/types/MutationAddPersonArgs.html +2 -0
  79. package/docs/types/MutationAddPreferredDateForLeagueArgs.html +2 -0
  80. package/docs/types/MutationAddSeasonArgs.html +2 -0
  81. package/docs/types/MutationAddTeamArgs.html +2 -0
  82. package/docs/types/MutationModifyAssociationArgs.html +2 -0
  83. package/docs/types/MutationModifyClubArgs.html +2 -0
  84. package/docs/types/MutationModifyGameInMatchDayArgs.html +4 -0
  85. package/docs/types/MutationModifyGymArgs.html +2 -0
  86. package/docs/types/MutationModifyLeagueArgs.html +2 -0
  87. package/docs/types/MutationModifyLeagueGroupArgs.html +2 -0
  88. package/docs/types/MutationModifyMatchDayArgs.html +2 -0
  89. package/docs/types/MutationModifyMatchDayTeamArgs.html +3 -0
  90. package/docs/types/MutationModifyPersonArgs.html +2 -0
  91. package/docs/types/MutationModifyPreferredDateForLeagueArgs.html +2 -0
  92. package/docs/types/MutationModifySeasonArgs.html +2 -0
  93. package/docs/types/MutationModifyTeamArgs.html +2 -0
  94. package/docs/types/MutationRegisterTeamsForSeasonArgs.html +2 -0
  95. package/docs/types/MutationRemoveAssociationArgs.html +2 -0
  96. package/docs/types/MutationRemoveClubArgs.html +2 -0
  97. package/docs/types/MutationRemoveGameFromMatchDayArgs.html +4 -0
  98. package/docs/types/MutationRemoveGymArgs.html +2 -0
  99. package/docs/types/MutationRemoveLeagueArgs.html +2 -0
  100. package/docs/types/MutationRemoveLeagueGroupArgs.html +2 -0
  101. package/docs/types/MutationRemoveMatchDayArgs.html +2 -0
  102. package/docs/types/MutationRemoveMatchDayTeamArgs.html +2 -0
  103. package/docs/types/MutationRemovePersonArgs.html +2 -0
  104. package/docs/types/MutationRemovePreferredDateForLeagueArgs.html +4 -0
  105. package/docs/types/MutationRemoveSeasonArgs.html +2 -0
  106. package/docs/types/MutationRemoveTeamArgs.html +2 -0
  107. package/docs/types/Person.html +14 -0
  108. package/docs/types/PersonPermission.html +6 -0
  109. package/docs/types/PreferredMatchdayDate.html +8 -0
  110. package/docs/types/Query.html +36 -0
  111. package/docs/types/QueryGetAllGamesOfTeamInSeasonArgs.html +3 -0
  112. package/docs/types/QueryGetAllMatchdaysOfTeamInSeasonArgs.html +3 -0
  113. package/docs/types/QueryGetAllPlayersOfClubInSeasonArgs.html +3 -0
  114. package/docs/types/QueryGetAllTeamsOfClubInSeasonArgs.html +3 -0
  115. package/docs/types/QueryGetAssociationByIdArgs.html +2 -0
  116. package/docs/types/QueryGetAuditLogEntriesForActorArgs.html +4 -0
  117. package/docs/types/QueryGetAuditLogEntriesForResourceArgs.html +5 -0
  118. package/docs/types/QueryGetAvailableDatesForSeasonArgs.html +3 -0
  119. package/docs/types/QueryGetClubByIdArgs.html +2 -0
  120. package/docs/types/QueryGetGameByIdArgs.html +3 -0
  121. package/docs/types/QueryGetGymByIdArgs.html +2 -0
  122. package/docs/types/QueryGetLeagueByIdArgs.html +2 -0
  123. package/docs/types/QueryGetLeagueGroupByIdArgs.html +2 -0
  124. package/docs/types/QueryGetListOfClubsByAssociationArgs.html +2 -0
  125. package/docs/types/QueryGetListOfClubsByLeagueArgs.html +2 -0
  126. package/docs/types/QueryGetListOfClubsByLeagueGroupArgs.html +2 -0
  127. package/docs/types/QueryGetListOfGroupsInLeagueArgs.html +2 -0
  128. package/docs/types/QueryGetListOfGymsArgs.html +2 -0
  129. package/docs/types/QueryGetListOfLeagueInSeasonArgs.html +2 -0
  130. package/docs/types/QueryGetListOfMatchdaysArgs.html +4 -0
  131. package/docs/types/QueryGetListOfMatchdaysInSeasonArgs.html +2 -0
  132. package/docs/types/QueryGetListOfPeopleArgs.html +2 -0
  133. package/docs/types/QueryGetListOfSeasonsArgs.html +2 -0
  134. package/docs/types/QueryGetListOfTeamsForLeagueArgs.html +2 -0
  135. package/docs/types/QueryGetListOfTeamsForLeagueGroupArgs.html +3 -0
  136. package/docs/types/QueryGetMatchdayByIdArgs.html +2 -0
  137. package/docs/types/QueryGetPersonByIdArgs.html +2 -0
  138. package/docs/types/QueryGetPersonByUciCodeArgs.html +2 -0
  139. package/docs/types/QueryGetPersonPermissionsArgs.html +2 -0
  140. package/docs/types/QueryGetPreferredDatesForClubArgs.html +3 -0
  141. package/docs/types/QueryGetSeasonByIdArgs.html +2 -0
  142. package/docs/types/QueryGetTeamByIdArgs.html +2 -0
  143. package/docs/types/RefereeInfo.html +4 -0
  144. package/docs/types/RefereeInfoInput.html +3 -0
  145. package/docs/types/RegisterTeamInput.html +8 -0
  146. package/docs/types/RegisterTeamsForSeasonInput.html +5 -0
  147. package/docs/types/SaveAssociationInput.html +9 -0
  148. package/docs/types/SaveClubInput.html +7 -0
  149. package/docs/types/SaveGymInput.html +5 -0
  150. package/docs/types/SaveLeagueGroupInput.html +7 -0
  151. package/docs/types/SaveLeagueInput.html +9 -0
  152. package/docs/types/SaveMatchDayInput.html +11 -0
  153. package/docs/types/SaveMatchDayTeamInput.html +4 -0
  154. package/docs/types/SavePersonInput.html +11 -0
  155. package/docs/types/SavePreferredMatchdayDateInput.html +6 -0
  156. package/docs/types/SaveSeasonInput.html +7 -0
  157. package/docs/types/SaveTeamInput.html +10 -0
  158. package/docs/types/Scalars.html +18 -0
  159. package/docs/types/Season.html +10 -0
  160. package/docs/types/Team.html +12 -0
  161. package/docs/types/_defs.html +1 -0
  162. package/docs/types/webhooks.html +1 -0
  163. package/graphql-codegen.yml +21 -0
  164. package/lib/generated/graphql.model.generated.d.ts +808 -0
  165. package/lib/generated/graphql.model.generated.js +9 -0
  166. package/lib/generated/rest.model.generated.d.ts +333 -0
  167. package/lib/generated/rest.model.generated.js +7 -0
  168. package/lib/index.d.ts +3 -0
  169. package/lib/index.js +20 -0
  170. package/lib/validation.d.ts +34 -0
  171. package/lib/validation.js +413 -0
  172. package/package.json +128 -0
  173. package/rest.yaml +260 -0
  174. package/schema.graphql +541 -0
package/rest.yaml ADDED
@@ -0,0 +1,260 @@
1
+ openapi: 3.0.1
2
+ paths:
3
+ /import/clubs:
4
+ post:
5
+ operationId: importClubs
6
+ security:
7
+ - CognitoAuth: []
8
+ description: |
9
+ Import clubs from a fixed-width text file.
10
+
11
+ File Format:
12
+ - Fixed-width text file (encoding: UTF-8)
13
+ - One club per line
14
+ - Fields:
15
+ - Club Name (40 chars)
16
+ - Contact Name (40 chars)
17
+ - Street Address (40 chars)
18
+ - City with Postal Code (40 chars)
19
+ - Phone (15 chars)
20
+ - Fax (15 chars)
21
+ - Mobile (15 chars)
22
+ - Email (40 chars)
23
+
24
+ Example line:
25
+ ```
26
+ Ailingen Max Mustermann Hauptstraße 123 88046 Musterstadt 07541-1234567 max.mustermann@example.com
27
+ ```
28
+ requestBody:
29
+ required: true
30
+ content:
31
+ text/plain:
32
+ schema:
33
+ type: string
34
+ format: binary
35
+ example: |
36
+ Ailingen Max Mustermann Hauptstraße 123 88046 Musterstadt 07541-1234567 max.mustermann@example.com
37
+ Alpirsbach Erika Musterfrau Musterweg 42 72275 Testdorf 07444-7654321 0151-98765432 07444-1122334 erika.musterfrau@example.com
38
+ responses:
39
+ '200':
40
+ description: Import successful
41
+ content:
42
+ application/json:
43
+ schema:
44
+ type: object
45
+ properties:
46
+ success:
47
+ type: boolean
48
+ example:
49
+ success: true
50
+ '400':
51
+ description: Invalid file format or content
52
+ content:
53
+ application/json:
54
+ schema:
55
+ type: object
56
+ properties:
57
+ error:
58
+ type: string
59
+ example:
60
+ error: "Invalid file format: Line 1 has incorrect length"
61
+ '401':
62
+ description: Unauthorized
63
+ content:
64
+ application/json:
65
+ schema:
66
+ type: object
67
+ properties:
68
+ error:
69
+ type: string
70
+ example:
71
+ error: "Invalid or missing authentication token"
72
+ /import/gyms:
73
+ post:
74
+ operationId: importGyms
75
+ security:
76
+ - CognitoAuth: []
77
+ description: |
78
+ Import gyms from a fixed-width text file.
79
+
80
+ File Format:
81
+ - Fixed-width text file (encoding: UTF-8)
82
+ - One gym per line
83
+ - Fields:
84
+ - Club Name (50 chars)
85
+ - Gym Name (50 chars)
86
+ - Street Address (50 chars)
87
+ - Zip Code (5 chars)
88
+ - City (50 chars)
89
+ - Phone (20 chars)
90
+
91
+ Example line:
92
+ ```
93
+ Ailingen Rotachhalle Ailingen Leonie Fürst Straße 88048 Friedrichshafen-Ailingen 0177-1234567
94
+ ```
95
+ requestBody:
96
+ required: true
97
+ content:
98
+ text/plain:
99
+ schema:
100
+ type: string
101
+ format: binary
102
+ example: |
103
+ Ailingen Rotachhalle Ailingen Leonie Fürst Straße 88048 Friedrichshafen-Ailingen 0177-1234567
104
+ Alpirsbach Turnhalle Sulzberg Sulzberg 72275 Alpirsbach
105
+ responses:
106
+ '200':
107
+ description: Import successful
108
+ content:
109
+ application/json:
110
+ schema:
111
+ type: object
112
+ properties:
113
+ success:
114
+ type: boolean
115
+ example:
116
+ success: true
117
+ '400':
118
+ description: Invalid file format or content
119
+ content:
120
+ application/json:
121
+ schema:
122
+ type: object
123
+ properties:
124
+ error:
125
+ type: string
126
+ example:
127
+ error: "Invalid file format: Line 1 has incorrect length"
128
+ '401':
129
+ description: Unauthorized
130
+ content:
131
+ application/json:
132
+ schema:
133
+ type: object
134
+ properties:
135
+ error:
136
+ type: string
137
+ example:
138
+ error: "Invalid or missing authentication token"
139
+ /import/persons:
140
+ post:
141
+ operationId: importPersons
142
+ security:
143
+ - CognitoAuth: []
144
+ description: |
145
+ Import persons from a CSV file.
146
+
147
+ File Format:
148
+ - CSV file with semicolon (;) as separator (encoding: UTF-8)
149
+ - One person per line
150
+ - Fields (in order):
151
+ 1. Nachname (lastName)
152
+ 2. Vorname (firstName)
153
+ 3. Strasse (street address)
154
+ 4. PLZ (zip code)
155
+ 5. Wohnort (city)
156
+ 6. Verein (club)
157
+ 7. LV (association)
158
+ 8. E-Mail (email)
159
+ 9. Lizenz-Nr (license number)
160
+ 10. UCI-ID (UCI code)
161
+ 11. Geburtsdatum (date of birth in format DD.MM.YYYY HH:MM:SS)
162
+ 12. Geschlecht (gender: männlich, weiblich, divers)
163
+ 13. Nation (nationality)
164
+ 14. Disziplin (discipline - Only "Radball" will be imported)
165
+ 15. Lizenz 2025 (license status for current year)
166
+
167
+ Example line:
168
+ ```
169
+ Mustermann;Max;Musterstraße 123;12345;Musterstadt;RV Musterverein;BDR;max.mustermann@example.com;12345;10012345678,00;15.05.1990 00:00:00;männlich;GER;Radball;1
170
+ ```
171
+ requestBody:
172
+ required: true
173
+ content:
174
+ text/plain:
175
+ schema:
176
+ type: string
177
+ format: binary
178
+ example: |
179
+ Nachname;Vorname;Strasse;PLZ;Wohnort;Verein;LV;E-Mail;Lizenz-Nr;UCI-ID;Geburtsdatum;Geschlecht;Nation;Disziplin;Lizenz 2025
180
+ Mustermann;Max;Musterstraße 123;12345;Musterstadt;RV Musterverein;BDR;max.mustermann@example.com;12345;10012345678,00;15.05.1990 00:00:00;männlich;GER;Radball;1
181
+ Musterfrau;Erika;Beispielweg 42;54321;Beispielstadt;SV Beispielverein;WTB;erika.musterfrau@example.com;54321;10023456789,00;20.10.1995 00:00:00;weiblich;GER;Radball;1
182
+ responses:
183
+ '200':
184
+ description: Import successful
185
+ content:
186
+ application/json:
187
+ schema:
188
+ type: object
189
+ required:
190
+ - success
191
+ - stats
192
+ properties:
193
+ success:
194
+ type: boolean
195
+ stats:
196
+ type: object
197
+ required:
198
+ - total
199
+ - imported
200
+ - skipped
201
+ - unmatchedClubs
202
+ - errors
203
+ properties:
204
+ total:
205
+ type: integer
206
+ description: Total number of entries processed
207
+ imported:
208
+ type: integer
209
+ description: Number of successfully imported persons
210
+ skipped:
211
+ type: integer
212
+ description: Number of entries skipped due to errors
213
+ unmatchedClubs:
214
+ type: integer
215
+ description: Number of entries with unmatched clubs
216
+ errors:
217
+ type: array
218
+ items:
219
+ type: string
220
+ description: List of error messages
221
+ example:
222
+ success: true
223
+ stats:
224
+ total: 3
225
+ imported: 3
226
+ skipped: 0
227
+ unmatchedClubs: 1
228
+ errors:
229
+ - 'Could not find matching club for "Unknown Club"/"BDR" (Person: Max Mustermann)'
230
+ '400':
231
+ description: Invalid file format or content
232
+ content:
233
+ application/json:
234
+ schema:
235
+ type: object
236
+ properties:
237
+ error:
238
+ type: string
239
+ example:
240
+ error: "Invalid file format: Line 2 has incorrect number of fields"
241
+ '401':
242
+ description: Unauthorized
243
+ content:
244
+ application/json:
245
+ schema:
246
+ type: object
247
+ properties:
248
+ error:
249
+ type: string
250
+ example:
251
+ error: "Invalid or missing authentication token"
252
+ info:
253
+ title: rest API definition
254
+ version: '1.0'
255
+ components:
256
+ securitySchemes:
257
+ CognitoAuth:
258
+ type: http
259
+ scheme: bearer
260
+ bearerFormat: JWT