@sideline/domain 0.4.0 → 0.5.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/dist/cjs/api/AgeThresholdApi.js +14 -14
- package/dist/cjs/api/AgeThresholdApi.js.map +1 -1
- package/dist/cjs/api/Auth.js +14 -2
- package/dist/cjs/api/Auth.js.map +1 -1
- package/dist/cjs/api/GroupApi.js +205 -0
- package/dist/cjs/api/GroupApi.js.map +1 -0
- package/dist/cjs/api/NotificationApi.js +6 -2
- package/dist/cjs/api/NotificationApi.js.map +1 -1
- package/dist/cjs/api/TrainingTypeApi.js +9 -40
- package/dist/cjs/api/TrainingTypeApi.js.map +1 -1
- package/dist/cjs/index.js +9 -5
- package/dist/cjs/models/AgeThresholdRule.js +2 -2
- package/dist/cjs/models/AgeThresholdRule.js.map +1 -1
- package/dist/cjs/models/ChannelSyncEvent.js +3 -3
- package/dist/cjs/models/ChannelSyncEvent.js.map +1 -1
- package/dist/cjs/models/DiscordChannelMapping.js +2 -2
- package/dist/cjs/models/DiscordChannelMapping.js.map +1 -1
- package/dist/cjs/models/GroupModel.js +20 -0
- package/dist/cjs/models/GroupModel.js.map +1 -0
- package/dist/cjs/models/Notification.js +1 -1
- package/dist/cjs/models/Notification.js.map +1 -1
- package/dist/cjs/models/Role.js +2 -2
- package/dist/cjs/models/Role.js.map +1 -1
- package/dist/cjs/models/RoleGroup.js +15 -0
- package/dist/cjs/models/RoleGroup.js.map +1 -0
- package/dist/cjs/models/Team.js +2 -0
- package/dist/cjs/models/Team.js.map +1 -1
- package/dist/cjs/models/TrainingType.js +2 -0
- package/dist/cjs/models/TrainingType.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/channel/ChannelRpcEvents.js +6 -6
- package/dist/cjs/rpc/channel/ChannelRpcEvents.js.map +1 -1
- package/dist/cjs/rpc/channel/ChannelRpcGroup.js +3 -3
- package/dist/cjs/rpc/channel/ChannelRpcGroup.js.map +1 -1
- package/dist/cjs/rpc/channel/ChannelRpcModels.js +1 -1
- package/dist/cjs/rpc/channel/ChannelRpcModels.js.map +1 -1
- package/dist/cjs/rpc/guild/GuildRpcGroup.js +35 -0
- package/dist/cjs/rpc/guild/GuildRpcGroup.js.map +1 -0
- package/dist/dts/api/AgeThresholdApi.d.ts +25 -25
- package/dist/dts/api/AgeThresholdApi.d.ts.map +1 -1
- package/dist/dts/api/Auth.d.ts +33 -4
- package/dist/dts/api/Auth.d.ts.map +1 -1
- package/dist/dts/api/GroupApi.d.ts +254 -0
- package/dist/dts/api/GroupApi.d.ts.map +1 -0
- package/dist/dts/api/NotificationApi.d.ts +9 -5
- package/dist/dts/api/NotificationApi.d.ts.map +1 -1
- package/dist/dts/api/RoleApi.d.ts +10 -10
- package/dist/dts/api/Roster.d.ts +5 -5
- package/dist/dts/api/TrainingTypeApi.d.ts +17 -42
- package/dist/dts/api/TrainingTypeApi.d.ts.map +1 -1
- package/dist/dts/index.d.ts +4 -2
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/models/AgeThresholdRule.d.ts +13 -13
- package/dist/dts/models/ChannelSyncEvent.d.ts +28 -28
- package/dist/dts/models/DiscordChannelMapping.d.ts +11 -11
- package/dist/dts/models/{SubgroupModel.d.ts → GroupModel.d.ts} +39 -13
- package/dist/dts/models/GroupModel.d.ts.map +1 -0
- package/dist/dts/models/Notification.d.ts +12 -12
- package/dist/dts/models/Notification.d.ts.map +1 -1
- package/dist/dts/models/Role.d.ts +4 -4
- package/dist/dts/models/Role.d.ts.map +1 -1
- package/dist/dts/models/RoleGroup.d.ts +16 -0
- package/dist/dts/models/RoleGroup.d.ts.map +1 -0
- package/dist/dts/models/RoleSyncEvent.d.ts +4 -4
- package/dist/dts/models/Team.d.ts +13 -0
- package/dist/dts/models/Team.d.ts.map +1 -1
- package/dist/dts/models/TrainingType.d.ts +13 -0
- package/dist/dts/models/TrainingType.d.ts.map +1 -1
- package/dist/dts/rpc/SyncRpcs.d.ts +18 -3
- package/dist/dts/rpc/SyncRpcs.d.ts.map +1 -1
- package/dist/dts/rpc/channel/ChannelRpcEvents.d.ts +6 -6
- package/dist/dts/rpc/channel/ChannelRpcGroup.d.ts +3 -3
- package/dist/dts/rpc/channel/ChannelRpcModels.d.ts +3 -3
- package/dist/dts/rpc/guild/GuildRpcGroup.d.ts +19 -0
- package/dist/dts/rpc/guild/GuildRpcGroup.d.ts.map +1 -0
- package/dist/esm/api/AgeThresholdApi.js +11 -11
- package/dist/esm/api/AgeThresholdApi.js.map +1 -1
- package/dist/esm/api/Auth.js +12 -1
- package/dist/esm/api/Auth.js.map +1 -1
- package/dist/esm/api/GroupApi.js +185 -0
- package/dist/esm/api/GroupApi.js.map +1 -0
- package/dist/esm/api/NotificationApi.js +6 -2
- package/dist/esm/api/NotificationApi.js.map +1 -1
- package/dist/esm/api/TrainingTypeApi.js +8 -37
- package/dist/esm/api/TrainingTypeApi.js.map +1 -1
- package/dist/esm/index.js +4 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/AgeThresholdRule.js +2 -2
- package/dist/esm/models/AgeThresholdRule.js.map +1 -1
- package/dist/esm/models/ChannelSyncEvent.js +3 -3
- package/dist/esm/models/ChannelSyncEvent.js.map +1 -1
- package/dist/esm/models/DiscordChannelMapping.js +2 -2
- package/dist/esm/models/DiscordChannelMapping.js.map +1 -1
- package/dist/esm/models/GroupModel.js +13 -0
- package/dist/esm/models/GroupModel.js.map +1 -0
- package/dist/esm/models/Notification.js +1 -1
- package/dist/esm/models/Notification.js.map +1 -1
- package/dist/esm/models/Role.js +2 -2
- package/dist/esm/models/Role.js.map +1 -1
- package/dist/esm/models/RoleGroup.js +8 -0
- package/dist/esm/models/RoleGroup.js.map +1 -0
- package/dist/esm/models/Team.js +2 -0
- package/dist/esm/models/Team.js.map +1 -1
- package/dist/esm/models/TrainingType.js +2 -0
- package/dist/esm/models/TrainingType.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/channel/ChannelRpcEvents.js +7 -7
- package/dist/esm/rpc/channel/ChannelRpcEvents.js.map +1 -1
- package/dist/esm/rpc/channel/ChannelRpcGroup.js +4 -4
- package/dist/esm/rpc/channel/ChannelRpcGroup.js.map +1 -1
- package/dist/esm/rpc/channel/ChannelRpcModels.js +2 -2
- package/dist/esm/rpc/channel/ChannelRpcModels.js.map +1 -1
- package/dist/esm/rpc/guild/GuildRpcGroup.js +29 -0
- package/dist/esm/rpc/guild/GuildRpcGroup.js.map +1 -0
- package/package.json +1 -1
- package/src/api/AgeThresholdApi.ts +12 -12
- package/src/api/Auth.ts +16 -0
- package/src/api/GroupApi.ts +229 -0
- package/src/api/NotificationApi.ts +10 -0
- package/src/api/TrainingTypeApi.ts +5 -52
- package/src/index.ts +7 -4
- package/src/models/AgeThresholdRule.ts +2 -2
- package/src/models/ChannelSyncEvent.ts +3 -3
- package/src/models/DiscordChannelMapping.ts +2 -2
- package/src/models/GroupModel.ts +15 -0
- package/src/models/Notification.ts +2 -2
- package/src/models/Role.ts +4 -0
- package/src/models/RoleGroup.ts +8 -0
- package/src/models/Team.ts +2 -0
- package/src/models/TrainingType.ts +2 -0
- package/src/rpc/SyncRpcs.ts +2 -1
- package/src/rpc/channel/ChannelRpcEvents.ts +7 -7
- package/src/rpc/channel/ChannelRpcGroup.ts +4 -4
- package/src/rpc/channel/ChannelRpcModels.ts +2 -2
- package/src/rpc/guild/GuildRpcGroup.ts +29 -0
- package/dist/cjs/api/SubgroupApi.js +0 -122
- package/dist/cjs/api/SubgroupApi.js.map +0 -1
- package/dist/cjs/models/SubgroupModel.js +0 -18
- package/dist/cjs/models/SubgroupModel.js.map +0 -1
- package/dist/dts/api/SubgroupApi.d.ts +0 -140
- package/dist/dts/api/SubgroupApi.d.ts.map +0 -1
- package/dist/dts/models/SubgroupModel.d.ts.map +0 -1
- package/dist/esm/api/SubgroupApi.js +0 -106
- package/dist/esm/api/SubgroupApi.js.map +0 -1
- package/dist/esm/models/SubgroupModel.js +0 -11
- package/dist/esm/models/SubgroupModel.js.map +0 -1
- package/src/api/SubgroupApi.ts +0 -146
- package/src/models/SubgroupModel.ts +0 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgeThresholdRule.js","names":["Model","Schema","
|
|
1
|
+
{"version":3,"file":"AgeThresholdRule.js","names":["Model","Schema","GroupId","TeamId","AgeThresholdRuleId","String","pipe","brand","AgeThresholdRule","Class","id","Generated","team_id","group_id","min_age","NullOr","Number","max_age","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/AgeThresholdRule.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,kBAAkB,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAGxF,OAAM,MAAOC,gBAAiB,sBAAQR,KAAK,CAACS,KAAK,CAAmB,kBAAkB,CAAC,CAAC;EACtFC,EAAE,eAAEV,KAAK,CAACW,SAAS,CAACP,kBAAkB,CAAC;EACvCQ,OAAO,EAAET,MAAM;EACfU,QAAQ,EAAEX,OAAO;EACjBY,OAAO,eAAEb,MAAM,CAACc,MAAM,CAACd,MAAM,CAACe,MAAM,CAAC;EACrCC,OAAO,eAAEhB,MAAM,CAACc,MAAM,CAACd,MAAM,CAACe,MAAM,CAAC;EACrCE,UAAU,EAAElB,KAAK,CAACmB;CACnB,CAAC","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Model } from '@effect/sql';
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
|
-
import {
|
|
3
|
+
import { GroupId } from '../models/GroupModel.js';
|
|
4
4
|
import { TeamId } from '../models/Team.js';
|
|
5
5
|
import { TeamMemberId } from '../models/TeamMember.js';
|
|
6
6
|
export const ChannelSyncEventId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('ChannelSyncEventId'));
|
|
@@ -10,8 +10,8 @@ export class ChannelSyncEvent extends /*#__PURE__*/Model.Class('ChannelSyncEvent
|
|
|
10
10
|
team_id: TeamId,
|
|
11
11
|
guild_id: Schema.String,
|
|
12
12
|
event_type: ChannelSyncEventType,
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
group_id: GroupId,
|
|
14
|
+
group_name: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
15
15
|
team_member_id: /*#__PURE__*/Schema.NullOr(TeamMemberId),
|
|
16
16
|
discord_user_id: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
17
17
|
processed_at: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelSyncEvent.js","names":["Model","Schema","
|
|
1
|
+
{"version":3,"file":"ChannelSyncEvent.js","names":["Model","Schema","GroupId","TeamId","TeamMemberId","ChannelSyncEventId","String","pipe","brand","ChannelSyncEventType","Literal","ChannelSyncEvent","Class","id","Generated","team_id","guild_id","event_type","group_id","group_name","NullOr","team_member_id","discord_user_id","processed_at","error","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/ChannelSyncEvent.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,YAAY,QAAQ,yBAAyB;AAEtD,OAAO,MAAMC,kBAAkB,gBAAGJ,MAAM,CAACK,MAAM,CAACC,IAAI,cAACN,MAAM,CAACO,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAGxF,OAAO,MAAMC,oBAAoB,gBAAGR,MAAM,CAACS,OAAO,CAChD,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,CACjB;AAGD,OAAM,MAAOC,gBAAiB,sBAAQX,KAAK,CAACY,KAAK,CAAmB,kBAAkB,CAAC,CAAC;EACtFC,EAAE,eAAEb,KAAK,CAACc,SAAS,CAACT,kBAAkB,CAAC;EACvCU,OAAO,EAAEZ,MAAM;EACfa,QAAQ,EAAEf,MAAM,CAACK,MAAM;EACvBW,UAAU,EAAER,oBAAoB;EAChCS,QAAQ,EAAEhB,OAAO;EACjBiB,UAAU,eAAElB,MAAM,CAACmB,MAAM,CAACnB,MAAM,CAACK,MAAM,CAAC;EACxCe,cAAc,eAAEpB,MAAM,CAACmB,MAAM,CAAChB,YAAY,CAAC;EAC3CkB,eAAe,eAAErB,MAAM,CAACmB,MAAM,CAACnB,MAAM,CAACK,MAAM,CAAC;EAC7CiB,YAAY,eAAEtB,MAAM,CAACmB,MAAM,CAACnB,MAAM,CAACK,MAAM,CAAC;EAC1CkB,KAAK,eAAEvB,MAAM,CAACmB,MAAM,CAACnB,MAAM,CAACK,MAAM,CAAC;EACnCmB,UAAU,EAAEzB,KAAK,CAAC0B;CACnB,CAAC","ignoreList":[]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Model } from '@effect/sql';
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
|
-
import {
|
|
3
|
+
import { GroupId } from '../models/GroupModel.js';
|
|
4
4
|
import { TeamId } from '../models/Team.js';
|
|
5
5
|
export const DiscordChannelMappingId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('DiscordChannelMappingId'));
|
|
6
6
|
export class DiscordChannelMapping extends /*#__PURE__*/Model.Class('DiscordChannelMapping')({
|
|
7
7
|
id: /*#__PURE__*/Model.Generated(DiscordChannelMappingId),
|
|
8
8
|
team_id: TeamId,
|
|
9
|
-
|
|
9
|
+
group_id: GroupId,
|
|
10
10
|
discord_channel_id: Schema.String,
|
|
11
11
|
discord_role_id: /*#__PURE__*/Schema.OptionFromNullOr(Schema.String),
|
|
12
12
|
created_at: Model.DateTimeInsertFromDate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordChannelMapping.js","names":["Model","Schema","
|
|
1
|
+
{"version":3,"file":"DiscordChannelMapping.js","names":["Model","Schema","GroupId","TeamId","DiscordChannelMappingId","String","pipe","brand","DiscordChannelMapping","Class","id","Generated","team_id","group_id","discord_channel_id","discord_role_id","OptionFromNullOr","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/DiscordChannelMapping.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,uBAAuB,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAGlG,OAAM,MAAOC,qBAAsB,sBAAQR,KAAK,CAACS,KAAK,CACpD,uBAAuB,CACxB,CAAC;EACAC,EAAE,eAAEV,KAAK,CAACW,SAAS,CAACP,uBAAuB,CAAC;EAC5CQ,OAAO,EAAET,MAAM;EACfU,QAAQ,EAAEX,OAAO;EACjBY,kBAAkB,EAAEb,MAAM,CAACI,MAAM;EACjCU,eAAe,eAAEd,MAAM,CAACe,gBAAgB,CAACf,MAAM,CAACI,MAAM,CAAC;EACvDY,UAAU,EAAEjB,KAAK,CAACkB;CACnB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Model } from '@effect/sql';
|
|
2
|
+
import { Schema } from 'effect';
|
|
3
|
+
import { TeamId } from '../models/Team.js';
|
|
4
|
+
export const GroupId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('GroupId'));
|
|
5
|
+
export class Group extends /*#__PURE__*/Model.Class('Group')({
|
|
6
|
+
id: /*#__PURE__*/Model.Generated(GroupId),
|
|
7
|
+
team_id: TeamId,
|
|
8
|
+
parent_id: /*#__PURE__*/Schema.NullOr(GroupId),
|
|
9
|
+
name: Schema.String,
|
|
10
|
+
emoji: /*#__PURE__*/Schema.NullOr(Schema.String),
|
|
11
|
+
created_at: Model.DateTimeInsertFromDate
|
|
12
|
+
}) {}
|
|
13
|
+
//# sourceMappingURL=GroupModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupModel.js","names":["Model","Schema","TeamId","GroupId","String","pipe","brand","Group","Class","id","Generated","team_id","parent_id","NullOr","name","emoji","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/GroupModel.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,OAAO,gBAAGF,MAAM,CAACG,MAAM,CAACC,IAAI,cAACJ,MAAM,CAACK,KAAK,CAAC,SAAS,CAAC,CAAC;AAGlE,OAAM,MAAOC,KAAM,sBAAQP,KAAK,CAACQ,KAAK,CAAQ,OAAO,CAAC,CAAC;EACrDC,EAAE,eAAET,KAAK,CAACU,SAAS,CAACP,OAAO,CAAC;EAC5BQ,OAAO,EAAET,MAAM;EACfU,SAAS,eAAEX,MAAM,CAACY,MAAM,CAACV,OAAO,CAAC;EACjCW,IAAI,EAAEb,MAAM,CAACG,MAAM;EACnBW,KAAK,eAAEd,MAAM,CAACY,MAAM,CAACZ,MAAM,CAACG,MAAM,CAAC;EACnCY,UAAU,EAAEhB,KAAK,CAACiB;CACnB,CAAC","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@ import { Schema } from 'effect';
|
|
|
3
3
|
import { TeamId } from '../models/Team.js';
|
|
4
4
|
import { UserId } from '../models/User.js';
|
|
5
5
|
export const NotificationId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('NotificationId'));
|
|
6
|
-
export const NotificationType = /*#__PURE__*/Schema.Literal('
|
|
6
|
+
export const NotificationType = /*#__PURE__*/Schema.Literal('age_group_added', 'age_group_removed', 'role_assigned', 'role_removed');
|
|
7
7
|
export class Notification extends /*#__PURE__*/Model.Class('Notification')({
|
|
8
8
|
id: /*#__PURE__*/Model.Generated(NotificationId),
|
|
9
9
|
team_id: TeamId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notification.js","names":["Model","Schema","TeamId","UserId","NotificationId","String","pipe","brand","NotificationType","Literal","Notification","Class","id","Generated","team_id","user_id","type","title","body","is_read","Boolean","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/Notification.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,cAAc,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAGhF,OAAO,MAAMC,gBAAgB,gBAAGP,MAAM,CAACQ,OAAO,CAC5C,mBAAmB,EACnB,
|
|
1
|
+
{"version":3,"file":"Notification.js","names":["Model","Schema","TeamId","UserId","NotificationId","String","pipe","brand","NotificationType","Literal","Notification","Class","id","Generated","team_id","user_id","type","title","body","is_read","Boolean","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/Notification.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,cAAc,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAGhF,OAAO,MAAMC,gBAAgB,gBAAGP,MAAM,CAACQ,OAAO,CAC5C,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,cAAc,CACf;AAGD,OAAM,MAAOC,YAAa,sBAAQV,KAAK,CAACW,KAAK,CAAe,cAAc,CAAC,CAAC;EAC1EC,EAAE,eAAEZ,KAAK,CAACa,SAAS,CAACT,cAAc,CAAC;EACnCU,OAAO,EAAEZ,MAAM;EACfa,OAAO,EAAEZ,MAAM;EACfa,IAAI,EAAER,gBAAgB;EACtBS,KAAK,EAAEhB,MAAM,CAACI,MAAM;EACpBa,IAAI,EAAEjB,MAAM,CAACI,MAAM;EACnBc,OAAO,EAAElB,MAAM,CAACmB,OAAO;EACvBC,UAAU,EAAErB,KAAK,CAACsB;CACnB,CAAC","ignoreList":[]}
|
package/dist/esm/models/Role.js
CHANGED
|
@@ -2,10 +2,10 @@ import { Model } from '@effect/sql';
|
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
3
|
import { TeamId } from '../models/Team.js';
|
|
4
4
|
export const RoleId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('RoleId'));
|
|
5
|
-
export const Permission = /*#__PURE__*/Schema.Literal('team:manage', 'team:invite', 'roster:view', 'roster:manage', 'member:view', 'member:edit', 'member:remove', 'role:view', 'role:manage');
|
|
5
|
+
export const Permission = /*#__PURE__*/Schema.Literal('team:manage', 'team:invite', 'roster:view', 'roster:manage', 'member:view', 'member:edit', 'member:remove', 'role:view', 'role:manage', 'training-type:create', 'training-type:delete');
|
|
6
6
|
export const allPermissions = Permission.literals;
|
|
7
7
|
export const defaultPermissions = {
|
|
8
|
-
Admin: ['team:manage', 'team:invite', 'roster:view', 'roster:manage', 'member:view', 'member:edit', 'member:remove', 'role:view', 'role:manage'],
|
|
8
|
+
Admin: ['team:manage', 'team:invite', 'roster:view', 'roster:manage', 'member:view', 'member:edit', 'member:remove', 'role:view', 'role:manage', 'training-type:create', 'training-type:delete'],
|
|
9
9
|
Captain: ['roster:view', 'roster:manage', 'member:view', 'member:edit', 'role:view'],
|
|
10
10
|
Player: ['roster:view', 'member:view']
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Role.js","names":["Model","Schema","TeamId","RoleId","String","pipe","brand","Permission","Literal","allPermissions","literals","defaultPermissions","Admin","Captain","Player","builtInRoleNames","Role","Class","id","Generated","team_id","name","is_built_in","Boolean","created_at","DateTimeInsertFromDate","RolePermission","role_id","permission"],"sources":["../../../src/models/Role.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,MAAM,gBAAGF,MAAM,CAACG,MAAM,CAACC,IAAI,cAACJ,MAAM,CAACK,KAAK,CAAC,QAAQ,CAAC,CAAC;AAGhE,OAAO,MAAMC,UAAU,gBAAGN,MAAM,CAACO,OAAO,CACtC,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,
|
|
1
|
+
{"version":3,"file":"Role.js","names":["Model","Schema","TeamId","RoleId","String","pipe","brand","Permission","Literal","allPermissions","literals","defaultPermissions","Admin","Captain","Player","builtInRoleNames","Role","Class","id","Generated","team_id","name","is_built_in","Boolean","created_at","DateTimeInsertFromDate","RolePermission","role_id","permission"],"sources":["../../../src/models/Role.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,MAAM,gBAAGF,MAAM,CAACG,MAAM,CAACC,IAAI,cAACJ,MAAM,CAACK,KAAK,CAAC,QAAQ,CAAC,CAAC;AAGhE,OAAO,MAAMC,UAAU,gBAAGN,MAAM,CAACO,OAAO,CACtC,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,sBAAsB,CACvB;AAGD,OAAO,MAAMC,cAAc,GACzBF,UAAU,CAACG,QAAqC;AAElD,OAAO,MAAMC,kBAAkB,GAA8C;EAC3EC,KAAK,EAAE,CACL,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,sBAAsB,CACvB;EACDC,OAAO,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,CAAC;EACpFC,MAAM,EAAE,CAAC,aAAa,EAAE,aAAa;CACtC;AAED,OAAO,MAAMC,gBAAgB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAU;AAEvE,OAAM,MAAOC,IAAK,sBAAQhB,KAAK,CAACiB,KAAK,CAAO,MAAM,CAAC,CAAC;EAClDC,EAAE,eAAElB,KAAK,CAACmB,SAAS,CAAChB,MAAM,CAAC;EAC3BiB,OAAO,EAAElB,MAAM;EACfmB,IAAI,EAAEpB,MAAM,CAACG,MAAM;EACnBkB,WAAW,EAAErB,MAAM,CAACsB,OAAO;EAC3BC,UAAU,EAAExB,KAAK,CAACyB;CACnB,CAAC;AAEF,OAAM,MAAOC,cAAe,sBAAQzB,MAAM,CAACgB,KAAK,CAAiB,gBAAgB,CAAC,CAAC;EACjFU,OAAO,EAAExB,MAAM;EACfyB,UAAU,EAAErB;CACb,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
import { GroupId } from '../models/GroupModel.js';
|
|
3
|
+
import { RoleId } from '../models/Role.js';
|
|
4
|
+
export class RoleGroup extends /*#__PURE__*/Schema.Class('RoleGroup')({
|
|
5
|
+
role_id: RoleId,
|
|
6
|
+
group_id: GroupId
|
|
7
|
+
}) {}
|
|
8
|
+
//# sourceMappingURL=RoleGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RoleGroup.js","names":["Schema","GroupId","RoleId","RoleGroup","Class","role_id","group_id"],"sources":["../../../src/models/RoleGroup.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAM,MAAOC,SAAU,sBAAQH,MAAM,CAACI,KAAK,CAAY,WAAW,CAAC,CAAC;EAClEC,OAAO,EAAEH,MAAM;EACfI,QAAQ,EAAEL;CACX,CAAC","ignoreList":[]}
|
package/dist/esm/models/Team.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { Model } from '@effect/sql';
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
|
+
import { Snowflake } from '../models/Discord.js';
|
|
3
4
|
import { UserId } from '../models/User.js';
|
|
4
5
|
export const TeamId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('TeamId'));
|
|
5
6
|
export class Team extends /*#__PURE__*/Model.Class('Team')({
|
|
6
7
|
id: /*#__PURE__*/Model.Generated(TeamId),
|
|
7
8
|
name: Schema.String,
|
|
9
|
+
guild_id: Snowflake,
|
|
8
10
|
created_by: UserId,
|
|
9
11
|
created_at: Model.DateTimeInsertFromDate,
|
|
10
12
|
updated_at: Model.DateTimeUpdateFromDate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Team.js","names":["Model","Schema","UserId","TeamId","String","pipe","brand","Team","Class","id","Generated","name","created_by","created_at","DateTimeInsertFromDate","updated_at","DateTimeUpdateFromDate"],"sources":["../../../src/models/Team.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,MAAM,
|
|
1
|
+
{"version":3,"file":"Team.js","names":["Model","Schema","Snowflake","UserId","TeamId","String","pipe","brand","Team","Class","id","Generated","name","guild_id","created_by","created_at","DateTimeInsertFromDate","updated_at","DateTimeUpdateFromDate"],"sources":["../../../src/models/Team.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,SAAS,QAAQ,sBAAsB;AAChD,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,MAAM,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,QAAQ,CAAC,CAAC;AAGhE,OAAM,MAAOC,IAAK,sBAAQR,KAAK,CAACS,KAAK,CAAO,MAAM,CAAC,CAAC;EAClDC,EAAE,eAAEV,KAAK,CAACW,SAAS,CAACP,MAAM,CAAC;EAC3BQ,IAAI,EAAEX,MAAM,CAACI,MAAM;EACnBQ,QAAQ,EAAEX,SAAS;EACnBY,UAAU,EAAEX,MAAM;EAClBY,UAAU,EAAEf,KAAK,CAACgB,sBAAsB;EACxCC,UAAU,EAAEjB,KAAK,CAACkB;CACnB,CAAC","ignoreList":[]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Model } from '@effect/sql';
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
|
+
import { GroupId } from '../models/GroupModel.js';
|
|
3
4
|
import { TeamId } from '../models/Team.js';
|
|
4
5
|
export const TrainingTypeId = /*#__PURE__*/Schema.String.pipe(/*#__PURE__*/Schema.brand('TrainingTypeId'));
|
|
5
6
|
export class TrainingType extends /*#__PURE__*/Model.Class('TrainingType')({
|
|
6
7
|
id: /*#__PURE__*/Model.Generated(TrainingTypeId),
|
|
7
8
|
team_id: TeamId,
|
|
8
9
|
name: Schema.String,
|
|
10
|
+
group_id: /*#__PURE__*/Schema.NullOr(GroupId),
|
|
9
11
|
created_at: Model.DateTimeInsertFromDate
|
|
10
12
|
}) {}
|
|
11
13
|
//# sourceMappingURL=TrainingType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrainingType.js","names":["Model","Schema","TeamId","TrainingTypeId","String","pipe","brand","TrainingType","Class","id","Generated","team_id","name","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/TrainingType.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,cAAc,
|
|
1
|
+
{"version":3,"file":"TrainingType.js","names":["Model","Schema","GroupId","TeamId","TrainingTypeId","String","pipe","brand","TrainingType","Class","id","Generated","team_id","name","group_id","NullOr","created_at","DateTimeInsertFromDate"],"sources":["../../../src/models/TrainingType.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,OAAO,MAAMC,cAAc,gBAAGH,MAAM,CAACI,MAAM,CAACC,IAAI,cAACL,MAAM,CAACM,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAGhF,OAAM,MAAOC,YAAa,sBAAQR,KAAK,CAACS,KAAK,CAAe,cAAc,CAAC,CAAC;EAC1EC,EAAE,eAAEV,KAAK,CAACW,SAAS,CAACP,cAAc,CAAC;EACnCQ,OAAO,EAAET,MAAM;EACfU,IAAI,EAAEZ,MAAM,CAACI,MAAM;EACnBS,QAAQ,eAAEb,MAAM,CAACc,MAAM,CAACb,OAAO,CAAC;EAChCc,UAAU,EAAEhB,KAAK,CAACiB;CACnB,CAAC","ignoreList":[]}
|
package/dist/esm/rpc/SyncRpcs.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { RpcGroup } from '@effect/rpc';
|
|
2
2
|
import { ChannelRpcGroup } from './channel/ChannelRpcGroup.js';
|
|
3
|
+
import { GuildRpcGroup } from './guild/GuildRpcGroup.js';
|
|
3
4
|
import { RoleRpcGroup } from './role/RoleRpcGroup.js';
|
|
4
|
-
export class SyncRpcs extends /*#__PURE__*/RpcGroup.make().merge(RoleRpcGroup, ChannelRpcGroup) {}
|
|
5
|
+
export class SyncRpcs extends /*#__PURE__*/RpcGroup.make().merge(RoleRpcGroup, ChannelRpcGroup, GuildRpcGroup) {}
|
|
5
6
|
//# sourceMappingURL=SyncRpcs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncRpcs.js","names":["RpcGroup","ChannelRpcGroup","RoleRpcGroup","SyncRpcs","make","merge"],"sources":["../../../src/rpc/SyncRpcs.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAQ,QAAQ,aAAa;AACtC,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,YAAY,QAAQ,wBAAwB;AAErD,OAAM,MAAOC,QAAS,
|
|
1
|
+
{"version":3,"file":"SyncRpcs.js","names":["RpcGroup","ChannelRpcGroup","GuildRpcGroup","RoleRpcGroup","SyncRpcs","make","merge"],"sources":["../../../src/rpc/SyncRpcs.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAQ,QAAQ,aAAa;AACtC,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,aAAa,QAAQ,0BAA0B;AACxD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,OAAM,MAAOC,QAAS,sBAAQJ,QAAQ,CAACK,IAAI,EAAE,CAACC,KAAK,CAACH,YAAY,EAAEF,eAAe,EAAEC,aAAa,CAAC","ignoreList":[]}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
|
-
import { ChannelSyncEvent, Discord,
|
|
2
|
+
import { ChannelSyncEvent, Discord, GroupModel, Team, TeamMember } from '../../index.js';
|
|
3
3
|
export class ChannelCreatedEvent extends /*#__PURE__*/Schema.TaggedClass()('channel_created', {
|
|
4
4
|
id: ChannelSyncEvent.ChannelSyncEventId,
|
|
5
5
|
team_id: Team.TeamId,
|
|
6
6
|
guild_id: Discord.Snowflake,
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
group_id: GroupModel.GroupId,
|
|
8
|
+
group_name: Schema.String
|
|
9
9
|
}) {}
|
|
10
10
|
export class ChannelDeletedEvent extends /*#__PURE__*/Schema.TaggedClass()('channel_deleted', {
|
|
11
11
|
id: ChannelSyncEvent.ChannelSyncEventId,
|
|
12
12
|
team_id: Team.TeamId,
|
|
13
13
|
guild_id: Discord.Snowflake,
|
|
14
|
-
|
|
14
|
+
group_id: GroupModel.GroupId
|
|
15
15
|
}) {}
|
|
16
16
|
export class ChannelMemberAddedEvent extends /*#__PURE__*/Schema.TaggedClass()('channel_member_added', {
|
|
17
17
|
id: ChannelSyncEvent.ChannelSyncEventId,
|
|
18
18
|
team_id: Team.TeamId,
|
|
19
19
|
guild_id: Discord.Snowflake,
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
group_id: GroupModel.GroupId,
|
|
21
|
+
group_name: Schema.String,
|
|
22
22
|
team_member_id: TeamMember.TeamMemberId,
|
|
23
23
|
discord_user_id: Discord.Snowflake
|
|
24
24
|
}) {}
|
|
@@ -26,7 +26,7 @@ export class ChannelMemberRemovedEvent extends /*#__PURE__*/Schema.TaggedClass()
|
|
|
26
26
|
id: ChannelSyncEvent.ChannelSyncEventId,
|
|
27
27
|
team_id: Team.TeamId,
|
|
28
28
|
guild_id: Discord.Snowflake,
|
|
29
|
-
|
|
29
|
+
group_id: GroupModel.GroupId,
|
|
30
30
|
team_member_id: TeamMember.TeamMemberId,
|
|
31
31
|
discord_user_id: Discord.Snowflake
|
|
32
32
|
}) {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelRpcEvents.js","names":["Schema","ChannelSyncEvent","Discord","
|
|
1
|
+
{"version":3,"file":"ChannelRpcEvents.js","names":["Schema","ChannelSyncEvent","Discord","GroupModel","Team","TeamMember","ChannelCreatedEvent","TaggedClass","id","ChannelSyncEventId","team_id","TeamId","guild_id","Snowflake","group_id","GroupId","group_name","String","ChannelDeletedEvent","ChannelMemberAddedEvent","team_member_id","TeamMemberId","discord_user_id","ChannelMemberRemovedEvent","UnprocessedChannelEvent","Union"],"sources":["../../../../src/rpc/channel/ChannelRpcEvents.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAC/B,SAASC,gBAAgB,EAAEC,OAAO,EAAEC,UAAU,EAAEC,IAAI,EAAEC,UAAU,QAAQ,gBAAa;AAErF,OAAM,MAAOC,mBAAoB,sBAAQN,MAAM,CAACO,WAAW,EAAuB,CAChF,iBAAiB,EACjB;EACEC,EAAE,EAAEP,gBAAgB,CAACQ,kBAAkB;EACvCC,OAAO,EAAEN,IAAI,CAACO,MAAM;EACpBC,QAAQ,EAAEV,OAAO,CAACW,SAAS;EAC3BC,QAAQ,EAAEX,UAAU,CAACY,OAAO;EAC5BC,UAAU,EAAEhB,MAAM,CAACiB;CACpB,CACF;AAED,OAAM,MAAOC,mBAAoB,sBAAQlB,MAAM,CAACO,WAAW,EAAuB,CAChF,iBAAiB,EACjB;EACEC,EAAE,EAAEP,gBAAgB,CAACQ,kBAAkB;EACvCC,OAAO,EAAEN,IAAI,CAACO,MAAM;EACpBC,QAAQ,EAAEV,OAAO,CAACW,SAAS;EAC3BC,QAAQ,EAAEX,UAAU,CAACY;CACtB,CACF;AAED,OAAM,MAAOI,uBAAwB,sBAAQnB,MAAM,CAACO,WAAW,EAA2B,CACxF,sBAAsB,EACtB;EACEC,EAAE,EAAEP,gBAAgB,CAACQ,kBAAkB;EACvCC,OAAO,EAAEN,IAAI,CAACO,MAAM;EACpBC,QAAQ,EAAEV,OAAO,CAACW,SAAS;EAC3BC,QAAQ,EAAEX,UAAU,CAACY,OAAO;EAC5BC,UAAU,EAAEhB,MAAM,CAACiB,MAAM;EACzBG,cAAc,EAAEf,UAAU,CAACgB,YAAY;EACvCC,eAAe,EAAEpB,OAAO,CAACW;CAC1B,CACF;AAED,OAAM,MAAOU,yBAA0B,sBAAQvB,MAAM,CAACO,WAAW,EAA6B,CAC5F,wBAAwB,EACxB;EACEC,EAAE,EAAEP,gBAAgB,CAACQ,kBAAkB;EACvCC,OAAO,EAAEN,IAAI,CAACO,MAAM;EACpBC,QAAQ,EAAEV,OAAO,CAACW,SAAS;EAC3BC,QAAQ,EAAEX,UAAU,CAACY,OAAO;EAC5BK,cAAc,EAAEf,UAAU,CAACgB,YAAY;EACvCC,eAAe,EAAEpB,OAAO,CAACW;CAC1B,CACF;AAED,OAAO,MAAMW,uBAAuB,gBAAGxB,MAAM,CAACyB,KAAK,CACjDnB,mBAAmB,EACnBY,mBAAmB,EACnBC,uBAAuB,EACvBI,yBAAyB,CAC1B","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Rpc, RpcGroup } from '@effect/rpc';
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
|
-
import { ChannelSyncEvent, Discord,
|
|
3
|
+
import { ChannelSyncEvent, Discord, GroupModel, Team } from '../../index.js';
|
|
4
4
|
import { UnprocessedChannelEvent } from './ChannelRpcEvents.js';
|
|
5
5
|
import { ChannelMapping } from './ChannelRpcModels.js';
|
|
6
6
|
export const ChannelRpcGroup = /*#__PURE__*/RpcGroup.make(Rpc.make('GetUnprocessedEvents', {
|
|
@@ -20,20 +20,20 @@ export const ChannelRpcGroup = /*#__PURE__*/RpcGroup.make(Rpc.make('GetUnprocess
|
|
|
20
20
|
}), Rpc.make('GetMapping', {
|
|
21
21
|
payload: {
|
|
22
22
|
team_id: Team.TeamId,
|
|
23
|
-
|
|
23
|
+
group_id: GroupModel.GroupId
|
|
24
24
|
},
|
|
25
25
|
success: Schema.OptionFromNullOr(ChannelMapping)
|
|
26
26
|
}), Rpc.make('UpsertMapping', {
|
|
27
27
|
payload: {
|
|
28
28
|
team_id: Team.TeamId,
|
|
29
|
-
|
|
29
|
+
group_id: GroupModel.GroupId,
|
|
30
30
|
discord_channel_id: Discord.Snowflake,
|
|
31
31
|
discord_role_id: Discord.Snowflake
|
|
32
32
|
}
|
|
33
33
|
}), Rpc.make('DeleteMapping', {
|
|
34
34
|
payload: {
|
|
35
35
|
team_id: Team.TeamId,
|
|
36
|
-
|
|
36
|
+
group_id: GroupModel.GroupId
|
|
37
37
|
}
|
|
38
38
|
})).prefix('Channel/');
|
|
39
39
|
//# sourceMappingURL=ChannelRpcGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelRpcGroup.js","names":["Rpc","RpcGroup","Schema","ChannelSyncEvent","Discord","
|
|
1
|
+
{"version":3,"file":"ChannelRpcGroup.js","names":["Rpc","RpcGroup","Schema","ChannelSyncEvent","Discord","GroupModel","Team","UnprocessedChannelEvent","ChannelMapping","ChannelRpcGroup","make","payload","limit","Number","success","Array","id","ChannelSyncEventId","error","String","team_id","TeamId","group_id","GroupId","OptionFromNullOr","discord_channel_id","Snowflake","discord_role_id","prefix"],"sources":["../../../../src/rpc/channel/ChannelRpcGroup.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAG,EAAEC,QAAQ,QAAQ,aAAa;AAC3C,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,gBAAgB,EAAEC,OAAO,EAAEC,UAAU,EAAEC,IAAI,QAAQ,gBAAa;AACzE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,cAAc,QAAQ,uBAAuB;AAEtD,OAAO,MAAMC,eAAe,gBAAGR,QAAQ,CAACS,IAAI,CAC1CV,GAAG,CAACU,IAAI,CAAC,sBAAsB,EAAE;EAC/BC,OAAO,EAAE;IAAEC,KAAK,EAAEV,MAAM,CAACW;EAAM,CAAE;EACjCC,OAAO,EAAEZ,MAAM,CAACa,KAAK,CAACR,uBAAuB;CAC9C,CAAC,EACFP,GAAG,CAACU,IAAI,CAAC,oBAAoB,EAAE;EAC7BC,OAAO,EAAE;IAAEK,EAAE,EAAEb,gBAAgB,CAACc;EAAkB;CACnD,CAAC,EACFjB,GAAG,CAACU,IAAI,CAAC,iBAAiB,EAAE;EAC1BC,OAAO,EAAE;IAAEK,EAAE,EAAEb,gBAAgB,CAACc,kBAAkB;IAAEC,KAAK,EAAEhB,MAAM,CAACiB;EAAM;CACzE,CAAC,EACFnB,GAAG,CAACU,IAAI,CAAC,YAAY,EAAE;EACrBC,OAAO,EAAE;IAAES,OAAO,EAAEd,IAAI,CAACe,MAAM;IAAEC,QAAQ,EAAEjB,UAAU,CAACkB;EAAO,CAAE;EAC/DT,OAAO,EAAEZ,MAAM,CAACsB,gBAAgB,CAAChB,cAAc;CAChD,CAAC,EACFR,GAAG,CAACU,IAAI,CAAC,eAAe,EAAE;EACxBC,OAAO,EAAE;IACPS,OAAO,EAAEd,IAAI,CAACe,MAAM;IACpBC,QAAQ,EAAEjB,UAAU,CAACkB,OAAO;IAC5BE,kBAAkB,EAAErB,OAAO,CAACsB,SAAS;IACrCC,eAAe,EAAEvB,OAAO,CAACsB;;CAE5B,CAAC,EACF1B,GAAG,CAACU,IAAI,CAAC,eAAe,EAAE;EACxBC,OAAO,EAAE;IAAES,OAAO,EAAEd,IAAI,CAACe,MAAM;IAAEC,QAAQ,EAAEjB,UAAU,CAACkB;EAAO;CAC9D,CAAC,CACH,CAACK,MAAM,CAAC,UAAU,CAAC","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
|
-
import { Discord, DiscordChannelMapping,
|
|
2
|
+
import { Discord, DiscordChannelMapping, GroupModel, Team } from '../../index.js';
|
|
3
3
|
export class ChannelMapping extends /*#__PURE__*/Schema.Class('ChannelMapping')({
|
|
4
4
|
id: DiscordChannelMapping.DiscordChannelMappingId,
|
|
5
5
|
team_id: Team.TeamId,
|
|
6
|
-
|
|
6
|
+
group_id: GroupModel.GroupId,
|
|
7
7
|
discord_channel_id: Discord.Snowflake,
|
|
8
8
|
discord_role_id: /*#__PURE__*/Schema.OptionFromNullOr(Discord.Snowflake)
|
|
9
9
|
}) {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelRpcModels.js","names":["Schema","Discord","DiscordChannelMapping","
|
|
1
|
+
{"version":3,"file":"ChannelRpcModels.js","names":["Schema","Discord","DiscordChannelMapping","GroupModel","Team","ChannelMapping","Class","id","DiscordChannelMappingId","team_id","TeamId","group_id","GroupId","discord_channel_id","Snowflake","discord_role_id","OptionFromNullOr"],"sources":["../../../../src/rpc/channel/ChannelRpcModels.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,EAAEC,qBAAqB,EAAEC,UAAU,EAAEC,IAAI,QAAQ,gBAAa;AAE9E,OAAM,MAAOC,cAAe,sBAAQL,MAAM,CAACM,KAAK,CAAiB,gBAAgB,CAAC,CAAC;EACjFC,EAAE,EAAEL,qBAAqB,CAACM,uBAAuB;EACjDC,OAAO,EAAEL,IAAI,CAACM,MAAM;EACpBC,QAAQ,EAAER,UAAU,CAACS,OAAO;EAC5BC,kBAAkB,EAAEZ,OAAO,CAACa,SAAS;EACrCC,eAAe,eAAEf,MAAM,CAACgB,gBAAgB,CAACf,OAAO,CAACa,SAAS;CAC3D,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Rpc, RpcGroup } from '@effect/rpc';
|
|
2
|
+
import { Schema } from 'effect';
|
|
3
|
+
import { Discord } from '../../index.js';
|
|
4
|
+
export const GuildRpcGroup = /*#__PURE__*/RpcGroup.make(Rpc.make('RegisterGuild', {
|
|
5
|
+
payload: {
|
|
6
|
+
guild_id: Discord.Snowflake,
|
|
7
|
+
guild_name: Schema.String
|
|
8
|
+
}
|
|
9
|
+
}), Rpc.make('UnregisterGuild', {
|
|
10
|
+
payload: {
|
|
11
|
+
guild_id: Discord.Snowflake
|
|
12
|
+
}
|
|
13
|
+
}), Rpc.make('IsGuildRegistered', {
|
|
14
|
+
payload: {
|
|
15
|
+
guild_id: Discord.Snowflake
|
|
16
|
+
},
|
|
17
|
+
success: Schema.Boolean
|
|
18
|
+
}), Rpc.make('SyncGuildChannels', {
|
|
19
|
+
payload: {
|
|
20
|
+
guild_id: Discord.Snowflake,
|
|
21
|
+
channels: Schema.Array(Schema.Struct({
|
|
22
|
+
channel_id: Discord.Snowflake,
|
|
23
|
+
name: Schema.String,
|
|
24
|
+
type: Schema.Number,
|
|
25
|
+
parent_id: Schema.NullOr(Discord.Snowflake)
|
|
26
|
+
}))
|
|
27
|
+
}
|
|
28
|
+
})).prefix('Guild/');
|
|
29
|
+
//# sourceMappingURL=GuildRpcGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GuildRpcGroup.js","names":["Rpc","RpcGroup","Schema","Discord","GuildRpcGroup","make","payload","guild_id","Snowflake","guild_name","String","success","Boolean","channels","Array","Struct","channel_id","name","type","Number","parent_id","NullOr","prefix"],"sources":["../../../../src/rpc/guild/GuildRpcGroup.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAG,EAAEC,QAAQ,QAAQ,aAAa;AAC3C,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,OAAO,QAAQ,gBAAa;AAErC,OAAO,MAAMC,aAAa,gBAAGH,QAAQ,CAACI,IAAI,CACxCL,GAAG,CAACK,IAAI,CAAC,eAAe,EAAE;EACxBC,OAAO,EAAE;IAAEC,QAAQ,EAAEJ,OAAO,CAACK,SAAS;IAAEC,UAAU,EAAEP,MAAM,CAACQ;EAAM;CAClE,CAAC,EACFV,GAAG,CAACK,IAAI,CAAC,iBAAiB,EAAE;EAC1BC,OAAO,EAAE;IAAEC,QAAQ,EAAEJ,OAAO,CAACK;EAAS;CACvC,CAAC,EACFR,GAAG,CAACK,IAAI,CAAC,mBAAmB,EAAE;EAC5BC,OAAO,EAAE;IAAEC,QAAQ,EAAEJ,OAAO,CAACK;EAAS,CAAE;EACxCG,OAAO,EAAET,MAAM,CAACU;CACjB,CAAC,EACFZ,GAAG,CAACK,IAAI,CAAC,mBAAmB,EAAE;EAC5BC,OAAO,EAAE;IACPC,QAAQ,EAAEJ,OAAO,CAACK,SAAS;IAC3BK,QAAQ,EAAEX,MAAM,CAACY,KAAK,CACpBZ,MAAM,CAACa,MAAM,CAAC;MACZC,UAAU,EAAEb,OAAO,CAACK,SAAS;MAC7BS,IAAI,EAAEf,MAAM,CAACQ,MAAM;MACnBQ,IAAI,EAAEhB,MAAM,CAACiB,MAAM;MACnBC,SAAS,EAAElB,MAAM,CAACmB,MAAM,CAAClB,OAAO,CAACK,SAAS;KAC3C,CAAC;;CAGP,CAAC,CACH,CAACc,MAAM,CAAC,QAAQ,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -2,31 +2,31 @@ import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema } from '@effect/platform';
|
|
|
2
2
|
import { Schema } from 'effect';
|
|
3
3
|
import { AuthMiddleware } from '~/api/Auth.js';
|
|
4
4
|
import { AgeThresholdRuleId } from '~/models/AgeThresholdRule.js';
|
|
5
|
-
import {
|
|
5
|
+
import { GroupId } from '~/models/GroupModel.js';
|
|
6
6
|
import { TeamId } from '~/models/Team.js';
|
|
7
7
|
import { TeamMemberId } from '~/models/TeamMember.js';
|
|
8
8
|
|
|
9
9
|
export class AgeThresholdInfo extends Schema.Class<AgeThresholdInfo>('AgeThresholdInfo')({
|
|
10
10
|
ruleId: AgeThresholdRuleId,
|
|
11
11
|
teamId: TeamId,
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
groupId: GroupId,
|
|
13
|
+
groupName: Schema.String,
|
|
14
14
|
minAge: Schema.OptionFromNullOr(Schema.Number),
|
|
15
15
|
maxAge: Schema.OptionFromNullOr(Schema.Number),
|
|
16
16
|
}) {}
|
|
17
17
|
|
|
18
|
-
export class
|
|
18
|
+
export class AgeGroupChange extends Schema.Class<AgeGroupChange>('AgeGroupChange')({
|
|
19
19
|
memberId: TeamMemberId,
|
|
20
20
|
memberName: Schema.String,
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
action: Schema.Literal('
|
|
21
|
+
groupId: GroupId,
|
|
22
|
+
groupName: Schema.String,
|
|
23
|
+
action: Schema.Literal('added', 'removed'),
|
|
24
24
|
}) {}
|
|
25
25
|
|
|
26
26
|
export class CreateAgeThresholdRequest extends Schema.Class<CreateAgeThresholdRequest>(
|
|
27
27
|
'CreateAgeThresholdRequest',
|
|
28
28
|
)({
|
|
29
|
-
|
|
29
|
+
groupId: GroupId,
|
|
30
30
|
minAge: Schema.OptionFromNullOr(Schema.Number),
|
|
31
31
|
maxAge: Schema.OptionFromNullOr(Schema.Number),
|
|
32
32
|
}) {}
|
|
@@ -50,8 +50,8 @@ export class RuleNotFound extends Schema.TaggedError<RuleNotFound>()(
|
|
|
50
50
|
HttpApiSchema.annotations({ status: 404 }),
|
|
51
51
|
) {}
|
|
52
52
|
|
|
53
|
-
export class
|
|
54
|
-
'
|
|
53
|
+
export class GroupNotFound extends Schema.TaggedError<GroupNotFound>()(
|
|
54
|
+
'AgeThresholdGroupNotFound',
|
|
55
55
|
{},
|
|
56
56
|
HttpApiSchema.annotations({ status: 404 }),
|
|
57
57
|
) {}
|
|
@@ -68,7 +68,7 @@ export class AgeThresholdApiGroup extends HttpApiGroup.make('ageThreshold')
|
|
|
68
68
|
HttpApiEndpoint.post('createAgeThreshold', '/teams/:teamId/age-thresholds')
|
|
69
69
|
.addSuccess(AgeThresholdInfo, { status: 201 })
|
|
70
70
|
.addError(Forbidden, { status: 403 })
|
|
71
|
-
.addError(
|
|
71
|
+
.addError(GroupNotFound, { status: 404 })
|
|
72
72
|
.setPath(Schema.Struct({ teamId: TeamId }))
|
|
73
73
|
.setPayload(CreateAgeThresholdRequest)
|
|
74
74
|
.middleware(AuthMiddleware),
|
|
@@ -92,7 +92,7 @@ export class AgeThresholdApiGroup extends HttpApiGroup.make('ageThreshold')
|
|
|
92
92
|
)
|
|
93
93
|
.add(
|
|
94
94
|
HttpApiEndpoint.post('evaluateAgeThresholds', '/teams/:teamId/age-thresholds/evaluate')
|
|
95
|
-
.addSuccess(Schema.Array(
|
|
95
|
+
.addSuccess(Schema.Array(AgeGroupChange))
|
|
96
96
|
.addError(Forbidden, { status: 403 })
|
|
97
97
|
.setPath(Schema.Struct({ teamId: TeamId }))
|
|
98
98
|
.middleware(AuthMiddleware),
|
package/src/api/Auth.ts
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
HttpApiSecurity,
|
|
7
7
|
} from '@effect/platform';
|
|
8
8
|
import { Context, Schema } from 'effect';
|
|
9
|
+
import { Snowflake } from '~/models/Discord.js';
|
|
9
10
|
import { Permission } from '~/models/Role.js';
|
|
10
11
|
import { TeamId } from '~/models/Team.js';
|
|
11
12
|
import { Gender, Locale, UserId } from '~/models/User.js';
|
|
@@ -39,6 +40,15 @@ export class UpdateLocaleRequest extends Schema.Class<UpdateLocaleRequest>('Upda
|
|
|
39
40
|
|
|
40
41
|
export class CreateTeamRequest extends Schema.Class<CreateTeamRequest>('CreateTeamRequest')({
|
|
41
42
|
name: Schema.String.pipe(Schema.minLength(1), Schema.maxLength(100)),
|
|
43
|
+
guildId: Snowflake,
|
|
44
|
+
}) {}
|
|
45
|
+
|
|
46
|
+
export class DiscordGuild extends Schema.Class<DiscordGuild>('DiscordGuild')({
|
|
47
|
+
id: Snowflake,
|
|
48
|
+
name: Schema.String,
|
|
49
|
+
icon: Schema.NullOr(Schema.String),
|
|
50
|
+
owner: Schema.Boolean,
|
|
51
|
+
botPresent: Schema.Boolean,
|
|
42
52
|
}) {}
|
|
43
53
|
|
|
44
54
|
export class CompleteProfileRequest extends Schema.Class<CompleteProfileRequest>(
|
|
@@ -135,6 +145,12 @@ export class AuthApiGroup extends HttpApiGroup.make('auth')
|
|
|
135
145
|
.addError(Unauthorized, { status: 401 })
|
|
136
146
|
.middleware(AuthMiddleware),
|
|
137
147
|
)
|
|
148
|
+
.add(
|
|
149
|
+
HttpApiEndpoint.get('myGuilds', '/me/guilds')
|
|
150
|
+
.addSuccess(Schema.Array(DiscordGuild))
|
|
151
|
+
.addError(Unauthorized, { status: 401 })
|
|
152
|
+
.middleware(AuthMiddleware),
|
|
153
|
+
)
|
|
138
154
|
.add(
|
|
139
155
|
HttpApiEndpoint.post('createTeam', '/me/teams')
|
|
140
156
|
.addSuccess(UserTeam)
|