@bantr-sports/sdk 12.9.0 → 12.10.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.
- package/api-type/src/modules/broadcast/broadcast.factory.d.ts +4 -0
- package/api-type/src/modules/broadcast/broadcast.schema.d.ts +294 -0
- package/api-type/src/modules/broadcast/broadcast.service.d.ts +98 -0
- package/api-type/src/modules/chat/chat.repository.d.ts +22 -0
- package/api-type/src/modules/chat/chat.schema.d.ts +5 -0
- package/api-type/src/modules/chat/chat.service.d.ts +18 -0
- package/api-type/src/modules/geolocation/geolocation.schema.d.ts +22 -1
- package/api-type/src/modules/geolocation/geolocation.service.d.ts +2 -0
- package/api-type/src/modules/marketplace/marketplace.schema.d.ts +2 -1
- package/api-type/src/modules/member_notification_settings/member_notification_settings.middleware.d.ts +8 -4
- package/api-type/src/modules/member_notification_settings/member_notification_settings.service.d.ts +1 -0
- package/api-type/src/modules/scout_invite/scout_invite.factory.d.ts +4 -0
- package/api-type/src/modules/scout_invite/scout_invite.schema.d.ts +51 -0
- package/api-type/src/modules/scout_invite/scout_invite.service.d.ts +65 -0
- package/api-type/src/modules/suspension/suspension.constants.d.ts +1 -0
- package/api-type/src/modules/suspension/suspension.dates.d.ts +1 -0
- package/api-type/src/modules/suspension/suspension.hooks.d.ts +5 -13
- package/api-type/src/modules/suspension/suspension.queries.d.ts +3 -0
- package/api-type/src/modules/suspension/suspension.schema.d.ts +4 -2
- package/api-type/src/modules/suspension/suspension.scope.d.ts +1 -0
- package/api-type/src/modules/suspension/suspension.service.d.ts +21 -6
- package/api-type/src/trpcRouter/auth.router.d.ts +4 -1
- package/api-type/src/trpcRouter/broadcast.router.d.ts +178 -0
- package/api-type/src/trpcRouter/calendar.router.d.ts +4 -1
- package/api-type/src/trpcRouter/chat.router.d.ts +6 -3
- package/api-type/src/trpcRouter/csae-report.router.d.ts +4 -1
- package/api-type/src/trpcRouter/discount_code.router.d.ts +4 -1
- package/api-type/src/trpcRouter/event.router.d.ts +4 -1
- package/api-type/src/trpcRouter/free_agent_payments.router.d.ts +4 -1
- package/api-type/src/trpcRouter/geolocation.router.d.ts +19 -1
- package/api-type/src/trpcRouter/league.router.d.ts +4 -1
- package/api-type/src/trpcRouter/league_payments.router.d.ts +4 -1
- package/api-type/src/trpcRouter/marketplace.router.d.ts +4 -1
- package/api-type/src/trpcRouter/member_notification_settings.d.ts +4 -1
- package/api-type/src/trpcRouter/messaging.router.d.ts +15 -12
- package/api-type/src/trpcRouter/oauth.router.d.ts +4 -1
- package/api-type/src/trpcRouter/organization.router.d.ts +4 -1
- package/api-type/src/trpcRouter/organization_debt.router.d.ts +4 -1
- package/api-type/src/trpcRouter/pickup_payments.router.d.ts +4 -1
- package/api-type/src/trpcRouter/player_id_validation.router.d.ts +4 -1
- package/api-type/src/trpcRouter/product.router.d.ts +4 -1
- package/api-type/src/trpcRouter/refund_request.router.d.ts +4 -1
- package/api-type/src/trpcRouter/router.d.ts +852 -88
- package/api-type/src/trpcRouter/scout_feed.router.d.ts +4 -1
- package/api-type/src/trpcRouter/scout_invite.router.d.ts +103 -0
- package/api-type/src/trpcRouter/scout_profile.router.d.ts +4 -1
- package/api-type/src/trpcRouter/super_admin_organizers.router.d.ts +4 -1
- package/api-type/src/trpcRouter/super_admin_stripe_settings.router.d.ts +4 -1
- package/api-type/src/trpcRouter/super_admin_transfers.router.d.ts +4 -1
- package/api-type/src/trpcRouter/suspension.router.d.ts +6 -3
- package/api-type/src/trpcRouter/team.d.ts +4 -1
- package/api-type/src/trpcRouter/transaction.router.d.ts +5 -1
- package/api-type/src/types/game_indicator.d.ts +2 -0
- package/api-type/src/types/game_stats.d.ts +25 -0
- package/api-type/src/types/geolocation.d.ts +24 -0
- package/api-type/src/types/index.d.ts +2 -2
- package/api-type/src/types/member_notification_settings.d.ts +2 -1
- package/dist/index.d.ts +1239 -93
- package/dist/index.d.ts.map +1 -1
- package/dist/provider.d.ts +826 -62
- package/dist/provider.d.ts.map +1 -1
- package/dist/query.d.ts +413 -31
- package/dist/query.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const GetBroadcastsInputSchema: z.ZodObject<{
|
|
3
|
+
organizationId: z.ZodNumber;
|
|
4
|
+
orgWorkspaceId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
5
|
+
search: z.ZodOptional<z.ZodString>;
|
|
6
|
+
isArchived: z.ZodOptional<z.ZodEnum<["active", "archived"]>>;
|
|
7
|
+
limit: z.ZodDefault<z.ZodNumber>;
|
|
8
|
+
offset: z.ZodDefault<z.ZodNumber>;
|
|
9
|
+
}, "strip", z.ZodTypeAny, {
|
|
10
|
+
limit: number;
|
|
11
|
+
offset: number;
|
|
12
|
+
organizationId: number;
|
|
13
|
+
search?: string | undefined;
|
|
14
|
+
orgWorkspaceId?: number | null | undefined;
|
|
15
|
+
isArchived?: "active" | "archived" | undefined;
|
|
16
|
+
}, {
|
|
17
|
+
organizationId: number;
|
|
18
|
+
limit?: number | undefined;
|
|
19
|
+
offset?: number | undefined;
|
|
20
|
+
search?: string | undefined;
|
|
21
|
+
orgWorkspaceId?: number | null | undefined;
|
|
22
|
+
isArchived?: "active" | "archived" | undefined;
|
|
23
|
+
}>;
|
|
24
|
+
export type GetBroadcastsInput = z.infer<typeof GetBroadcastsInputSchema>;
|
|
25
|
+
export declare const GetBroadcastByIdInputSchema: z.ZodObject<{
|
|
26
|
+
id: z.ZodNumber;
|
|
27
|
+
}, "strip", z.ZodTypeAny, {
|
|
28
|
+
id: number;
|
|
29
|
+
}, {
|
|
30
|
+
id: number;
|
|
31
|
+
}>;
|
|
32
|
+
export type GetBroadcastByIdInput = z.infer<typeof GetBroadcastByIdInputSchema>;
|
|
33
|
+
export declare const GetAudienceInputSchema: z.ZodObject<{
|
|
34
|
+
seasonId: z.ZodOptional<z.ZodNumber>;
|
|
35
|
+
leagueId: z.ZodOptional<z.ZodNumber>;
|
|
36
|
+
teamId: z.ZodOptional<z.ZodNumber>;
|
|
37
|
+
pickupGroupId: z.ZodOptional<z.ZodNumber>;
|
|
38
|
+
pickupEventId: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
playerRole: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
40
|
+
}, "strip", z.ZodTypeAny, {
|
|
41
|
+
teamId?: number | undefined;
|
|
42
|
+
pickupGroupId?: number | undefined;
|
|
43
|
+
leagueId?: number | undefined;
|
|
44
|
+
seasonId?: number | undefined;
|
|
45
|
+
pickupEventId?: number | undefined;
|
|
46
|
+
playerRole?: string | null | undefined;
|
|
47
|
+
}, {
|
|
48
|
+
teamId?: number | undefined;
|
|
49
|
+
pickupGroupId?: number | undefined;
|
|
50
|
+
leagueId?: number | undefined;
|
|
51
|
+
seasonId?: number | undefined;
|
|
52
|
+
pickupEventId?: number | undefined;
|
|
53
|
+
playerRole?: string | null | undefined;
|
|
54
|
+
}>;
|
|
55
|
+
export type GetAudienceInput = z.infer<typeof GetAudienceInputSchema>;
|
|
56
|
+
export declare const SaveBroadcastInputSchema: z.ZodObject<{
|
|
57
|
+
id: z.ZodOptional<z.ZodNumber>;
|
|
58
|
+
organizationId: z.ZodNumber;
|
|
59
|
+
orgWorkspaceId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
60
|
+
subject: z.ZodString;
|
|
61
|
+
message: z.ZodString;
|
|
62
|
+
delivery: z.ZodObject<{
|
|
63
|
+
email: z.ZodBoolean;
|
|
64
|
+
push: z.ZodBoolean;
|
|
65
|
+
}, "strip", z.ZodTypeAny, {
|
|
66
|
+
email: boolean;
|
|
67
|
+
push: boolean;
|
|
68
|
+
}, {
|
|
69
|
+
email: boolean;
|
|
70
|
+
push: boolean;
|
|
71
|
+
}>;
|
|
72
|
+
senderEmail: z.ZodString;
|
|
73
|
+
audienceGroups: z.ZodArray<z.ZodEffects<z.ZodObject<{
|
|
74
|
+
seasonId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
75
|
+
leagueId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
76
|
+
teamId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
77
|
+
pickupGroupId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
78
|
+
pickupEventId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
79
|
+
playerRole: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
80
|
+
memberIds: z.ZodArray<z.ZodNumber, "many">;
|
|
81
|
+
totalMembers: z.ZodOptional<z.ZodNumber>;
|
|
82
|
+
}, "strip", z.ZodTypeAny, {
|
|
83
|
+
memberIds: number[];
|
|
84
|
+
teamId?: number | null | undefined;
|
|
85
|
+
pickupGroupId?: number | null | undefined;
|
|
86
|
+
leagueId?: number | null | undefined;
|
|
87
|
+
seasonId?: number | null | undefined;
|
|
88
|
+
pickupEventId?: number | null | undefined;
|
|
89
|
+
playerRole?: string | null | undefined;
|
|
90
|
+
totalMembers?: number | undefined;
|
|
91
|
+
}, {
|
|
92
|
+
memberIds: number[];
|
|
93
|
+
teamId?: number | null | undefined;
|
|
94
|
+
pickupGroupId?: number | null | undefined;
|
|
95
|
+
leagueId?: number | null | undefined;
|
|
96
|
+
seasonId?: number | null | undefined;
|
|
97
|
+
pickupEventId?: number | null | undefined;
|
|
98
|
+
playerRole?: string | null | undefined;
|
|
99
|
+
totalMembers?: number | undefined;
|
|
100
|
+
}>, {
|
|
101
|
+
memberIds: number[];
|
|
102
|
+
teamId?: number | null | undefined;
|
|
103
|
+
pickupGroupId?: number | null | undefined;
|
|
104
|
+
leagueId?: number | null | undefined;
|
|
105
|
+
seasonId?: number | null | undefined;
|
|
106
|
+
pickupEventId?: number | null | undefined;
|
|
107
|
+
playerRole?: string | null | undefined;
|
|
108
|
+
totalMembers?: number | undefined;
|
|
109
|
+
}, {
|
|
110
|
+
memberIds: number[];
|
|
111
|
+
teamId?: number | null | undefined;
|
|
112
|
+
pickupGroupId?: number | null | undefined;
|
|
113
|
+
leagueId?: number | null | undefined;
|
|
114
|
+
seasonId?: number | null | undefined;
|
|
115
|
+
pickupEventId?: number | null | undefined;
|
|
116
|
+
playerRole?: string | null | undefined;
|
|
117
|
+
totalMembers?: number | undefined;
|
|
118
|
+
}>, "many">;
|
|
119
|
+
}, "strip", z.ZodTypeAny, {
|
|
120
|
+
message: string;
|
|
121
|
+
organizationId: number;
|
|
122
|
+
subject: string;
|
|
123
|
+
senderEmail: string;
|
|
124
|
+
audienceGroups: {
|
|
125
|
+
memberIds: number[];
|
|
126
|
+
teamId?: number | null | undefined;
|
|
127
|
+
pickupGroupId?: number | null | undefined;
|
|
128
|
+
leagueId?: number | null | undefined;
|
|
129
|
+
seasonId?: number | null | undefined;
|
|
130
|
+
pickupEventId?: number | null | undefined;
|
|
131
|
+
playerRole?: string | null | undefined;
|
|
132
|
+
totalMembers?: number | undefined;
|
|
133
|
+
}[];
|
|
134
|
+
delivery: {
|
|
135
|
+
email: boolean;
|
|
136
|
+
push: boolean;
|
|
137
|
+
};
|
|
138
|
+
id?: number | undefined;
|
|
139
|
+
orgWorkspaceId?: number | null | undefined;
|
|
140
|
+
}, {
|
|
141
|
+
message: string;
|
|
142
|
+
organizationId: number;
|
|
143
|
+
subject: string;
|
|
144
|
+
senderEmail: string;
|
|
145
|
+
audienceGroups: {
|
|
146
|
+
memberIds: number[];
|
|
147
|
+
teamId?: number | null | undefined;
|
|
148
|
+
pickupGroupId?: number | null | undefined;
|
|
149
|
+
leagueId?: number | null | undefined;
|
|
150
|
+
seasonId?: number | null | undefined;
|
|
151
|
+
pickupEventId?: number | null | undefined;
|
|
152
|
+
playerRole?: string | null | undefined;
|
|
153
|
+
totalMembers?: number | undefined;
|
|
154
|
+
}[];
|
|
155
|
+
delivery: {
|
|
156
|
+
email: boolean;
|
|
157
|
+
push: boolean;
|
|
158
|
+
};
|
|
159
|
+
id?: number | undefined;
|
|
160
|
+
orgWorkspaceId?: number | null | undefined;
|
|
161
|
+
}>;
|
|
162
|
+
export type SaveBroadcastInput = z.infer<typeof SaveBroadcastInputSchema>;
|
|
163
|
+
export declare const SendBroadcastInputSchema: z.ZodObject<{
|
|
164
|
+
id: z.ZodOptional<z.ZodNumber>;
|
|
165
|
+
organizationId: z.ZodNumber;
|
|
166
|
+
orgWorkspaceId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
167
|
+
subject: z.ZodString;
|
|
168
|
+
message: z.ZodString;
|
|
169
|
+
delivery: z.ZodObject<{
|
|
170
|
+
email: z.ZodBoolean;
|
|
171
|
+
push: z.ZodBoolean;
|
|
172
|
+
}, "strip", z.ZodTypeAny, {
|
|
173
|
+
email: boolean;
|
|
174
|
+
push: boolean;
|
|
175
|
+
}, {
|
|
176
|
+
email: boolean;
|
|
177
|
+
push: boolean;
|
|
178
|
+
}>;
|
|
179
|
+
senderEmail: z.ZodString;
|
|
180
|
+
} & {
|
|
181
|
+
audienceGroups: z.ZodArray<z.ZodEffects<z.ZodObject<{
|
|
182
|
+
seasonId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
183
|
+
leagueId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
184
|
+
teamId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
185
|
+
pickupGroupId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
186
|
+
pickupEventId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
187
|
+
playerRole: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
188
|
+
memberIds: z.ZodArray<z.ZodNumber, "many">;
|
|
189
|
+
totalMembers: z.ZodOptional<z.ZodNumber>;
|
|
190
|
+
}, "strip", z.ZodTypeAny, {
|
|
191
|
+
memberIds: number[];
|
|
192
|
+
teamId?: number | null | undefined;
|
|
193
|
+
pickupGroupId?: number | null | undefined;
|
|
194
|
+
leagueId?: number | null | undefined;
|
|
195
|
+
seasonId?: number | null | undefined;
|
|
196
|
+
pickupEventId?: number | null | undefined;
|
|
197
|
+
playerRole?: string | null | undefined;
|
|
198
|
+
totalMembers?: number | undefined;
|
|
199
|
+
}, {
|
|
200
|
+
memberIds: number[];
|
|
201
|
+
teamId?: number | null | undefined;
|
|
202
|
+
pickupGroupId?: number | null | undefined;
|
|
203
|
+
leagueId?: number | null | undefined;
|
|
204
|
+
seasonId?: number | null | undefined;
|
|
205
|
+
pickupEventId?: number | null | undefined;
|
|
206
|
+
playerRole?: string | null | undefined;
|
|
207
|
+
totalMembers?: number | undefined;
|
|
208
|
+
}>, {
|
|
209
|
+
memberIds: number[];
|
|
210
|
+
teamId?: number | null | undefined;
|
|
211
|
+
pickupGroupId?: number | null | undefined;
|
|
212
|
+
leagueId?: number | null | undefined;
|
|
213
|
+
seasonId?: number | null | undefined;
|
|
214
|
+
pickupEventId?: number | null | undefined;
|
|
215
|
+
playerRole?: string | null | undefined;
|
|
216
|
+
totalMembers?: number | undefined;
|
|
217
|
+
}, {
|
|
218
|
+
memberIds: number[];
|
|
219
|
+
teamId?: number | null | undefined;
|
|
220
|
+
pickupGroupId?: number | null | undefined;
|
|
221
|
+
leagueId?: number | null | undefined;
|
|
222
|
+
seasonId?: number | null | undefined;
|
|
223
|
+
pickupEventId?: number | null | undefined;
|
|
224
|
+
playerRole?: string | null | undefined;
|
|
225
|
+
totalMembers?: number | undefined;
|
|
226
|
+
}>, "many">;
|
|
227
|
+
}, "strip", z.ZodTypeAny, {
|
|
228
|
+
message: string;
|
|
229
|
+
organizationId: number;
|
|
230
|
+
subject: string;
|
|
231
|
+
senderEmail: string;
|
|
232
|
+
audienceGroups: {
|
|
233
|
+
memberIds: number[];
|
|
234
|
+
teamId?: number | null | undefined;
|
|
235
|
+
pickupGroupId?: number | null | undefined;
|
|
236
|
+
leagueId?: number | null | undefined;
|
|
237
|
+
seasonId?: number | null | undefined;
|
|
238
|
+
pickupEventId?: number | null | undefined;
|
|
239
|
+
playerRole?: string | null | undefined;
|
|
240
|
+
totalMembers?: number | undefined;
|
|
241
|
+
}[];
|
|
242
|
+
delivery: {
|
|
243
|
+
email: boolean;
|
|
244
|
+
push: boolean;
|
|
245
|
+
};
|
|
246
|
+
id?: number | undefined;
|
|
247
|
+
orgWorkspaceId?: number | null | undefined;
|
|
248
|
+
}, {
|
|
249
|
+
message: string;
|
|
250
|
+
organizationId: number;
|
|
251
|
+
subject: string;
|
|
252
|
+
senderEmail: string;
|
|
253
|
+
audienceGroups: {
|
|
254
|
+
memberIds: number[];
|
|
255
|
+
teamId?: number | null | undefined;
|
|
256
|
+
pickupGroupId?: number | null | undefined;
|
|
257
|
+
leagueId?: number | null | undefined;
|
|
258
|
+
seasonId?: number | null | undefined;
|
|
259
|
+
pickupEventId?: number | null | undefined;
|
|
260
|
+
playerRole?: string | null | undefined;
|
|
261
|
+
totalMembers?: number | undefined;
|
|
262
|
+
}[];
|
|
263
|
+
delivery: {
|
|
264
|
+
email: boolean;
|
|
265
|
+
push: boolean;
|
|
266
|
+
};
|
|
267
|
+
id?: number | undefined;
|
|
268
|
+
orgWorkspaceId?: number | null | undefined;
|
|
269
|
+
}>;
|
|
270
|
+
export type SendBroadcastInput = z.infer<typeof SendBroadcastInputSchema>;
|
|
271
|
+
export declare const ArchiveBroadcastInputSchema: z.ZodObject<{
|
|
272
|
+
id: z.ZodNumber;
|
|
273
|
+
}, "strip", z.ZodTypeAny, {
|
|
274
|
+
id: number;
|
|
275
|
+
}, {
|
|
276
|
+
id: number;
|
|
277
|
+
}>;
|
|
278
|
+
export type ArchiveBroadcastInput = z.infer<typeof ArchiveBroadcastInputSchema>;
|
|
279
|
+
export declare const DeleteBroadcastInputSchema: z.ZodObject<{
|
|
280
|
+
id: z.ZodNumber;
|
|
281
|
+
}, "strip", z.ZodTypeAny, {
|
|
282
|
+
id: number;
|
|
283
|
+
}, {
|
|
284
|
+
id: number;
|
|
285
|
+
}>;
|
|
286
|
+
export type DeleteBroadcastInput = z.infer<typeof DeleteBroadcastInputSchema>;
|
|
287
|
+
export declare const DownloadBroadcastAudienceCsvInputSchema: z.ZodObject<{
|
|
288
|
+
id: z.ZodNumber;
|
|
289
|
+
}, "strip", z.ZodTypeAny, {
|
|
290
|
+
id: number;
|
|
291
|
+
}, {
|
|
292
|
+
id: number;
|
|
293
|
+
}>;
|
|
294
|
+
export type DownloadBroadcastAudienceCsvInput = z.infer<typeof DownloadBroadcastAudienceCsvInputSchema>;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Member } from '../../models/member';
|
|
2
|
+
import { Broadcast } from '../../models/broadcast';
|
|
3
|
+
import { BroadcastAudienceGroup } from '../../models/broadcast_audience_group';
|
|
4
|
+
import { BroadcastAudienceMember } from '../../models/broadcast_audience_member';
|
|
5
|
+
import { ArchiveBroadcastInput, DeleteBroadcastInput, DownloadBroadcastAudienceCsvInput, GetAudienceInput, GetBroadcastByIdInput, GetBroadcastsInput, SaveBroadcastInput, SendBroadcastInput } from './broadcast.schema';
|
|
6
|
+
import { Organizer } from '../../models/organizer';
|
|
7
|
+
export declare class BroadcastService {
|
|
8
|
+
private readonly MemberModel;
|
|
9
|
+
private readonly BroadcastModel;
|
|
10
|
+
private readonly BroadcastAudienceGroupModel;
|
|
11
|
+
private readonly BroadcastAudienceMemberModel;
|
|
12
|
+
private readonly OrganizerModel;
|
|
13
|
+
constructor(MemberModel: typeof Member, BroadcastModel: typeof Broadcast, BroadcastAudienceGroupModel: typeof BroadcastAudienceGroup, BroadcastAudienceMemberModel: typeof BroadcastAudienceMember, OrganizerModel: typeof Organizer);
|
|
14
|
+
private assertOrganizationAccess;
|
|
15
|
+
private getBroadcastForOrganization;
|
|
16
|
+
private markBroadcastAsSending;
|
|
17
|
+
private markBroadcastAsFailed;
|
|
18
|
+
private assertOrganizationExists;
|
|
19
|
+
private insertInChunks;
|
|
20
|
+
private enqueueBroadcastSend;
|
|
21
|
+
private assertWorkspaceAccess;
|
|
22
|
+
private normalizeAudienceGroups;
|
|
23
|
+
private applyBroadcastFilters;
|
|
24
|
+
private validateAudienceGroups;
|
|
25
|
+
private escapeCsvValue;
|
|
26
|
+
private buildCsvRow;
|
|
27
|
+
private stripHtmlForPushNotification;
|
|
28
|
+
downloadBroadcastAudienceCsv(organizationId: number, { id }: DownloadBroadcastAudienceCsvInput): Promise<string | null>;
|
|
29
|
+
getBroadcastById(organizationId: number, { id }: GetBroadcastByIdInput): Promise<Broadcast | null>;
|
|
30
|
+
deleteBroadcast(organizationId: number, { id }: DeleteBroadcastInput): Promise<{
|
|
31
|
+
success: boolean;
|
|
32
|
+
id: number;
|
|
33
|
+
} | null>;
|
|
34
|
+
getAudience(organizationId: number, payload: GetAudienceInput): Promise<Member[]>;
|
|
35
|
+
saveBroadcast(creatorId: number, organizationId: number, input: SaveBroadcastInput): Promise<any>;
|
|
36
|
+
getBroadcasts(organizationId: number, payload: GetBroadcastsInput): Promise<{
|
|
37
|
+
items: {
|
|
38
|
+
audienceGroups: {
|
|
39
|
+
season: any;
|
|
40
|
+
league: any;
|
|
41
|
+
team: any;
|
|
42
|
+
pickupGroup: any;
|
|
43
|
+
pickupEvent: any;
|
|
44
|
+
id: number;
|
|
45
|
+
broadcastId: number;
|
|
46
|
+
seasonId: number;
|
|
47
|
+
leagueId: number | null;
|
|
48
|
+
teamId: number | null;
|
|
49
|
+
pickupGroupId: number | null;
|
|
50
|
+
pickupEventId: number | null;
|
|
51
|
+
playerRole: string | null;
|
|
52
|
+
totalMembers: number;
|
|
53
|
+
members?: Partial<Member>[];
|
|
54
|
+
audienceMembers?: BroadcastAudienceMember[];
|
|
55
|
+
createdAt: Date;
|
|
56
|
+
updatedAt: Date;
|
|
57
|
+
$modelClass: import("objection").ModelClass<BroadcastAudienceGroup>;
|
|
58
|
+
QueryBuilderType: import("objection").QueryBuilder<BroadcastAudienceGroup, BroadcastAudienceGroup[]>;
|
|
59
|
+
}[];
|
|
60
|
+
id: number;
|
|
61
|
+
organizationId: number;
|
|
62
|
+
orgWorkspaceId: number | null;
|
|
63
|
+
seasonId: number;
|
|
64
|
+
leagueId: number | null;
|
|
65
|
+
creatorId: number;
|
|
66
|
+
subject: string;
|
|
67
|
+
message: string;
|
|
68
|
+
emailNotification: boolean;
|
|
69
|
+
pushNotification: boolean;
|
|
70
|
+
senderEmail: string;
|
|
71
|
+
status: string;
|
|
72
|
+
isArchived: boolean;
|
|
73
|
+
sentAt: Date | null;
|
|
74
|
+
createdAt: Date;
|
|
75
|
+
updatedAt: Date;
|
|
76
|
+
deletedAt: Date | null;
|
|
77
|
+
$modelClass: import("objection").ModelClass<Broadcast>;
|
|
78
|
+
QueryBuilderType: import("objection").QueryBuilder<Broadcast, Broadcast[]>;
|
|
79
|
+
}[];
|
|
80
|
+
total: number;
|
|
81
|
+
limit: number;
|
|
82
|
+
offset: number;
|
|
83
|
+
}>;
|
|
84
|
+
toggleArchiveBroadcast(organizationId: number, { id }: ArchiveBroadcastInput): Promise<Broadcast | null>;
|
|
85
|
+
sendBroadcast(creatorId: number, organizationId: number, input: SendBroadcastInput): Promise<{
|
|
86
|
+
broadcast: Broadcast;
|
|
87
|
+
queued: boolean;
|
|
88
|
+
sentEmails: number;
|
|
89
|
+
sentPushNotifications: number;
|
|
90
|
+
createdNotifications: number;
|
|
91
|
+
} | null>;
|
|
92
|
+
processQueuedBroadcast(creatorId: number, organizationId: number, broadcastId: number): Promise<{
|
|
93
|
+
broadcast: Broadcast;
|
|
94
|
+
sentEmails: number;
|
|
95
|
+
sentPushNotifications: number;
|
|
96
|
+
createdNotifications: number;
|
|
97
|
+
} | null>;
|
|
98
|
+
}
|
|
@@ -23,6 +23,22 @@ type CreatePollInput = {
|
|
|
23
23
|
allowMultiple: boolean;
|
|
24
24
|
options: string[];
|
|
25
25
|
};
|
|
26
|
+
type CreateScoutInviteMessageInput = {
|
|
27
|
+
chatId: number;
|
|
28
|
+
senderId: number;
|
|
29
|
+
content: string;
|
|
30
|
+
inviteId: number;
|
|
31
|
+
targetType: 'team' | 'pickup';
|
|
32
|
+
targetId: number;
|
|
33
|
+
targetName: string;
|
|
34
|
+
targetImage?: string | null;
|
|
35
|
+
inviteeMemberId: number;
|
|
36
|
+
notification: {
|
|
37
|
+
text: string;
|
|
38
|
+
textMeta: string;
|
|
39
|
+
metaData: Record<string, unknown>;
|
|
40
|
+
};
|
|
41
|
+
};
|
|
26
42
|
type ReactionInput = {
|
|
27
43
|
chatId: number;
|
|
28
44
|
messageId: string;
|
|
@@ -50,8 +66,14 @@ export declare class ChatRepository {
|
|
|
50
66
|
createMessage(input: CreateMessageInput): Promise<any>;
|
|
51
67
|
getChatMessageWithDetails(chatId: number, messageId: string, db?: DbClient): Promise<any>;
|
|
52
68
|
createPoll(input: CreatePollInput): Promise<any>;
|
|
69
|
+
createScoutInviteMessage(input: CreateScoutInviteMessageInput): Promise<any>;
|
|
53
70
|
getPollInChat(chatId: number, pollId: number): Promise<any>;
|
|
54
71
|
getPollChatMessage(chatId: number, pollId: number, db?: DbClient): Promise<any>;
|
|
72
|
+
getPendingScoutInviteForParticipants(targetType: 'team' | 'pickup', targetId: number, inviterMemberId: number, inviteeMemberId: number): Promise<any>;
|
|
73
|
+
getScoutInviteByInviteId(inviteId: number): Promise<any>;
|
|
74
|
+
getScoutInviteByMessageId(messageId: string): Promise<any>;
|
|
75
|
+
listScoutInvites(memberId: number, status?: string): Promise<any>;
|
|
76
|
+
updateScoutInviteStatus(inviteId: number, status: string): Promise<any>;
|
|
55
77
|
votePoll(chatId: number, pollId: number, memberId: number, optionIds: number[]): Promise<any>;
|
|
56
78
|
sendReaction(input: ReactionInput): Promise<any>;
|
|
57
79
|
removeReaction(chatId: number, messageId: string, memberId: number): Promise<{
|
|
@@ -16,6 +16,11 @@ export declare const CHAT_MEMBER_STATUSES: {
|
|
|
16
16
|
readonly REMOVED: "removed";
|
|
17
17
|
readonly LEFT: "left";
|
|
18
18
|
};
|
|
19
|
+
export declare const CHAT_MESSAGE_TYPES: {
|
|
20
|
+
readonly TEXT: "text";
|
|
21
|
+
readonly POLL: "poll";
|
|
22
|
+
readonly INVITE: "invite";
|
|
23
|
+
};
|
|
19
24
|
export declare const chatTypeSchema: z.ZodEnum<["direct", "private_group", "team", "match", "pickup"]>;
|
|
20
25
|
export declare const chatMemberRoleSchema: z.ZodEnum<["owner", "admin", "member"]>;
|
|
21
26
|
export declare const listChatsInputSchema: z.ZodObject<{
|
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
import { ChatRepository } from './chat.repository';
|
|
2
2
|
import { type AddMembersInput, type BlockPlayerInput, type ContextChatInput, type CreateDirectChatInput, type CreatePollInput, type CreatePrivateGroupInput, type GetMessagesInput, type ListGroupMemberCandidatesInput, type ListChatsInput, type MessageActionInput, type MemberChatModerationInput, type MemberChatStateInput, type MessageReactionInput, type RemoveMessageReactionInput, type RemoveMemberInput, type SearchMessagesInput, type SendMessageInput, type SetMessageHighlightedInput, type TransferOwnershipInput, type UpdateChatInput, type VotePollInput } from './chat.schema';
|
|
3
|
+
type SendScoutInviteMessageInput = {
|
|
4
|
+
chatId: number;
|
|
5
|
+
content: string;
|
|
6
|
+
inviteId: number;
|
|
7
|
+
targetType: 'team' | 'pickup';
|
|
8
|
+
targetId: number;
|
|
9
|
+
targetName: string;
|
|
10
|
+
targetImage?: string | null;
|
|
11
|
+
inviteeMemberId: number;
|
|
12
|
+
notification: {
|
|
13
|
+
text: string;
|
|
14
|
+
textMeta: string;
|
|
15
|
+
metaData: Record<string, unknown>;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
3
18
|
export declare class ChatService {
|
|
4
19
|
private readonly repository;
|
|
5
20
|
constructor(repository?: ChatRepository);
|
|
@@ -16,10 +31,12 @@ export declare class ChatService {
|
|
|
16
31
|
createPrivateGroup(actorId: number, input: CreatePrivateGroupInput): Promise<any>;
|
|
17
32
|
listGroupMemberCandidates(memberId: number, input: ListGroupMemberCandidatesInput): Promise<any[]>;
|
|
18
33
|
getOrCreateTeamChat(actorId: number, input: ContextChatInput): Promise<any>;
|
|
34
|
+
syncTeamChat(teamId: number, actorId?: number): Promise<any>;
|
|
19
35
|
getOrCreateMatchChat(actorId: number, input: ContextChatInput): Promise<any>;
|
|
20
36
|
getOrCreatePickupChat(actorId: number, input: ContextChatInput): Promise<any>;
|
|
21
37
|
syncPickupChat(pickupId: number, actorId?: number): Promise<any>;
|
|
22
38
|
sendMessage(actorId: number, input: SendMessageInput): Promise<any>;
|
|
39
|
+
sendScoutInviteMessage(actorId: number, input: SendScoutInviteMessageInput): Promise<any>;
|
|
23
40
|
createPoll(actorId: number, input: CreatePollInput): Promise<any>;
|
|
24
41
|
votePoll(actorId: number, input: VotePollInput): Promise<any>;
|
|
25
42
|
sendReaction(actorId: number, input: MessageReactionInput): Promise<any>;
|
|
@@ -68,3 +85,4 @@ export declare class ChatService {
|
|
|
68
85
|
private ensurePickupChatsForMember;
|
|
69
86
|
private uniqueMemberIds;
|
|
70
87
|
}
|
|
88
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GooglePlacesResponse } from '../../types';
|
|
1
|
+
import type { GooglePlacesResponse, Place, PlaceAutocompleteResponse } from '../../types';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
export declare const GeocodeInputSchema: z.ZodObject<{
|
|
4
4
|
address: z.ZodOptional<z.ZodString>;
|
|
@@ -26,3 +26,24 @@ export declare const SearchByTextInputSchema: z.ZodObject<{
|
|
|
26
26
|
}>;
|
|
27
27
|
export type SearchByTextInputSchema = z.infer<typeof SearchByTextInputSchema>;
|
|
28
28
|
export type SearchByTextOutputSchema = GooglePlacesResponse;
|
|
29
|
+
export declare const AutocompleteInputSchema: z.ZodObject<{
|
|
30
|
+
input: z.ZodString;
|
|
31
|
+
}, "strip", z.ZodTypeAny, {
|
|
32
|
+
input: string;
|
|
33
|
+
}, {
|
|
34
|
+
input: string;
|
|
35
|
+
}>;
|
|
36
|
+
export type AutocompleteInputSchema = z.infer<typeof AutocompleteInputSchema>;
|
|
37
|
+
export type AutocompleteOutputSchema = PlaceAutocompleteResponse;
|
|
38
|
+
export declare const PlaceDetailsInputSchema: z.ZodObject<{
|
|
39
|
+
placeId: z.ZodString;
|
|
40
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
41
|
+
}, "strip", z.ZodTypeAny, {
|
|
42
|
+
placeId: string;
|
|
43
|
+
fields?: string[] | undefined;
|
|
44
|
+
}, {
|
|
45
|
+
placeId: string;
|
|
46
|
+
fields?: string[] | undefined;
|
|
47
|
+
}>;
|
|
48
|
+
export type PlaceDetailsInputSchema = z.infer<typeof PlaceDetailsInputSchema>;
|
|
49
|
+
export type PlaceDetailsOutputSchema = Place;
|
|
@@ -2,4 +2,6 @@ import { GeocodePayload } from '../../services/geolocation';
|
|
|
2
2
|
export declare class GeolocationService {
|
|
3
3
|
fetchGeocode(payload: GeocodePayload): Promise<any>;
|
|
4
4
|
searchByText(text: string, fields?: string[]): Promise<import("../../types").GooglePlacesResponse>;
|
|
5
|
+
autocomplete(input: string): Promise<import("../../types").PlaceAutocompleteResponse>;
|
|
6
|
+
getPlaceDetails(placeId: string, fields?: string[]): Promise<import("../../types").Place>;
|
|
5
7
|
}
|
|
@@ -8,11 +8,15 @@ export type TokenPayload = {
|
|
|
8
8
|
orgWorkspaceId?: number;
|
|
9
9
|
pickupGroupId?: number;
|
|
10
10
|
};
|
|
11
|
-
export declare const tokenProcedure: import("@trpc/server").TRPCProcedureBuilder<import("trpc-koa-adapter").CreateTrpcKoaContextOptions
|
|
12
|
-
|
|
11
|
+
export declare const tokenProcedure: import("@trpc/server").TRPCProcedureBuilder<import("trpc-koa-adapter").CreateTrpcKoaContextOptions & {
|
|
12
|
+
user?: import("../../types/auth").TJwtPayload;
|
|
13
|
+
organizer?: import("../../models/organizer").Organizer;
|
|
14
|
+
}, object, {
|
|
15
|
+
info: import("node_modules/@trpc/server/dist/unstable-core-do-not-import.d-Bl-_61JQ.mjs").TRPCRequestInfo;
|
|
16
|
+
organizer: import("../../models/organizer").Organizer | undefined;
|
|
13
17
|
user: import("../../types/auth").TJwtPayload;
|
|
14
|
-
req: import("http").
|
|
15
|
-
res: import("http").
|
|
18
|
+
req: import("@trpc/server/adapters/node-http").NodeHTTPRequest;
|
|
19
|
+
res: import("@trpc/server/adapters/node-http").NodeHTTPResponse;
|
|
16
20
|
tokenPayload: TokenPayload;
|
|
17
21
|
}, {
|
|
18
22
|
token: string;
|
package/api-type/src/modules/member_notification_settings/member_notification_settings.service.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export declare class MemberNotificationSettingsService {
|
|
|
21
21
|
private get defaultSettings();
|
|
22
22
|
private get defaultPickupGroupSettings();
|
|
23
23
|
private sortBySettingOrder;
|
|
24
|
+
private withMissingDefaultSettings;
|
|
24
25
|
private toSetting;
|
|
25
26
|
getMemberNotificationSettings(memberId: number): Promise<MemberNotificationSettings>;
|
|
26
27
|
updateMemberNotificationSettings(memberId: number, payload: UpdateMemberNotificationSettingsInput): Promise<UpdateNotificationSettingsResponse>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const SCOUT_INVITE_TARGET_TYPES: {
|
|
3
|
+
readonly TEAM: "team";
|
|
4
|
+
readonly PICKUP: "pickup";
|
|
5
|
+
};
|
|
6
|
+
export declare const SCOUT_INVITE_STATUSES: {
|
|
7
|
+
readonly PENDING: "pending";
|
|
8
|
+
readonly ACCEPTED: "accepted";
|
|
9
|
+
readonly DECLINED: "declined";
|
|
10
|
+
readonly CANCELED: "canceled";
|
|
11
|
+
readonly EXPIRED: "expired";
|
|
12
|
+
};
|
|
13
|
+
export declare const sendScoutInviteInputSchema: z.ZodObject<{
|
|
14
|
+
authorization: z.ZodOptional<z.ZodString>;
|
|
15
|
+
scoutProfileId: z.ZodNumber;
|
|
16
|
+
memberId: z.ZodNumber;
|
|
17
|
+
targetType: z.ZodEnum<["team", "pickup"]>;
|
|
18
|
+
targetId: z.ZodNumber;
|
|
19
|
+
message: z.ZodString;
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
memberId: number;
|
|
22
|
+
message: string;
|
|
23
|
+
targetId: number;
|
|
24
|
+
targetType: "team" | "pickup";
|
|
25
|
+
scoutProfileId: number;
|
|
26
|
+
authorization?: string | undefined;
|
|
27
|
+
}, {
|
|
28
|
+
memberId: number;
|
|
29
|
+
message: string;
|
|
30
|
+
targetId: number;
|
|
31
|
+
targetType: "team" | "pickup";
|
|
32
|
+
scoutProfileId: number;
|
|
33
|
+
authorization?: string | undefined;
|
|
34
|
+
}>;
|
|
35
|
+
export declare const scoutInviteIdInputSchema: z.ZodObject<{
|
|
36
|
+
inviteId: z.ZodNumber;
|
|
37
|
+
}, "strip", z.ZodTypeAny, {
|
|
38
|
+
inviteId: number;
|
|
39
|
+
}, {
|
|
40
|
+
inviteId: number;
|
|
41
|
+
}>;
|
|
42
|
+
export declare const listScoutInvitesInputSchema: z.ZodObject<{
|
|
43
|
+
status: z.ZodOptional<z.ZodEnum<["pending", "accepted", "declined", "canceled", "expired"]>>;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
status?: "pending" | "canceled" | "accepted" | "declined" | "expired" | undefined;
|
|
46
|
+
}, {
|
|
47
|
+
status?: "pending" | "canceled" | "accepted" | "declined" | "expired" | undefined;
|
|
48
|
+
}>;
|
|
49
|
+
export type SendScoutInviteInput = z.infer<typeof sendScoutInviteInputSchema>;
|
|
50
|
+
export type ScoutInviteIdInput = z.infer<typeof scoutInviteIdInputSchema>;
|
|
51
|
+
export type ListScoutInvitesInput = z.infer<typeof listScoutInvitesInputSchema>;
|