@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.
Files changed (145) hide show
  1. package/dist/cjs/api/Auth.js +17 -5
  2. package/dist/cjs/api/Auth.js.map +1 -1
  3. package/dist/cjs/api/EventApi.js +141 -0
  4. package/dist/cjs/api/EventApi.js.map +1 -0
  5. package/dist/cjs/api/EventRsvpApi.js +66 -0
  6. package/dist/cjs/api/EventRsvpApi.js.map +1 -0
  7. package/dist/cjs/api/EventSeriesApi.js +139 -0
  8. package/dist/cjs/api/EventSeriesApi.js.map +1 -0
  9. package/dist/cjs/api/Roster.js +3 -2
  10. package/dist/cjs/api/Roster.js.map +1 -1
  11. package/dist/cjs/api/TeamSettingsApi.js +55 -0
  12. package/dist/cjs/api/TeamSettingsApi.js.map +1 -0
  13. package/dist/cjs/api/TrainingTypeApi.js +7 -2
  14. package/dist/cjs/api/TrainingTypeApi.js.map +1 -1
  15. package/dist/cjs/index.js +23 -1
  16. package/dist/cjs/models/Event.js +36 -0
  17. package/dist/cjs/models/Event.js.map +1 -0
  18. package/dist/cjs/models/EventRsvp.js +23 -0
  19. package/dist/cjs/models/EventRsvp.js.map +1 -0
  20. package/dist/cjs/models/EventSeries.js +35 -0
  21. package/dist/cjs/models/EventSeries.js.map +1 -0
  22. package/dist/cjs/models/Role.js +3 -3
  23. package/dist/cjs/models/Role.js.map +1 -1
  24. package/dist/cjs/models/Session.js +3 -5
  25. package/dist/cjs/models/Session.js.map +1 -1
  26. package/dist/cjs/models/TeamInvite.js +3 -5
  27. package/dist/cjs/models/TeamInvite.js.map +1 -1
  28. package/dist/cjs/models/TeamSettings.js +17 -0
  29. package/dist/cjs/models/TeamSettings.js.map +1 -0
  30. package/dist/cjs/models/User.js +3 -1
  31. package/dist/cjs/models/User.js.map +1 -1
  32. package/dist/cjs/rpc/SyncRpcs.js +2 -1
  33. package/dist/cjs/rpc/SyncRpcs.js.map +1 -1
  34. package/dist/cjs/rpc/event/EventRpcEvents.js +45 -0
  35. package/dist/cjs/rpc/event/EventRpcEvents.js.map +1 -0
  36. package/dist/cjs/rpc/event/EventRpcGroup.js +65 -0
  37. package/dist/cjs/rpc/event/EventRpcGroup.js.map +1 -0
  38. package/dist/cjs/rpc/event/EventRpcModels.js +47 -0
  39. package/dist/cjs/rpc/event/EventRpcModels.js.map +1 -0
  40. package/dist/dts/api/Auth.d.ts +12 -12
  41. package/dist/dts/api/Auth.d.ts.map +1 -1
  42. package/dist/dts/api/EventApi.d.ts +273 -0
  43. package/dist/dts/api/EventApi.d.ts.map +1 -0
  44. package/dist/dts/api/EventRsvpApi.d.ts +96 -0
  45. package/dist/dts/api/EventRsvpApi.d.ts.map +1 -0
  46. package/dist/dts/api/EventSeriesApi.d.ts +284 -0
  47. package/dist/dts/api/EventSeriesApi.d.ts.map +1 -0
  48. package/dist/dts/api/NotificationApi.d.ts +2 -2
  49. package/dist/dts/api/RoleApi.d.ts +9 -9
  50. package/dist/dts/api/Roster.d.ts +13 -9
  51. package/dist/dts/api/Roster.d.ts.map +1 -1
  52. package/dist/dts/api/TeamSettingsApi.d.ts +107 -0
  53. package/dist/dts/api/TeamSettingsApi.d.ts.map +1 -0
  54. package/dist/dts/api/TrainingTypeApi.d.ts +16 -0
  55. package/dist/dts/api/TrainingTypeApi.d.ts.map +1 -1
  56. package/dist/dts/index.d.ts +11 -0
  57. package/dist/dts/index.d.ts.map +1 -1
  58. package/dist/dts/models/ChannelSyncEvent.d.ts +6 -6
  59. package/dist/dts/models/Event.d.ts +233 -0
  60. package/dist/dts/models/Event.d.ts.map +1 -0
  61. package/dist/dts/models/EventRsvp.d.ts +110 -0
  62. package/dist/dts/models/EventRsvp.d.ts.map +1 -0
  63. package/dist/dts/models/EventSeries.d.ts +248 -0
  64. package/dist/dts/models/EventSeries.d.ts.map +1 -0
  65. package/dist/dts/models/Notification.d.ts +4 -4
  66. package/dist/dts/models/Role.d.ts +4 -4
  67. package/dist/dts/models/Role.d.ts.map +1 -1
  68. package/dist/dts/models/RoleSyncEvent.d.ts +4 -4
  69. package/dist/dts/models/Session.d.ts +6 -6
  70. package/dist/dts/models/Session.d.ts.map +1 -1
  71. package/dist/dts/models/TeamInvite.d.ts +6 -6
  72. package/dist/dts/models/TeamInvite.d.ts.map +1 -1
  73. package/dist/dts/models/TeamSettings.d.ts +70 -0
  74. package/dist/dts/models/TeamSettings.d.ts.map +1 -0
  75. package/dist/dts/models/User.d.ts +11 -11
  76. package/dist/dts/models/User.d.ts.map +1 -1
  77. package/dist/dts/rpc/SyncRpcs.d.ts +28 -1
  78. package/dist/dts/rpc/SyncRpcs.d.ts.map +1 -1
  79. package/dist/dts/rpc/event/EventRpcEvents.d.ts +49 -0
  80. package/dist/dts/rpc/event/EventRpcEvents.d.ts.map +1 -0
  81. package/dist/dts/rpc/event/EventRpcGroup.d.ts +32 -0
  82. package/dist/dts/rpc/event/EventRpcGroup.d.ts.map +1 -0
  83. package/dist/dts/rpc/event/EventRpcModels.d.ts +115 -0
  84. package/dist/dts/rpc/event/EventRpcModels.d.ts.map +1 -0
  85. package/dist/esm/api/Auth.js +17 -5
  86. package/dist/esm/api/Auth.js.map +1 -1
  87. package/dist/esm/api/EventApi.js +126 -0
  88. package/dist/esm/api/EventApi.js.map +1 -0
  89. package/dist/esm/api/EventRsvpApi.js +53 -0
  90. package/dist/esm/api/EventRsvpApi.js.map +1 -0
  91. package/dist/esm/api/EventSeriesApi.js +126 -0
  92. package/dist/esm/api/EventSeriesApi.js.map +1 -0
  93. package/dist/esm/api/Roster.js +3 -2
  94. package/dist/esm/api/Roster.js.map +1 -1
  95. package/dist/esm/api/TeamSettingsApi.js +46 -0
  96. package/dist/esm/api/TeamSettingsApi.js.map +1 -0
  97. package/dist/esm/api/TrainingTypeApi.js +7 -2
  98. package/dist/esm/api/TrainingTypeApi.js.map +1 -1
  99. package/dist/esm/index.js +11 -0
  100. package/dist/esm/index.js.map +1 -1
  101. package/dist/esm/models/Event.js +28 -0
  102. package/dist/esm/models/Event.js.map +1 -0
  103. package/dist/esm/models/EventRsvp.js +16 -0
  104. package/dist/esm/models/EventRsvp.js.map +1 -0
  105. package/dist/esm/models/EventSeries.js +28 -0
  106. package/dist/esm/models/EventSeries.js.map +1 -0
  107. package/dist/esm/models/Role.js +3 -3
  108. package/dist/esm/models/Role.js.map +1 -1
  109. package/dist/esm/models/Session.js +3 -6
  110. package/dist/esm/models/Session.js.map +1 -1
  111. package/dist/esm/models/TeamInvite.js +3 -6
  112. package/dist/esm/models/TeamInvite.js.map +1 -1
  113. package/dist/esm/models/TeamSettings.js +10 -0
  114. package/dist/esm/models/TeamSettings.js.map +1 -0
  115. package/dist/esm/models/User.js +2 -1
  116. package/dist/esm/models/User.js.map +1 -1
  117. package/dist/esm/rpc/SyncRpcs.js +2 -1
  118. package/dist/esm/rpc/SyncRpcs.js.map +1 -1
  119. package/dist/esm/rpc/event/EventRpcEvents.js +36 -0
  120. package/dist/esm/rpc/event/EventRpcEvents.js.map +1 -0
  121. package/dist/esm/rpc/event/EventRpcGroup.js +59 -0
  122. package/dist/esm/rpc/event/EventRpcGroup.js.map +1 -0
  123. package/dist/esm/rpc/event/EventRpcModels.js +33 -0
  124. package/dist/esm/rpc/event/EventRpcModels.js.map +1 -0
  125. package/package.json +3 -2
  126. package/src/api/Auth.ts +20 -12
  127. package/src/api/EventApi.ts +129 -0
  128. package/src/api/EventRsvpApi.ts +67 -0
  129. package/src/api/EventSeriesApi.ts +134 -0
  130. package/src/api/Roster.ts +3 -2
  131. package/src/api/TeamSettingsApi.ts +57 -0
  132. package/src/api/TrainingTypeApi.ts +3 -0
  133. package/src/index.ts +19 -0
  134. package/src/models/Event.ts +41 -0
  135. package/src/models/EventRsvp.ts +20 -0
  136. package/src/models/EventSeries.ts +36 -0
  137. package/src/models/Role.ts +16 -1
  138. package/src/models/Session.ts +3 -7
  139. package/src/models/TeamInvite.ts +3 -9
  140. package/src/models/TeamSettings.ts +10 -0
  141. package/src/models/User.ts +2 -1
  142. package/src/rpc/SyncRpcs.ts +7 -1
  143. package/src/rpc/event/EventRpcEvents.ts +48 -0
  144. package/src/rpc/event/EventRpcGroup.ts +60 -0
  145. 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;AACpC,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"}
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<"Guild/RegisterGuild", import("effect/Schema").Struct<{
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKvC,qBAAa,QAAS,SAAQ,aAAmE;CAAG"}
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"}
@@ -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
- birthYear: /*#__PURE__*/Schema.NullOr(Schema.Number),
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
- birthYear: /*#__PURE__*/Schema.Number.pipe(/*#__PURE__*/Schema.int(), /*#__PURE__*/Schema.greaterThanOrEqualTo(1900), /*#__PURE__*/Schema.filter(year => year <= new Date().getFullYear() - MIN_AGE, {
43
- message: () => `Birth year must be at most ${new Date().getFullYear() - MIN_AGE}`
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
- birthYear: /*#__PURE__*/Schema.NullOr(/*#__PURE__*/Schema.Number.pipe(/*#__PURE__*/Schema.int(), /*#__PURE__*/Schema.greaterThanOrEqualTo(1900), /*#__PURE__*/Schema.filter(year => year <= new Date().getFullYear() - MIN_AGE, {
50
- message: () => `Birth year must be at most ${new Date().getFullYear() - MIN_AGE}`
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
  }) {}
@@ -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","birthYear","Number","gender","locale","UpdateLocaleRequest","CreateTeamRequest","pipe","minLength","maxLength","guildId","DiscordGuild","icon","owner","botPresent","CompleteProfileRequest","int","greaterThanOrEqualTo","filter","year","Date","getFullYear","message","UpdateProfileRequest","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":[]}
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":"AAAA,SAASA,eAAe,EAAEC,YAAY,EAAEC,aAAa,QAAQ,kBAAkB;AAC/E,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,cAAc,QAAQ,gBAAgB;AAC/C,SAASC,OAAO,EAAEC,WAAW,EAAEC,SAAS,QAAQ,oBAAoB;AACpE,SAASC,aAAa,QAAQ,0BAA0B;AACxD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,cAAc,QAAQ,2BAA2B;AAE1D,OAAM,MAAOC,SAAU,sBAAQR,MAAM,CAACS,KAAK,CAAY,WAAW,CAAC,CAAC;EAClEC,OAAO,EAAER,OAAO;EAChBS,MAAM,EAAEL,MAAM;EACdM,KAAK,EAAEZ,MAAM,CAACa,MAAM;EACpBC,SAAS,EAAEV,SAAS;EACpBW,gBAAgB,eAAEf,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EAC9CI,OAAO,EAAEjB,MAAM,CAACa,MAAM;EACtBK,KAAK,eAAElB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACnCM,QAAQ,eAAEnB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACtCO,MAAM,EAAEjB,WAAW;EACnBkB,QAAQ,eAAErB,MAAM,CAACgB,MAAM,CAACX,aAAa;CACtC,CAAC;AAEF,OAAM,MAAOiB,WAAY,sBAAQtB,MAAM,CAACS,KAAK,CAAc,aAAa,CAAC,CAAC;EACxEC,OAAO,EAAER,OAAO;EAChBS,MAAM,EAAEL,MAAM;EACdM,KAAK,EAAEZ,MAAM,CAACa,MAAM;EACpBC,SAAS,EAAEV,SAAS;EACpBmB,cAAc,eAAEvB,MAAM,CAACgB,MAAM,CAACT,cAAc,CAAC;EAC7CQ,gBAAgB,eAAEf,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EAC9CW,WAAW,eAAExB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACzCI,OAAO,EAAEjB,MAAM,CAACa,MAAM;EACtBK,KAAK,eAAElB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACnCM,QAAQ,eAAEnB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACtCO,MAAM,EAAEjB,WAAW;EACnBsB,aAAa,eAAEzB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EAC3Ca,OAAO,EAAE1B,MAAM,CAAC2B,OAAO;EACvBC,SAAS,EAAE5B,MAAM,CAAC2B,OAAO;EACzBN,QAAQ,eAAErB,MAAM,CAACgB,MAAM,CAACX,aAAa,CAAC;EACtCwB,cAAc,EAAE7B,MAAM,CAAC2B,OAAO;EAC9BG,gBAAgB,eAAE9B,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM;CAC9C,CAAC;AAEF,OAAM,MAAOkB,iBAAkB,sBAAQ/B,MAAM,CAACS,KAAK,CAAoB,mBAAmB,CAAC,CAAC;EAC1FuB,SAAS,EAAEhC,MAAM,CAAC2B,OAAO;EACzBM,MAAM,eAAEjC,MAAM,CAACkC,KAAK,CAAC1B,SAAS;CAC/B,CAAC;AAEF,OAAM,MAAO2B,kBAAmB,sBAAQnC,MAAM,CAACS,KAAK,CAAqB,oBAAoB,CAAC,CAAC;EAC7FG,KAAK,EAAEZ,MAAM,CAACoC,cAAc;EAC5BtB,SAAS,EAAEV,SAAS;EACpBmB,cAAc,eAAEvB,MAAM,CAACgB,MAAM,CAACT,cAAc,CAAC;EAC7CiB,WAAW,eAAExB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACzCI,OAAO,EAAEjB,MAAM,CAACa,MAAM;EACtBK,KAAK,eAAElB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACnCM,QAAQ,eAAEnB,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM,CAAC;EACtCiB,gBAAgB,eAAE9B,MAAM,CAACgB,MAAM,CAAChB,MAAM,CAACa,MAAM;CAC9C,CAAC;AAEF,OAAM,MAAOwB,kBAAmB,sBAAQrC,MAAM,CAACS,KAAK,CAAqB,oBAAoB,CAAC,CAAC;EAC7FG,KAAK,eAAEZ,MAAM,CAACsC,YAAY,CAACtC,MAAM,CAACoC,cAAc,EAAE;IAAEG,EAAE,EAAE;EAAQ,CAAE,CAAC;EACnEzB,SAAS,eAAEd,MAAM,CAACsC,YAAY,CAAClC,SAAS,EAAE;IAAEmC,EAAE,EAAE;EAAQ,CAAE,CAAC;EAC3DhB,cAAc,eAAEvB,MAAM,CAACsC,YAAY,cAACtC,MAAM,CAACwC,gBAAgB,CAACjC,cAAc,CAAC,EAAE;IAAEgC,EAAE,EAAE;EAAQ,CAAE,CAAC;EAC9Ff,WAAW,eAAExB,MAAM,CAACsC,YAAY,cAACtC,MAAM,CAACwC,gBAAgB,CAACxC,MAAM,CAACa,MAAM,CAAC,EAAE;IAAE0B,EAAE,EAAE;EAAQ,CAAE,CAAC;EAC1FtB,OAAO,eAAEjB,MAAM,CAACsC,YAAY,CAACtC,MAAM,CAACa,MAAM,EAAE;IAAE0B,EAAE,EAAE;EAAQ,CAAE,CAAC;EAC7DrB,KAAK,eAAElB,MAAM,CAACsC,YAAY,cAACtC,MAAM,CAACwC,gBAAgB,CAACxC,MAAM,CAACa,MAAM,CAAC,EAAE;IAAE0B,EAAE,EAAE;EAAQ,CAAE,CAAC;EACpFpB,QAAQ,eAAEnB,MAAM,CAACsC,YAAY,cAACtC,MAAM,CAACwC,gBAAgB,CAACxC,MAAM,CAACa,MAAM,CAAC,EAAE;IAAE0B,EAAE,EAAE;EAAQ,CAAE,CAAC;EACvFT,gBAAgB,eAAE9B,MAAM,CAACsC,YAAY,cAACtC,MAAM,CAACwC,gBAAgB,CAACxC,MAAM,CAACa,MAAM,CAAC,EAAE;IAAE0B,EAAE,EAAE;EAAQ,CAAE;CAC/F,CAAC;AAEF,OAAM,MAAOE,aAAc,sBAAQzC,MAAM,CAAC0C,WAAW,EAAiB,CACpE,eAAe,EACf,EAAE,eACF3C,aAAa,CAAC4C,WAAW,CAAC;EAAEvB,MAAM,EAAE;AAAG,CAAE,CAAC,CAC3C;AAED,OAAM,MAAOwB,SAAU,sBAAQ5C,MAAM,CAAC0C,WAAW,EAAa,CAC5D,gBAAgB,EAChB,EAAE,eACF3C,aAAa,CAAC4C,WAAW,CAAC;EAAEvB,MAAM,EAAE;AAAG,CAAE,CAAC,CAC3C;AAED,OAAM,MAAOyB,cAAe,sBAAQ7C,MAAM,CAAC0C,WAAW,EAAkB,CACtE,gBAAgB,EAChB,EAAE,eACF3C,aAAa,CAAC4C,WAAW,CAAC;EAAEvB,MAAM,EAAE;AAAG,CAAE,CAAC,CAC3C;AAED,OAAM,MAAO0B,aAAc,sBAAQhD,YAAY,CAACiD,IAAI,CAAC,OAAO,CAAC,CAC1DC,GAAG,CACFnD,eAAe,CAACoD,GAAG,CAAC,YAAY,EAAE,uBAAuB,CAAC,CACvDC,UAAU,CAACnB,iBAAiB,CAAC,CAC7BoB,QAAQ,CAACP,SAAS,EAAE;EAAExB,MAAM,EAAE;AAAG,CAAE,CAAC,CACpCgC,OAAO,CAACpD,MAAM,CAACqD,MAAM,CAAC;EAAE1C,MAAM,EAAEL;AAAM,CAAE,CAAC,CAAC,CAC1CgD,UAAU,CAACrD,cAAc,CAAC,CAC9B,CACA+C,GAAG,CACFnD,eAAe,CAAC0D,IAAI,CAAC,aAAa,EAAE,uBAAuB,CAAC,CACzDL,UAAU,CAAC1C,SAAS,EAAE;EAAEY,MAAM,EAAE;AAAG,CAAE,CAAC,CACtC+B,QAAQ,CAACP,SAAS,EAAE;EAAExB,MAAM,EAAE;AAAG,CAAE,CAAC,CACpCgC,OAAO,CAACpD,MAAM,CAACqD,MAAM,CAAC;EAAE1C,MAAM,EAAEL;AAAM,CAAE,CAAC,CAAC,CAC1CkD,UAAU,CAACrB,kBAAkB,CAAC,CAC9BmB,UAAU,CAACrD,cAAc,CAAC,CAC9B,CACA+C,GAAG,CACFnD,eAAe,CAACoD,GAAG,CAAC,UAAU,EAAE,gCAAgC,CAAC,CAC9DC,UAAU,CAAC5B,WAAW,CAAC,CACvB6B,QAAQ,CAACP,SAAS,EAAE;EAAExB,MAAM,EAAE;AAAG,CAAE,CAAC,CACpC+B,QAAQ,CAACV,aAAa,EAAE;EAAErB,MAAM,EAAE;AAAG,CAAE,CAAC,CACxCgC,OAAO,CAACpD,MAAM,CAACqD,MAAM,CAAC;EAAE1C,MAAM,EAAEL,MAAM;EAAEI,OAAO,EAAER;AAAO,CAAE,CAAC,CAAC,CAC5DoD,UAAU,CAACrD,cAAc,CAAC,CAC9B,CACA+C,GAAG,CACFnD,eAAe,CAAC4D,KAAK,CAAC,aAAa,EAAE,gCAAgC,CAAC,CACnEP,UAAU,CAAC5B,WAAW,CAAC,CACvB6B,QAAQ,CAACP,SAAS,EAAE;EAAExB,MAAM,EAAE;AAAG,CAAE,CAAC,CACpC+B,QAAQ,CAACV,aAAa,EAAE;EAAErB,MAAM,EAAE;AAAG,CAAE,CAAC,CACxC+B,QAAQ,CAACN,cAAc,EAAE;EAAEzB,MAAM,EAAE;AAAG,CAAE,CAAC,CACzCgC,OAAO,CAACpD,MAAM,CAACqD,MAAM,CAAC;EAAE1C,MAAM,EAAEL,MAAM;EAAEI,OAAO,EAAER;AAAO,CAAE,CAAC,CAAC,CAC5DsD,UAAU,CAACnB,kBAAkB,CAAC,CAC9BiB,UAAU,CAACrD,cAAc,CAAC,CAC9B,CACA+C,GAAG,cACFnD,eAAe,CAAC0D,IAAI,CAAC,aAAa,EAAE,uCAAuC,CAAC,CACzEL,UAAU,CAAClD,MAAM,CAAC0D,IAAI,EAAE;EAAEtC,MAAM,EAAE;AAAG,CAAE,CAAC,CACxC+B,QAAQ,CAACP,SAAS,EAAE;EAAExB,MAAM,EAAE;AAAG,CAAE,CAAC,CACpC+B,QAAQ,CAACV,aAAa,EAAE;EAAErB,MAAM,EAAE;AAAG,CAAE,CAAC,CACxC+B,QAAQ,CAACN,cAAc,EAAE;EAAEzB,MAAM,EAAE;AAAG,CAAE,CAAC,CACzCgC,OAAO,CAACpD,MAAM,CAACqD,MAAM,CAAC;EAAE1C,MAAM,EAAEL,MAAM;EAAEI,OAAO,EAAER;AAAO,CAAE,CAAC,CAAC,CAC5DoD,UAAU,CAACrD,cAAc,CAAC,CAC9B","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":[]}