@sideline/domain 0.5.0 → 0.6.1
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/dist/cjs/api/Auth.js +17 -5
- package/dist/cjs/api/Auth.js.map +1 -1
- package/dist/cjs/api/EventApi.js +141 -0
- package/dist/cjs/api/EventApi.js.map +1 -0
- package/dist/cjs/api/EventRsvpApi.js +66 -0
- package/dist/cjs/api/EventRsvpApi.js.map +1 -0
- package/dist/cjs/api/EventSeriesApi.js +139 -0
- package/dist/cjs/api/EventSeriesApi.js.map +1 -0
- package/dist/cjs/api/Roster.js +3 -2
- package/dist/cjs/api/Roster.js.map +1 -1
- package/dist/cjs/api/TeamSettingsApi.js +55 -0
- package/dist/cjs/api/TeamSettingsApi.js.map +1 -0
- package/dist/cjs/api/TrainingTypeApi.js +7 -2
- package/dist/cjs/api/TrainingTypeApi.js.map +1 -1
- package/dist/cjs/index.js +23 -1
- package/dist/cjs/models/Event.js +36 -0
- package/dist/cjs/models/Event.js.map +1 -0
- package/dist/cjs/models/EventRsvp.js +23 -0
- package/dist/cjs/models/EventRsvp.js.map +1 -0
- package/dist/cjs/models/EventSeries.js +35 -0
- package/dist/cjs/models/EventSeries.js.map +1 -0
- package/dist/cjs/models/Role.js +3 -3
- package/dist/cjs/models/Role.js.map +1 -1
- package/dist/cjs/models/Session.js +3 -5
- package/dist/cjs/models/Session.js.map +1 -1
- package/dist/cjs/models/TeamInvite.js +3 -5
- package/dist/cjs/models/TeamInvite.js.map +1 -1
- package/dist/cjs/models/TeamSettings.js +17 -0
- package/dist/cjs/models/TeamSettings.js.map +1 -0
- package/dist/cjs/models/User.js +3 -1
- package/dist/cjs/models/User.js.map +1 -1
- package/dist/cjs/rpc/SyncRpcs.js +2 -1
- package/dist/cjs/rpc/SyncRpcs.js.map +1 -1
- package/dist/cjs/rpc/event/EventRpcEvents.js +45 -0
- package/dist/cjs/rpc/event/EventRpcEvents.js.map +1 -0
- package/dist/cjs/rpc/event/EventRpcGroup.js +65 -0
- package/dist/cjs/rpc/event/EventRpcGroup.js.map +1 -0
- package/dist/cjs/rpc/event/EventRpcModels.js +47 -0
- package/dist/cjs/rpc/event/EventRpcModels.js.map +1 -0
- package/dist/dts/api/Auth.d.ts +12 -12
- package/dist/dts/api/Auth.d.ts.map +1 -1
- package/dist/dts/api/EventApi.d.ts +273 -0
- package/dist/dts/api/EventApi.d.ts.map +1 -0
- package/dist/dts/api/EventRsvpApi.d.ts +96 -0
- package/dist/dts/api/EventRsvpApi.d.ts.map +1 -0
- package/dist/dts/api/EventSeriesApi.d.ts +284 -0
- package/dist/dts/api/EventSeriesApi.d.ts.map +1 -0
- package/dist/dts/api/NotificationApi.d.ts +2 -2
- package/dist/dts/api/RoleApi.d.ts +9 -9
- package/dist/dts/api/Roster.d.ts +13 -9
- package/dist/dts/api/Roster.d.ts.map +1 -1
- package/dist/dts/api/TeamSettingsApi.d.ts +107 -0
- package/dist/dts/api/TeamSettingsApi.d.ts.map +1 -0
- package/dist/dts/api/TrainingTypeApi.d.ts +16 -0
- package/dist/dts/api/TrainingTypeApi.d.ts.map +1 -1
- package/dist/dts/index.d.ts +11 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/models/ChannelSyncEvent.d.ts +6 -6
- package/dist/dts/models/Event.d.ts +233 -0
- package/dist/dts/models/Event.d.ts.map +1 -0
- package/dist/dts/models/EventRsvp.d.ts +110 -0
- package/dist/dts/models/EventRsvp.d.ts.map +1 -0
- package/dist/dts/models/EventSeries.d.ts +248 -0
- package/dist/dts/models/EventSeries.d.ts.map +1 -0
- package/dist/dts/models/Notification.d.ts +4 -4
- package/dist/dts/models/Role.d.ts +4 -4
- package/dist/dts/models/Role.d.ts.map +1 -1
- package/dist/dts/models/RoleSyncEvent.d.ts +4 -4
- package/dist/dts/models/Session.d.ts +6 -6
- package/dist/dts/models/Session.d.ts.map +1 -1
- package/dist/dts/models/TeamInvite.d.ts +6 -6
- package/dist/dts/models/TeamInvite.d.ts.map +1 -1
- package/dist/dts/models/TeamSettings.d.ts +70 -0
- package/dist/dts/models/TeamSettings.d.ts.map +1 -0
- package/dist/dts/models/User.d.ts +11 -11
- package/dist/dts/models/User.d.ts.map +1 -1
- package/dist/dts/rpc/SyncRpcs.d.ts +28 -1
- package/dist/dts/rpc/SyncRpcs.d.ts.map +1 -1
- package/dist/dts/rpc/event/EventRpcEvents.d.ts +49 -0
- package/dist/dts/rpc/event/EventRpcEvents.d.ts.map +1 -0
- package/dist/dts/rpc/event/EventRpcGroup.d.ts +32 -0
- package/dist/dts/rpc/event/EventRpcGroup.d.ts.map +1 -0
- package/dist/dts/rpc/event/EventRpcModels.d.ts +115 -0
- package/dist/dts/rpc/event/EventRpcModels.d.ts.map +1 -0
- package/dist/esm/api/Auth.js +17 -5
- package/dist/esm/api/Auth.js.map +1 -1
- package/dist/esm/api/EventApi.js +126 -0
- package/dist/esm/api/EventApi.js.map +1 -0
- package/dist/esm/api/EventRsvpApi.js +53 -0
- package/dist/esm/api/EventRsvpApi.js.map +1 -0
- package/dist/esm/api/EventSeriesApi.js +126 -0
- package/dist/esm/api/EventSeriesApi.js.map +1 -0
- package/dist/esm/api/Roster.js +3 -2
- package/dist/esm/api/Roster.js.map +1 -1
- package/dist/esm/api/TeamSettingsApi.js +46 -0
- package/dist/esm/api/TeamSettingsApi.js.map +1 -0
- package/dist/esm/api/TrainingTypeApi.js +7 -2
- package/dist/esm/api/TrainingTypeApi.js.map +1 -1
- package/dist/esm/index.js +11 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/Event.js +28 -0
- package/dist/esm/models/Event.js.map +1 -0
- package/dist/esm/models/EventRsvp.js +16 -0
- package/dist/esm/models/EventRsvp.js.map +1 -0
- package/dist/esm/models/EventSeries.js +28 -0
- package/dist/esm/models/EventSeries.js.map +1 -0
- package/dist/esm/models/Role.js +3 -3
- package/dist/esm/models/Role.js.map +1 -1
- package/dist/esm/models/Session.js +3 -6
- package/dist/esm/models/Session.js.map +1 -1
- package/dist/esm/models/TeamInvite.js +3 -6
- package/dist/esm/models/TeamInvite.js.map +1 -1
- package/dist/esm/models/TeamSettings.js +10 -0
- package/dist/esm/models/TeamSettings.js.map +1 -0
- package/dist/esm/models/User.js +2 -1
- package/dist/esm/models/User.js.map +1 -1
- package/dist/esm/rpc/SyncRpcs.js +2 -1
- package/dist/esm/rpc/SyncRpcs.js.map +1 -1
- package/dist/esm/rpc/event/EventRpcEvents.js +36 -0
- package/dist/esm/rpc/event/EventRpcEvents.js.map +1 -0
- package/dist/esm/rpc/event/EventRpcGroup.js +59 -0
- package/dist/esm/rpc/event/EventRpcGroup.js.map +1 -0
- package/dist/esm/rpc/event/EventRpcModels.js +33 -0
- package/dist/esm/rpc/event/EventRpcModels.js.map +1 -0
- package/package.json +3 -2
- package/src/api/Auth.ts +20 -12
- package/src/api/EventApi.ts +129 -0
- package/src/api/EventRsvpApi.ts +67 -0
- package/src/api/EventSeriesApi.ts +134 -0
- package/src/api/Roster.ts +3 -2
- package/src/api/TeamSettingsApi.ts +57 -0
- package/src/api/TrainingTypeApi.ts +3 -0
- package/src/index.ts +19 -0
- package/src/models/Event.ts +41 -0
- package/src/models/EventRsvp.ts +20 -0
- package/src/models/EventSeries.ts +36 -0
- package/src/models/Role.ts +16 -1
- package/src/models/Session.ts +3 -7
- package/src/models/TeamInvite.ts +3 -9
- package/src/models/TeamSettings.ts +10 -0
- package/src/models/User.ts +2 -1
- package/src/rpc/SyncRpcs.ts +7 -1
- package/src/rpc/event/EventRpcEvents.ts +48 -0
- package/src/rpc/event/EventRpcGroup.ts +60 -0
- package/src/rpc/event/EventRpcModels.ts +49 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,MAAM,8CAA6C,CAAC;AACjE,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC;AAExC,eAAO,MAAM,MAAM,6CAA4C,CAAC;AAChE,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC;AAExC,eAAO,MAAM,MAAM,8BAA6B,CAAC;AACjD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAExC,qBAAa,IAAK,SAAQ,SAcxB;CAAG"}
|
|
@@ -17,7 +17,34 @@ declare const SyncRpcs_base: RpcGroup.RpcGroup<import("@effect/rpc/Rpc").Rpc<"Ch
|
|
|
17
17
|
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Channel/DeleteMapping", import("effect/Schema").Struct<{
|
|
18
18
|
team_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "TeamId">;
|
|
19
19
|
group_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "GroupId">;
|
|
20
|
-
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"
|
|
20
|
+
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/GetUnprocessedEvents", import("effect/Schema").Struct<{
|
|
21
|
+
limit: typeof import("effect/Schema").Number;
|
|
22
|
+
}>, import("effect/Schema").Array$<import("effect/Schema").Union<[typeof import("./event/EventRpcEvents.js").EventCreatedEvent, typeof import("./event/EventRpcEvents.js").EventUpdatedEvent, typeof import("./event/EventRpcEvents.js").EventCancelledEvent]>>, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/MarkEventProcessed", import("effect/Schema").Struct<{
|
|
23
|
+
id: typeof import("effect/Schema").String;
|
|
24
|
+
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/MarkEventFailed", import("effect/Schema").Struct<{
|
|
25
|
+
id: typeof import("effect/Schema").String;
|
|
26
|
+
error: typeof import("effect/Schema").String;
|
|
27
|
+
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/SaveDiscordMessageId", import("effect/Schema").Struct<{
|
|
28
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
29
|
+
discord_channel_id: typeof import("effect/Schema").String;
|
|
30
|
+
discord_message_id: typeof import("effect/Schema").String;
|
|
31
|
+
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/GetDiscordMessageId", import("effect/Schema").Struct<{
|
|
32
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
33
|
+
}>, import("effect/Schema").OptionFromNullOr<typeof import("./event/EventRpcModels.js").EventDiscordMessage>, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/SubmitRsvp", import("effect/Schema").Struct<{
|
|
34
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
35
|
+
team_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "TeamId">;
|
|
36
|
+
discord_user_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "Snowflake">;
|
|
37
|
+
response: import("effect/Schema").Literal<["yes", "no", "maybe"]>;
|
|
38
|
+
message: import("effect/Schema").NullOr<typeof import("effect/Schema").String>;
|
|
39
|
+
}>, typeof import("./event/EventRpcModels.js").RsvpCountsResult, import("effect/Schema").Union<[typeof import("./event/EventRpcModels.js").RsvpMemberNotFound, typeof import("./event/EventRpcModels.js").RsvpDeadlinePassed, typeof import("./event/EventRpcModels.js").RsvpEventNotFound]>, never> | import("@effect/rpc/Rpc").Rpc<"Event/GetRsvpCounts", import("effect/Schema").Struct<{
|
|
40
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
41
|
+
}>, typeof import("./event/EventRpcModels.js").RsvpCountsResult, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/GetEventEmbedInfo", import("effect/Schema").Struct<{
|
|
42
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
43
|
+
}>, import("effect/Schema").OptionFromNullOr<typeof import("./event/EventRpcModels.js").EventEmbedInfo>, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Event/GetRsvpAttendees", import("effect/Schema").Struct<{
|
|
44
|
+
event_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "EventId">;
|
|
45
|
+
offset: typeof import("effect/Schema").Number;
|
|
46
|
+
limit: typeof import("effect/Schema").Number;
|
|
47
|
+
}>, typeof import("./event/EventRpcModels.js").RsvpAttendeesResult, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Guild/RegisterGuild", import("effect/Schema").Struct<{
|
|
21
48
|
guild_id: import("effect/Schema").brand<typeof import("effect/Schema").String, "Snowflake">;
|
|
22
49
|
guild_name: typeof import("effect/Schema").String;
|
|
23
50
|
}>, typeof import("effect/Schema").Void, typeof import("effect/Schema").Never, never> | import("@effect/rpc/Rpc").Rpc<"Guild/UnregisterGuild", import("effect/Schema").Struct<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncRpcs.d.ts","sourceRoot":"","sources":["../../../src/rpc/SyncRpcs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC
|
|
1
|
+
{"version":3,"file":"SyncRpcs.d.ts","sourceRoot":"","sources":["../../../src/rpc/SyncRpcs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMvC,qBAAa,QAAS,SAAQ,aAK7B;CAAG"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
declare const EventCreatedEvent_base: Schema.TaggedClass<EventCreatedEvent, "event_created", {
|
|
3
|
+
readonly _tag: Schema.tag<"event_created">;
|
|
4
|
+
} & {
|
|
5
|
+
id: typeof Schema.String;
|
|
6
|
+
team_id: Schema.brand<typeof Schema.String, "TeamId">;
|
|
7
|
+
guild_id: Schema.brand<typeof Schema.String, "Snowflake">;
|
|
8
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
9
|
+
title: typeof Schema.String;
|
|
10
|
+
description: Schema.NullOr<typeof Schema.String>;
|
|
11
|
+
start_at: typeof Schema.String;
|
|
12
|
+
end_at: Schema.NullOr<typeof Schema.String>;
|
|
13
|
+
location: Schema.NullOr<typeof Schema.String>;
|
|
14
|
+
event_type: typeof Schema.String;
|
|
15
|
+
discord_channel_id: Schema.NullOr<typeof Schema.String>;
|
|
16
|
+
}>;
|
|
17
|
+
export declare class EventCreatedEvent extends EventCreatedEvent_base {
|
|
18
|
+
}
|
|
19
|
+
declare const EventUpdatedEvent_base: Schema.TaggedClass<EventUpdatedEvent, "event_updated", {
|
|
20
|
+
readonly _tag: Schema.tag<"event_updated">;
|
|
21
|
+
} & {
|
|
22
|
+
id: typeof Schema.String;
|
|
23
|
+
team_id: Schema.brand<typeof Schema.String, "TeamId">;
|
|
24
|
+
guild_id: Schema.brand<typeof Schema.String, "Snowflake">;
|
|
25
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
26
|
+
title: typeof Schema.String;
|
|
27
|
+
description: Schema.NullOr<typeof Schema.String>;
|
|
28
|
+
start_at: typeof Schema.String;
|
|
29
|
+
end_at: Schema.NullOr<typeof Schema.String>;
|
|
30
|
+
location: Schema.NullOr<typeof Schema.String>;
|
|
31
|
+
event_type: typeof Schema.String;
|
|
32
|
+
discord_channel_id: Schema.NullOr<typeof Schema.String>;
|
|
33
|
+
}>;
|
|
34
|
+
export declare class EventUpdatedEvent extends EventUpdatedEvent_base {
|
|
35
|
+
}
|
|
36
|
+
declare const EventCancelledEvent_base: Schema.TaggedClass<EventCancelledEvent, "event_cancelled", {
|
|
37
|
+
readonly _tag: Schema.tag<"event_cancelled">;
|
|
38
|
+
} & {
|
|
39
|
+
id: typeof Schema.String;
|
|
40
|
+
team_id: Schema.brand<typeof Schema.String, "TeamId">;
|
|
41
|
+
guild_id: Schema.brand<typeof Schema.String, "Snowflake">;
|
|
42
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
43
|
+
}>;
|
|
44
|
+
export declare class EventCancelledEvent extends EventCancelledEvent_base {
|
|
45
|
+
}
|
|
46
|
+
export declare const UnprocessedEventSyncEvent: Schema.Union<[typeof EventCreatedEvent, typeof EventUpdatedEvent, typeof EventCancelledEvent]>;
|
|
47
|
+
export type UnprocessedEventSyncEvent = Schema.Schema.Type<typeof UnprocessedEventSyncEvent>;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=EventRpcEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventRpcEvents.d.ts","sourceRoot":"","sources":["../../../../src/rpc/event/EventRpcEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;AAGhC,qBAAa,iBAAkB,SAAQ,sBAYrC;CAAG;;;;;;;;;;;;;;;;AAEL,qBAAa,iBAAkB,SAAQ,sBAYrC;CAAG;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBAQxC;CAAG;AAEJ,eAAO,MAAM,yBAAyB,gGAIrC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Rpc, RpcGroup } from '@effect/rpc';
|
|
2
|
+
import { Schema } from 'effect';
|
|
3
|
+
import { EventDiscordMessage, EventEmbedInfo, RsvpAttendeesResult, RsvpCountsResult, RsvpDeadlinePassed, RsvpEventNotFound, RsvpMemberNotFound } from './EventRpcModels.js';
|
|
4
|
+
export declare const EventRpcGroup: RpcGroup.RpcGroup<Rpc.Rpc<"Event/GetUnprocessedEvents", Schema.Struct<{
|
|
5
|
+
limit: typeof Schema.Number;
|
|
6
|
+
}>, Schema.Array$<Schema.Union<[typeof import("./EventRpcEvents.js").EventCreatedEvent, typeof import("./EventRpcEvents.js").EventUpdatedEvent, typeof import("./EventRpcEvents.js").EventCancelledEvent]>>, typeof Schema.Never, never> | Rpc.Rpc<"Event/MarkEventProcessed", Schema.Struct<{
|
|
7
|
+
id: typeof Schema.String;
|
|
8
|
+
}>, typeof Schema.Void, typeof Schema.Never, never> | Rpc.Rpc<"Event/MarkEventFailed", Schema.Struct<{
|
|
9
|
+
id: typeof Schema.String;
|
|
10
|
+
error: typeof Schema.String;
|
|
11
|
+
}>, typeof Schema.Void, typeof Schema.Never, never> | Rpc.Rpc<"Event/SaveDiscordMessageId", Schema.Struct<{
|
|
12
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
13
|
+
discord_channel_id: typeof Schema.String;
|
|
14
|
+
discord_message_id: typeof Schema.String;
|
|
15
|
+
}>, typeof Schema.Void, typeof Schema.Never, never> | Rpc.Rpc<"Event/GetDiscordMessageId", Schema.Struct<{
|
|
16
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
17
|
+
}>, Schema.OptionFromNullOr<typeof EventDiscordMessage>, typeof Schema.Never, never> | Rpc.Rpc<"Event/SubmitRsvp", Schema.Struct<{
|
|
18
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
19
|
+
team_id: Schema.brand<typeof Schema.String, "TeamId">;
|
|
20
|
+
discord_user_id: Schema.brand<typeof Schema.String, "Snowflake">;
|
|
21
|
+
response: Schema.Literal<["yes", "no", "maybe"]>;
|
|
22
|
+
message: Schema.NullOr<typeof Schema.String>;
|
|
23
|
+
}>, typeof RsvpCountsResult, Schema.Union<[typeof RsvpMemberNotFound, typeof RsvpDeadlinePassed, typeof RsvpEventNotFound]>, never> | Rpc.Rpc<"Event/GetRsvpCounts", Schema.Struct<{
|
|
24
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
25
|
+
}>, typeof RsvpCountsResult, typeof Schema.Never, never> | Rpc.Rpc<"Event/GetEventEmbedInfo", Schema.Struct<{
|
|
26
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
27
|
+
}>, Schema.OptionFromNullOr<typeof EventEmbedInfo>, typeof Schema.Never, never> | Rpc.Rpc<"Event/GetRsvpAttendees", Schema.Struct<{
|
|
28
|
+
event_id: Schema.brand<typeof Schema.String, "EventId">;
|
|
29
|
+
offset: typeof Schema.Number;
|
|
30
|
+
limit: typeof Schema.Number;
|
|
31
|
+
}>, typeof RsvpAttendeesResult, typeof Schema.Never, never>>;
|
|
32
|
+
//# sourceMappingURL=EventRpcGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventRpcGroup.d.ts","sourceRoot":"","sources":["../../../../src/rpc/event/EventRpcGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;4DA6CR,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
declare const EventDiscordMessage_base: Schema.Class<EventDiscordMessage, {
|
|
3
|
+
discord_channel_id: typeof Schema.String;
|
|
4
|
+
discord_message_id: typeof Schema.String;
|
|
5
|
+
}, Schema.Struct.Encoded<{
|
|
6
|
+
discord_channel_id: typeof Schema.String;
|
|
7
|
+
discord_message_id: typeof Schema.String;
|
|
8
|
+
}>, never, {
|
|
9
|
+
readonly discord_channel_id: string;
|
|
10
|
+
} & {
|
|
11
|
+
readonly discord_message_id: string;
|
|
12
|
+
}, {}, {}>;
|
|
13
|
+
export declare class EventDiscordMessage extends EventDiscordMessage_base {
|
|
14
|
+
}
|
|
15
|
+
declare const RsvpCountsResult_base: Schema.Class<RsvpCountsResult, {
|
|
16
|
+
yesCount: typeof Schema.Number;
|
|
17
|
+
noCount: typeof Schema.Number;
|
|
18
|
+
maybeCount: typeof Schema.Number;
|
|
19
|
+
canRsvp: typeof Schema.Boolean;
|
|
20
|
+
}, Schema.Struct.Encoded<{
|
|
21
|
+
yesCount: typeof Schema.Number;
|
|
22
|
+
noCount: typeof Schema.Number;
|
|
23
|
+
maybeCount: typeof Schema.Number;
|
|
24
|
+
canRsvp: typeof Schema.Boolean;
|
|
25
|
+
}>, never, {
|
|
26
|
+
readonly yesCount: number;
|
|
27
|
+
} & {
|
|
28
|
+
readonly noCount: number;
|
|
29
|
+
} & {
|
|
30
|
+
readonly maybeCount: number;
|
|
31
|
+
} & {
|
|
32
|
+
readonly canRsvp: boolean;
|
|
33
|
+
}, {}, {}>;
|
|
34
|
+
export declare class RsvpCountsResult extends RsvpCountsResult_base {
|
|
35
|
+
}
|
|
36
|
+
declare const EventEmbedInfo_base: Schema.Class<EventEmbedInfo, {
|
|
37
|
+
title: typeof Schema.String;
|
|
38
|
+
description: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
39
|
+
start_at: typeof Schema.String;
|
|
40
|
+
end_at: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
41
|
+
location: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
42
|
+
event_type: typeof Schema.String;
|
|
43
|
+
}, Schema.Struct.Encoded<{
|
|
44
|
+
title: typeof Schema.String;
|
|
45
|
+
description: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
46
|
+
start_at: typeof Schema.String;
|
|
47
|
+
end_at: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
48
|
+
location: Schema.OptionFromNullOr<typeof Schema.String>;
|
|
49
|
+
event_type: typeof Schema.String;
|
|
50
|
+
}>, never, {
|
|
51
|
+
readonly description: import("effect/Option").Option<string>;
|
|
52
|
+
} & {
|
|
53
|
+
readonly location: import("effect/Option").Option<string>;
|
|
54
|
+
} & {
|
|
55
|
+
readonly title: string;
|
|
56
|
+
} & {
|
|
57
|
+
readonly end_at: import("effect/Option").Option<string>;
|
|
58
|
+
} & {
|
|
59
|
+
readonly event_type: string;
|
|
60
|
+
} & {
|
|
61
|
+
readonly start_at: string;
|
|
62
|
+
}, {}, {}>;
|
|
63
|
+
export declare class EventEmbedInfo extends EventEmbedInfo_base {
|
|
64
|
+
}
|
|
65
|
+
declare const RsvpMemberNotFound_base: Schema.TaggedErrorClass<RsvpMemberNotFound, "RsvpMemberNotFound", {
|
|
66
|
+
readonly _tag: Schema.tag<"RsvpMemberNotFound">;
|
|
67
|
+
}>;
|
|
68
|
+
export declare class RsvpMemberNotFound extends RsvpMemberNotFound_base {
|
|
69
|
+
}
|
|
70
|
+
declare const RsvpDeadlinePassed_base: Schema.TaggedErrorClass<RsvpDeadlinePassed, "RsvpDeadlinePassed", {
|
|
71
|
+
readonly _tag: Schema.tag<"RsvpDeadlinePassed">;
|
|
72
|
+
}>;
|
|
73
|
+
export declare class RsvpDeadlinePassed extends RsvpDeadlinePassed_base {
|
|
74
|
+
}
|
|
75
|
+
declare const RsvpEventNotFound_base: Schema.TaggedErrorClass<RsvpEventNotFound, "RsvpEventNotFound", {
|
|
76
|
+
readonly _tag: Schema.tag<"RsvpEventNotFound">;
|
|
77
|
+
}>;
|
|
78
|
+
export declare class RsvpEventNotFound extends RsvpEventNotFound_base {
|
|
79
|
+
}
|
|
80
|
+
declare const RsvpAttendeeEntry_base: Schema.Class<RsvpAttendeeEntry, {
|
|
81
|
+
discord_id: Schema.NullOr<typeof Schema.String>;
|
|
82
|
+
name: Schema.NullOr<typeof Schema.String>;
|
|
83
|
+
response: Schema.Literal<["yes", "no", "maybe"]>;
|
|
84
|
+
message: Schema.NullOr<typeof Schema.String>;
|
|
85
|
+
}, Schema.Struct.Encoded<{
|
|
86
|
+
discord_id: Schema.NullOr<typeof Schema.String>;
|
|
87
|
+
name: Schema.NullOr<typeof Schema.String>;
|
|
88
|
+
response: Schema.Literal<["yes", "no", "maybe"]>;
|
|
89
|
+
message: Schema.NullOr<typeof Schema.String>;
|
|
90
|
+
}>, never, {
|
|
91
|
+
readonly name: string | null;
|
|
92
|
+
} & {
|
|
93
|
+
readonly discord_id: string | null;
|
|
94
|
+
} & {
|
|
95
|
+
readonly message: string | null;
|
|
96
|
+
} & {
|
|
97
|
+
readonly response: "yes" | "no" | "maybe";
|
|
98
|
+
}, {}, {}>;
|
|
99
|
+
export declare class RsvpAttendeeEntry extends RsvpAttendeeEntry_base {
|
|
100
|
+
}
|
|
101
|
+
declare const RsvpAttendeesResult_base: Schema.Class<RsvpAttendeesResult, {
|
|
102
|
+
attendees: Schema.Array$<typeof RsvpAttendeeEntry>;
|
|
103
|
+
total: typeof Schema.Number;
|
|
104
|
+
}, Schema.Struct.Encoded<{
|
|
105
|
+
attendees: Schema.Array$<typeof RsvpAttendeeEntry>;
|
|
106
|
+
total: typeof Schema.Number;
|
|
107
|
+
}>, never, {
|
|
108
|
+
readonly total: number;
|
|
109
|
+
} & {
|
|
110
|
+
readonly attendees: readonly RsvpAttendeeEntry[];
|
|
111
|
+
}, {}, {}>;
|
|
112
|
+
export declare class RsvpAttendeesResult extends RsvpAttendeesResult_base {
|
|
113
|
+
}
|
|
114
|
+
export {};
|
|
115
|
+
//# sourceMappingURL=EventRpcModels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventRpcModels.d.ts","sourceRoot":"","sources":["../../../../src/rpc/event/EventRpcModels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;AAEhC,qBAAa,mBAAoB,SAAQ,wBAGvC;CAAG;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,cAAe,SAAQ,mBAOlC;CAAG;;;;AAEL,qBAAa,kBAAmB,SAAQ,uBAGvC;CAAG;;;;AAEJ,qBAAa,kBAAmB,SAAQ,uBAGvC;CAAG;;;;AAEJ,qBAAa,iBAAkB,SAAQ,sBAGtC;CAAG;;;;;;;;;;;;;;;;;;;;AAEJ,qBAAa,iBAAkB,SAAQ,sBAKrC;CAAG;;;;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBAGvC;CAAG"}
|
package/dist/esm/api/Auth.js
CHANGED
|
@@ -19,7 +19,7 @@ export class CurrentUser extends /*#__PURE__*/Schema.Class('CurrentUser')({
|
|
|
19
19
|
discordAvatar: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
20
20
|
isProfileComplete: Schema.Boolean,
|
|
21
21
|
name: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
22
|
-
|
|
22
|
+
birthDate: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
23
23
|
gender: /*#__PURE__*/Schema.NullOr(Gender),
|
|
24
24
|
locale: Locale
|
|
25
25
|
}) {}
|
|
@@ -39,15 +39,27 @@ export class DiscordGuild extends /*#__PURE__*/Schema.Class('DiscordGuild')({
|
|
|
39
39
|
}) {}
|
|
40
40
|
export class CompleteProfileRequest extends /*#__PURE__*/Schema.Class('CompleteProfileRequest')({
|
|
41
41
|
name: Schema.String,
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
birthDate: /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.filter(s => {
|
|
43
|
+
const d = new Date(s);
|
|
44
|
+
if (Number.isNaN(d.getTime())) return 'Invalid date';
|
|
45
|
+
if (d < new Date('1900-01-01')) return 'Date must be after 1900-01-01';
|
|
46
|
+
const minDate = new Date();
|
|
47
|
+
minDate.setFullYear(minDate.getFullYear() - MIN_AGE);
|
|
48
|
+
if (d > minDate) return `Must be at least ${MIN_AGE} years old`;
|
|
49
|
+
return true;
|
|
44
50
|
})),
|
|
45
51
|
gender: Gender
|
|
46
52
|
}) {}
|
|
47
53
|
export class UpdateProfileRequest extends /*#__PURE__*/Schema.Class('UpdateProfileRequest')({
|
|
48
54
|
name: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
49
|
-
|
|
50
|
-
|
|
55
|
+
birthDate: /*#__PURE__*/Schema.OptionFromNullOr(/*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.filter(s => {
|
|
56
|
+
const d = new Date(s);
|
|
57
|
+
if (Number.isNaN(d.getTime())) return 'Invalid date';
|
|
58
|
+
if (d < new Date('1900-01-01')) return 'Date must be after 1900-01-01';
|
|
59
|
+
const minDate = new Date();
|
|
60
|
+
minDate.setFullYear(minDate.getFullYear() - MIN_AGE);
|
|
61
|
+
if (d > minDate) return `Must be at least ${MIN_AGE} years old`;
|
|
62
|
+
return true;
|
|
51
63
|
}))),
|
|
52
64
|
gender: /*#__PURE__*/Schema.NullOr(Gender)
|
|
53
65
|
}) {}
|
package/dist/esm/api/Auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auth.js","names":["HttpApiEndpoint","HttpApiGroup","HttpApiMiddleware","HttpApiSchema","HttpApiSecurity","Context","Schema","Snowflake","Permission","TeamId","Gender","Locale","UserId","MIN_AGE","UserTeam","Class","teamId","teamName","String","roleNames","Array","permissions","CurrentUser","id","discordId","discordUsername","discordAvatar","NullOr","isProfileComplete","Boolean","name","
|
|
1
|
+
{"version":3,"file":"Auth.js","names":["HttpApiEndpoint","HttpApiGroup","HttpApiMiddleware","HttpApiSchema","HttpApiSecurity","Context","Schema","Snowflake","Permission","TeamId","Gender","Locale","UserId","MIN_AGE","UserTeam","Class","teamId","teamName","String","roleNames","Array","permissions","CurrentUser","id","discordId","discordUsername","discordAvatar","NullOr","isProfileComplete","Boolean","name","birthDate","gender","locale","UpdateLocaleRequest","CreateTeamRequest","pipe","minLength","maxLength","guildId","DiscordGuild","icon","owner","botPresent","CompleteProfileRequest","filter","s","d","Date","Number","isNaN","getTime","minDate","setFullYear","getFullYear","UpdateProfileRequest","OptionFromNullOr","Unauthorized","TaggedError","annotations","status","CurrentUserContext","Tag","AuthMiddleware","failure","provides","security","token","bearer","AuthApiGroup","make","add","get","addSuccess","URL","Void","setUrlParams","Struct","code","optionalWith","as","state","error","addError","middleware","post","setPayload","patch","prefix"],"sources":["../../../src/api/Auth.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema } from '@effect/platform';
|
|
2
|
+
import { Schema } from 'effect';
|
|
3
|
+
import { AuthMiddleware } from '../api/Auth.js';
|
|
4
|
+
import { EventId, EventStatus, EventType } from '../models/Event.js';
|
|
5
|
+
import { EventSeriesId } from '../models/EventSeries.js';
|
|
6
|
+
import { TeamId } from '../models/Team.js';
|
|
7
|
+
import { TrainingTypeId } from '../models/TrainingType.js';
|
|
8
|
+
export class EventInfo extends /*#__PURE__*/Schema.Class('EventInfo')({
|
|
9
|
+
eventId: EventId,
|
|
10
|
+
teamId: TeamId,
|
|
11
|
+
title: Schema.String,
|
|
12
|
+
eventType: EventType,
|
|
13
|
+
trainingTypeName: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
14
|
+
startAt: Schema.String,
|
|
15
|
+
endAt: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
16
|
+
location: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
17
|
+
status: EventStatus,
|
|
18
|
+
seriesId: /*#__PURE__*/Schema.NullOr(EventSeriesId)
|
|
19
|
+
}) {}
|
|
20
|
+
export class EventDetail extends /*#__PURE__*/Schema.Class('EventDetail')({
|
|
21
|
+
eventId: EventId,
|
|
22
|
+
teamId: TeamId,
|
|
23
|
+
title: Schema.String,
|
|
24
|
+
eventType: EventType,
|
|
25
|
+
trainingTypeId: /*#__PURE__*/Schema.NullOr(TrainingTypeId),
|
|
26
|
+
trainingTypeName: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
27
|
+
description: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
28
|
+
startAt: Schema.String,
|
|
29
|
+
endAt: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
30
|
+
location: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
31
|
+
status: EventStatus,
|
|
32
|
+
createdByName: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
33
|
+
canEdit: Schema.Boolean,
|
|
34
|
+
canCancel: Schema.Boolean,
|
|
35
|
+
seriesId: /*#__PURE__*/Schema.NullOr(EventSeriesId),
|
|
36
|
+
seriesModified: Schema.Boolean,
|
|
37
|
+
discordChannelId: /*#__PURE__*/Schema.NullOr(Schema.String)
|
|
38
|
+
}) {}
|
|
39
|
+
export class EventListResponse extends /*#__PURE__*/Schema.Class('EventListResponse')({
|
|
40
|
+
canCreate: Schema.Boolean,
|
|
41
|
+
events: /*#__PURE__*/Schema.Array(EventInfo)
|
|
42
|
+
}) {}
|
|
43
|
+
export class CreateEventRequest extends /*#__PURE__*/Schema.Class('CreateEventRequest')({
|
|
44
|
+
title: Schema.NonEmptyString,
|
|
45
|
+
eventType: EventType,
|
|
46
|
+
trainingTypeId: /*#__PURE__*/Schema.NullOr(TrainingTypeId),
|
|
47
|
+
description: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
48
|
+
startAt: Schema.String,
|
|
49
|
+
endAt: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
50
|
+
location: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
51
|
+
discordChannelId: /*#__PURE__*/Schema.NullOr(Schema.String)
|
|
52
|
+
}) {}
|
|
53
|
+
export class UpdateEventRequest extends /*#__PURE__*/Schema.Class('UpdateEventRequest')({
|
|
54
|
+
title: /*#__PURE__*/Schema.optionalWith(Schema.NonEmptyString, {
|
|
55
|
+
as: 'Option'
|
|
56
|
+
}),
|
|
57
|
+
eventType: /*#__PURE__*/Schema.optionalWith(EventType, {
|
|
58
|
+
as: 'Option'
|
|
59
|
+
}),
|
|
60
|
+
trainingTypeId: /*#__PURE__*/Schema.optionalWith(/*#__PURE__*/Schema.OptionFromNullOr(TrainingTypeId), {
|
|
61
|
+
as: 'Option'
|
|
62
|
+
}),
|
|
63
|
+
description: /*#__PURE__*/Schema.optionalWith(/*#__PURE__*/Schema.OptionFromNullOr(Schema.String), {
|
|
64
|
+
as: 'Option'
|
|
65
|
+
}),
|
|
66
|
+
startAt: /*#__PURE__*/Schema.optionalWith(Schema.String, {
|
|
67
|
+
as: 'Option'
|
|
68
|
+
}),
|
|
69
|
+
endAt: /*#__PURE__*/Schema.optionalWith(/*#__PURE__*/Schema.OptionFromNullOr(Schema.String), {
|
|
70
|
+
as: 'Option'
|
|
71
|
+
}),
|
|
72
|
+
location: /*#__PURE__*/Schema.optionalWith(/*#__PURE__*/Schema.OptionFromNullOr(Schema.String), {
|
|
73
|
+
as: 'Option'
|
|
74
|
+
}),
|
|
75
|
+
discordChannelId: /*#__PURE__*/Schema.optionalWith(/*#__PURE__*/Schema.OptionFromNullOr(Schema.String), {
|
|
76
|
+
as: 'Option'
|
|
77
|
+
})
|
|
78
|
+
}) {}
|
|
79
|
+
export class EventNotFound extends /*#__PURE__*/Schema.TaggedError()('EventNotFound', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
80
|
+
status: 404
|
|
81
|
+
})) {}
|
|
82
|
+
export class Forbidden extends /*#__PURE__*/Schema.TaggedError()('EventForbidden', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
83
|
+
status: 403
|
|
84
|
+
})) {}
|
|
85
|
+
export class EventCancelled extends /*#__PURE__*/Schema.TaggedError()('EventCancelled', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
86
|
+
status: 400
|
|
87
|
+
})) {}
|
|
88
|
+
export class EventApiGroup extends /*#__PURE__*/HttpApiGroup.make('event').add(HttpApiEndpoint.get('listEvents', '/teams/:teamId/events').addSuccess(EventListResponse).addError(Forbidden, {
|
|
89
|
+
status: 403
|
|
90
|
+
}).setPath(Schema.Struct({
|
|
91
|
+
teamId: TeamId
|
|
92
|
+
})).middleware(AuthMiddleware)).add(HttpApiEndpoint.post('createEvent', '/teams/:teamId/events').addSuccess(EventInfo, {
|
|
93
|
+
status: 201
|
|
94
|
+
}).addError(Forbidden, {
|
|
95
|
+
status: 403
|
|
96
|
+
}).setPath(Schema.Struct({
|
|
97
|
+
teamId: TeamId
|
|
98
|
+
})).setPayload(CreateEventRequest).middleware(AuthMiddleware)).add(HttpApiEndpoint.get('getEvent', '/teams/:teamId/events/:eventId').addSuccess(EventDetail).addError(Forbidden, {
|
|
99
|
+
status: 403
|
|
100
|
+
}).addError(EventNotFound, {
|
|
101
|
+
status: 404
|
|
102
|
+
}).setPath(Schema.Struct({
|
|
103
|
+
teamId: TeamId,
|
|
104
|
+
eventId: EventId
|
|
105
|
+
})).middleware(AuthMiddleware)).add(HttpApiEndpoint.patch('updateEvent', '/teams/:teamId/events/:eventId').addSuccess(EventDetail).addError(Forbidden, {
|
|
106
|
+
status: 403
|
|
107
|
+
}).addError(EventNotFound, {
|
|
108
|
+
status: 404
|
|
109
|
+
}).addError(EventCancelled, {
|
|
110
|
+
status: 400
|
|
111
|
+
}).setPath(Schema.Struct({
|
|
112
|
+
teamId: TeamId,
|
|
113
|
+
eventId: EventId
|
|
114
|
+
})).setPayload(UpdateEventRequest).middleware(AuthMiddleware)).add(/*#__PURE__*/HttpApiEndpoint.post('cancelEvent', '/teams/:teamId/events/:eventId/cancel').addSuccess(Schema.Void, {
|
|
115
|
+
status: 204
|
|
116
|
+
}).addError(Forbidden, {
|
|
117
|
+
status: 403
|
|
118
|
+
}).addError(EventNotFound, {
|
|
119
|
+
status: 404
|
|
120
|
+
}).addError(EventCancelled, {
|
|
121
|
+
status: 400
|
|
122
|
+
}).setPath(Schema.Struct({
|
|
123
|
+
teamId: TeamId,
|
|
124
|
+
eventId: EventId
|
|
125
|
+
})).middleware(AuthMiddleware)) {}
|
|
126
|
+
//# sourceMappingURL=EventApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventApi.js","names":["HttpApiEndpoint","HttpApiGroup","HttpApiSchema","Schema","AuthMiddleware","EventId","EventStatus","EventType","EventSeriesId","TeamId","TrainingTypeId","EventInfo","Class","eventId","teamId","title","String","eventType","trainingTypeName","NullOr","startAt","endAt","location","status","seriesId","EventDetail","trainingTypeId","description","createdByName","canEdit","Boolean","canCancel","seriesModified","discordChannelId","EventListResponse","canCreate","events","Array","CreateEventRequest","NonEmptyString","UpdateEventRequest","optionalWith","as","OptionFromNullOr","EventNotFound","TaggedError","annotations","Forbidden","EventCancelled","EventApiGroup","make","add","get","addSuccess","addError","setPath","Struct","middleware","post","setPayload","patch","Void"],"sources":["../../../src/api/EventApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema } from '@effect/platform';
|
|
2
|
+
import { Schema } from 'effect';
|
|
3
|
+
import { AuthMiddleware } from '../api/Auth.js';
|
|
4
|
+
import { EventId } from '../models/Event.js';
|
|
5
|
+
import { RsvpResponse } from '../models/EventRsvp.js';
|
|
6
|
+
import { TeamId } from '../models/Team.js';
|
|
7
|
+
import { TeamMemberId } from '../models/TeamMember.js';
|
|
8
|
+
export class RsvpEntry extends /*#__PURE__*/Schema.Class('RsvpEntry')({
|
|
9
|
+
teamMemberId: TeamMemberId,
|
|
10
|
+
memberName: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
11
|
+
response: RsvpResponse,
|
|
12
|
+
message: /*#__PURE__*/Schema.NullOr(Schema.String)
|
|
13
|
+
}) {}
|
|
14
|
+
export class EventRsvpDetail extends /*#__PURE__*/Schema.Class('EventRsvpDetail')({
|
|
15
|
+
myResponse: /*#__PURE__*/Schema.NullOr(RsvpResponse),
|
|
16
|
+
myMessage: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
17
|
+
rsvps: /*#__PURE__*/Schema.Array(RsvpEntry),
|
|
18
|
+
yesCount: Schema.Number,
|
|
19
|
+
noCount: Schema.Number,
|
|
20
|
+
maybeCount: Schema.Number,
|
|
21
|
+
canRsvp: Schema.Boolean
|
|
22
|
+
}) {}
|
|
23
|
+
export class SubmitRsvpRequest extends /*#__PURE__*/Schema.Class('SubmitRsvpRequest')({
|
|
24
|
+
response: RsvpResponse,
|
|
25
|
+
message: /*#__PURE__*/Schema.NullOr(Schema.String)
|
|
26
|
+
}) {}
|
|
27
|
+
export class EventNotFound extends /*#__PURE__*/Schema.TaggedError()('EventRsvpEventNotFound', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
28
|
+
status: 404
|
|
29
|
+
})) {}
|
|
30
|
+
export class Forbidden extends /*#__PURE__*/Schema.TaggedError()('EventRsvpForbidden', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
31
|
+
status: 403
|
|
32
|
+
})) {}
|
|
33
|
+
export class RsvpDeadlinePassed extends /*#__PURE__*/Schema.TaggedError()('RsvpDeadlinePassed', {}, /*#__PURE__*/HttpApiSchema.annotations({
|
|
34
|
+
status: 400
|
|
35
|
+
})) {}
|
|
36
|
+
export class EventRsvpApiGroup extends /*#__PURE__*/HttpApiGroup.make('eventRsvp').add(HttpApiEndpoint.get('getRsvps', '/teams/:teamId/events/:eventId/rsvps').addSuccess(EventRsvpDetail).addError(Forbidden, {
|
|
37
|
+
status: 403
|
|
38
|
+
}).addError(EventNotFound, {
|
|
39
|
+
status: 404
|
|
40
|
+
}).setPath(Schema.Struct({
|
|
41
|
+
teamId: TeamId,
|
|
42
|
+
eventId: EventId
|
|
43
|
+
})).middleware(AuthMiddleware)).add(/*#__PURE__*/HttpApiEndpoint.put('submitRsvp', '/teams/:teamId/events/:eventId/rsvp').addSuccess(EventRsvpDetail).addError(Forbidden, {
|
|
44
|
+
status: 403
|
|
45
|
+
}).addError(EventNotFound, {
|
|
46
|
+
status: 404
|
|
47
|
+
}).addError(RsvpDeadlinePassed, {
|
|
48
|
+
status: 400
|
|
49
|
+
}).setPath(Schema.Struct({
|
|
50
|
+
teamId: TeamId,
|
|
51
|
+
eventId: EventId
|
|
52
|
+
})).setPayload(SubmitRsvpRequest).middleware(AuthMiddleware)) {}
|
|
53
|
+
//# sourceMappingURL=EventRsvpApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventRsvpApi.js","names":["HttpApiEndpoint","HttpApiGroup","HttpApiSchema","Schema","AuthMiddleware","EventId","RsvpResponse","TeamId","TeamMemberId","RsvpEntry","Class","teamMemberId","memberName","NullOr","String","response","message","EventRsvpDetail","myResponse","myMessage","rsvps","Array","yesCount","Number","noCount","maybeCount","canRsvp","Boolean","SubmitRsvpRequest","EventNotFound","TaggedError","annotations","status","Forbidden","RsvpDeadlinePassed","EventRsvpApiGroup","make","add","get","addSuccess","addError","setPath","Struct","teamId","eventId","middleware","put","setPayload"],"sources":["../../../src/api/EventRsvpApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|