@notidotbot/noti-api-client 1.4.12 → 1.4.14

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.
@@ -1,107 +1,107 @@
1
1
  model Client {
2
- dbId String @id @default(uuid())
2
+ dbId String @id @default(uuid())
3
3
 
4
- clientId String @unique
4
+ clientId String @unique
5
5
 
6
- totalGiveaways Int? @default(0)
7
- totalNotifications Int? @default(0)
8
- statChannels Int? @default(0)
9
- statusRoles Int? @default(0)
10
- totalClips Int? @default(0)
11
- totalVods Int? @default(0)
6
+ totalGiveaways Int? @default(0)
7
+ totalNotifications Int? @default(0)
8
+ statChannels Int? @default(0)
9
+ statusRoles Int? @default(0)
10
+ totalClips Int? @default(0)
11
+ totalVods Int? @default(0)
12
12
 
13
- recentWhitelist String[]
14
- dashWhitelist String[]
15
- staff String[]
13
+ recentWhitelist String[]
14
+ dashWhitelist String[]
15
+ staff String[]
16
16
 
17
- faq ClientFAQ[]
18
- blogs ClientBlog[]
19
- changelogs ClientChangelog[]
17
+ faq ClientFAQ[]
18
+ blogs ClientBlog[]
19
+ changelogs ClientChangelog[]
20
20
 
21
- logRawDataFor ClientLogRawData[]
21
+ logRawDataFor ClientLogRawData[]
22
22
 
23
- twitchCredentials ClientTwitch?
23
+ twitchCredentials ClientTwitch?
24
24
  }
25
25
 
26
26
  model ClientTwitch {
27
- dbId String @id @default(uuid())
27
+ dbId String @id @default(uuid())
28
28
 
29
- clientId String @unique
30
- client Client @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
29
+ clientId String @unique
30
+ client Client @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
31
31
 
32
- twitchGqlClientId String
33
- twitchGqlAuthToken String
34
- twitchGqlClientIntegrity String?
35
- twitchGqlClientSessionId String?
36
- twitchGqlClientVersion String?
32
+ twitchGqlClientId String
33
+ twitchGqlAuthToken String
34
+ twitchGqlClientIntegrity String?
35
+ twitchGqlClientSessionId String?
36
+ twitchGqlClientVersion String?
37
37
 
38
- updatedAt DateTime @default(now()) @updatedAt
39
- createdAt DateTime @default(now())
38
+ updatedAt DateTime @default(now()) @updatedAt
39
+ createdAt DateTime @default(now())
40
40
  }
41
41
 
42
42
  model ClientFAQ {
43
- dbId String @id @default(uuid())
43
+ dbId String @id @default(uuid())
44
44
 
45
- identifier String @unique
46
- question String?
47
- answer String?
45
+ identifier String @unique
46
+ question String?
47
+ answer String?
48
48
 
49
- clientId String
50
- client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
49
+ clientId String
50
+ client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
51
51
  }
52
52
 
53
53
  model ClientChangelog {
54
- dbId String @id @default(uuid())
54
+ dbId String @id @default(uuid())
55
55
 
56
- identifier String @unique
56
+ identifier String @unique
57
57
 
58
- date DateTime
59
- changes String[]
60
- title String
58
+ date DateTime
59
+ changes String[]
60
+ title String
61
61
 
62
- isPublic Boolean @default(false)
63
- thumbnail String?
62
+ isPublic Boolean @default(false)
63
+ thumbnail String?
64
64
 
65
- clientId String
66
- client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
65
+ clientId String
66
+ client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
67
67
  }
68
68
 
69
69
  model ClientBlog {
70
- dbId String @id @default(uuid())
70
+ dbId String @id @default(uuid())
71
71
 
72
- identifier String @unique
72
+ identifier String @unique
73
73
 
74
- title String
75
- isPinned Boolean @default(false)
74
+ title String
75
+ isPinned Boolean @default(false)
76
76
 
77
- views Int? @default(0)
78
- reactions String[]
79
- reactionsCount Int? @default(0)
77
+ views Int? @default(0)
78
+ reactions String[]
79
+ reactionsCount Int? @default(0)
80
80
 
81
- tags String[]
82
- content String
83
- thumbnail String?
81
+ tags String[]
82
+ content String
83
+ thumbnail String?
84
84
 
85
- authorName String
86
- authorIcon String
85
+ authorName String
86
+ authorIcon String
87
87
 
88
- createdAt DateTime
89
- lastEdited DateTime
88
+ createdAt DateTime
89
+ lastEdited DateTime
90
90
 
91
- isPublic Boolean @default(false)
91
+ isPublic Boolean @default(false)
92
92
 
93
- clientId String
94
- client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
93
+ clientId String
94
+ client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
95
95
  }
96
96
 
97
97
  model ClientLogRawData {
98
- dbId String @id @default(uuid())
98
+ dbId String @id @default(uuid())
99
99
 
100
- username String
101
- platform PlatformEnum
100
+ username String
101
+ platform PlatformEnum
102
102
 
103
- clientId String
104
- client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
103
+ clientId String
104
+ client Client? @relation(fields: [clientId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
105
105
 
106
- @@unique([username, platform, clientId])
106
+ @@unique([username, platform, clientId])
107
107
  }
@@ -1,176 +1,176 @@
1
1
  model Drop {
2
- dbId String @id @default(uuid())
3
-
4
- // Platform-specific drop ID
5
- dropId String @unique
6
- platform PlatformEnum
7
-
8
- // Drop information
9
- name String
10
- description String? @db.VarChar(2000)
11
- imageUrl String?
12
- url String?
13
-
14
- // Timing
15
- startsAt DateTime
16
- endsAt DateTime
17
- status String // upcoming, active, ended
18
-
19
- // Organization/Creator info
20
- organizationId String?
21
- organizationName String?
22
- organizationUrl String?
23
-
24
- // Game/Category relation
25
- gameId String?
26
- game DropGame? @relation(fields: [gameId], references: [dbId], onUpdate: Cascade, onDelete: SetNull)
27
-
28
- // Platform-specific data stored as JSON for flexibility
29
- // Kick: channels array, rewards array, rule, etc.
30
- // Twitch: will have different structure
31
- platformData Json?
32
-
33
- createdAt DateTime @default(now())
34
- updatedAt DateTime @updatedAt
35
-
36
- // Relations
37
- sentDrops SentDrop[]
38
-
39
- @@unique([dropId, platform])
40
- @@index([platform, status])
41
- @@index([gameId])
42
- @@index([startsAt])
43
- @@index([endsAt])
2
+ dbId String @id @default(uuid())
3
+
4
+ // Platform-specific drop ID
5
+ dropId String @unique
6
+ platform PlatformEnum
7
+
8
+ // Drop information
9
+ name String
10
+ description String? @db.VarChar(2000)
11
+ imageUrl String?
12
+ url String?
13
+
14
+ // Timing
15
+ startsAt DateTime
16
+ endsAt DateTime
17
+ status String // upcoming, active, ended
18
+
19
+ // Organization/Creator info
20
+ organizationId String?
21
+ organizationName String?
22
+ organizationUrl String?
23
+
24
+ // Game/Category relation
25
+ gameId String?
26
+ game DropGame? @relation(fields: [gameId], references: [dbId], onUpdate: Cascade, onDelete: SetNull)
27
+
28
+ // Platform-specific data stored as JSON for flexibility
29
+ // Kick: channels array, rewards array, rule, etc.
30
+ // Twitch: will have different structure
31
+ platformData Json?
32
+
33
+ createdAt DateTime @default(now())
34
+ updatedAt DateTime @updatedAt
35
+
36
+ // Relations
37
+ sentDrops SentDrop[]
38
+
39
+ @@unique([dropId, platform])
40
+ @@index([platform, status])
41
+ @@index([gameId])
42
+ @@index([startsAt])
43
+ @@index([endsAt])
44
44
  }
45
45
 
46
46
  model DropGame {
47
- dbId String @id @default(uuid())
47
+ dbId String @id @default(uuid())
48
48
 
49
- // Game/Category information - NOT unique alone because same game can exist on multiple platforms
50
- gameId String // Platform-specific game ID (e.g., "13" for Rust on Kick, "263490" for Rust on Twitch)
51
- platform PlatformEnum
52
- name String
53
- slug String?
54
- imageUrl String?
55
- description String? @db.VarChar(2000)
49
+ // Game/Category information - NOT unique alone because same game can exist on multiple platforms
50
+ gameId String // Platform-specific game ID (e.g., "13" for Rust on Kick, "263490" for Rust on Twitch)
51
+ platform PlatformEnum
52
+ name String
53
+ slug String?
54
+ imageUrl String?
55
+ description String? @db.VarChar(2000)
56
56
 
57
- ignored Boolean @default(false) // If true, drops from this game will be ignored globally
57
+ ignored Boolean @default(false) // If true, drops from this game will be ignored globally
58
58
 
59
- // Platform-specific data
60
- platformData Json?
59
+ // Platform-specific data
60
+ platformData Json?
61
61
 
62
- createdAt DateTime @default(now())
63
- updatedAt DateTime @updatedAt
62
+ createdAt DateTime @default(now())
63
+ updatedAt DateTime @updatedAt
64
64
 
65
- // Relations
66
- drops Drop[]
67
- guildDropsGames GuildDropsGame[]
65
+ // Relations
66
+ drops Drop[]
67
+ guildDropsGames GuildDropsGame[]
68
68
 
69
- @@unique([gameId, platform]) // Same game ID can exist on different platforms
70
- @@index([platform])
71
- @@index([name]) // For searching games by name
69
+ @@unique([gameId, platform]) // Same game ID can exist on different platforms
70
+ @@index([platform])
71
+ @@index([name]) // For searching games by name
72
72
  }
73
73
 
74
74
  model GuildDrops {
75
- dbId String @id @default(uuid())
75
+ dbId String @id @default(uuid())
76
76
 
77
- guildId String @unique
77
+ guildId String @unique
78
78
 
79
- // Platform-specific enables - user can enable one or both
80
- kickEnabled Boolean @default(false)
81
- twitchEnabled Boolean @default(false)
79
+ // Platform-specific enables - user can enable one or both
80
+ kickEnabled Boolean @default(false)
81
+ twitchEnabled Boolean @default(false)
82
82
 
83
- // Basic settings
84
- liveNotifications Boolean @default(false) // Whether to send notifications when drops go live
83
+ // Basic settings
84
+ liveNotifications Boolean @default(false) // Whether to send notifications when drops go live
85
85
 
86
- // Discord notification settings
87
- kickChannelId String?
88
- kickRoleId String?
89
- twitchChannelId String?
90
- twitchRoleId String?
91
- // Platform-specific live notification overrides
92
- kickLiveNotificationChannelId String?
93
- kickLiveNotificationRoleId String?
94
- twitchLiveNotificationChannelId String?
95
- twitchLiveNotificationRoleId String?
86
+ // Discord notification settings
87
+ kickChannelId String?
88
+ kickRoleId String?
89
+ twitchChannelId String?
90
+ twitchRoleId String?
91
+ // Platform-specific live notification overrides
92
+ kickLiveNotificationChannelId String?
93
+ kickLiveNotificationRoleId String?
94
+ twitchLiveNotificationChannelId String?
95
+ twitchLiveNotificationRoleId String?
96
96
 
97
- // Webhook configuration (optional)
98
- webhook GuildDropsWebhook?
97
+ // Webhook configuration (optional)
98
+ webhook GuildDropsWebhook?
99
99
 
100
- // Game filters - which games to notify about
101
- games GuildDropsGame[]
100
+ // Game filters - which games to notify about
101
+ games GuildDropsGame[]
102
102
 
103
- createdAt DateTime @default(now())
104
- updatedAt DateTime @updatedAt
103
+ createdAt DateTime @default(now())
104
+ updatedAt DateTime @updatedAt
105
105
 
106
- @@index([kickEnabled])
107
- @@index([twitchEnabled])
106
+ @@index([kickEnabled])
107
+ @@index([twitchEnabled])
108
108
  }
109
109
 
110
110
  model GuildDropsWebhook {
111
- dbId String @id @default(uuid())
111
+ dbId String @id @default(uuid())
112
112
 
113
- avatarUrl String?
114
- username String?
113
+ avatarUrl String?
114
+ username String?
115
115
 
116
- guildDropsId String @unique
117
- guildDrops GuildDrops? @relation(fields: [guildDropsId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
116
+ guildDropsId String @unique
117
+ guildDrops GuildDrops? @relation(fields: [guildDropsId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
118
118
  }
119
119
 
120
120
  model GuildDropsGame {
121
- dbId String @id @default(uuid())
121
+ dbId String @id @default(uuid())
122
122
 
123
- gameId String
124
- game DropGame? @relation(fields: [gameId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
123
+ gameId String
124
+ game DropGame? @relation(fields: [gameId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
125
125
 
126
- guildDropsId String
127
- guildDrops GuildDrops? @relation(fields: [guildDropsId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
126
+ guildDropsId String
127
+ guildDrops GuildDrops? @relation(fields: [guildDropsId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
128
128
 
129
- channelId String?
130
- roleId String?
131
- liveNotifications Boolean? // If null, uses GuildDrops.liveNotifications
129
+ channelId String?
130
+ roleId String?
131
+ liveNotifications Boolean? // If null, uses GuildDrops.liveNotifications
132
132
 
133
- // Per-game webhook configuration (overrides GuildDrops webhook)
134
- webhook GuildDropsGameWebhook?
133
+ // Per-game webhook configuration (overrides GuildDrops webhook)
134
+ webhook GuildDropsGameWebhook?
135
135
 
136
- createdAt DateTime @default(now())
136
+ createdAt DateTime @default(now())
137
137
 
138
- @@unique([guildDropsId, gameId])
139
- @@index([gameId])
138
+ @@unique([guildDropsId, gameId])
139
+ @@index([gameId])
140
140
  }
141
141
 
142
142
  model GuildDropsGameWebhook {
143
- dbId String @id @default(uuid())
143
+ dbId String @id @default(uuid())
144
144
 
145
- avatarUrl String?
146
- username String?
145
+ avatarUrl String?
146
+ username String?
147
147
 
148
- guildDropsGameId String @unique
149
- guildDropsGame GuildDropsGame? @relation(fields: [guildDropsGameId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
148
+ guildDropsGameId String @unique
149
+ guildDropsGame GuildDropsGame? @relation(fields: [guildDropsGameId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
150
150
  }
151
151
 
152
152
  model SentDrop {
153
- dbId String @id @default(uuid())
153
+ dbId String @id @default(uuid())
154
154
 
155
- // References
156
- dropId String
157
- drop Drop? @relation(fields: [dropId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
155
+ // References
156
+ dropId String
157
+ drop Drop? @relation(fields: [dropId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
158
158
 
159
- guildId String
160
- platform PlatformEnum
159
+ guildId String
160
+ platform PlatformEnum
161
161
 
162
- // Discord message info for potential updates/deletion
163
- channelId String?
164
- messageId String?
162
+ // Discord message info for potential updates/deletion
163
+ channelId String?
164
+ messageId String?
165
165
 
166
- // When was it sent
167
- sentAt DateTime @default(now())
166
+ // When was it sent
167
+ sentAt DateTime @default(now())
168
168
 
169
- // This will be deleted after the drop ends
170
- // The drop itself remains for SEO purposes
169
+ // This will be deleted after the drop ends
170
+ // The drop itself remains for SEO purposes
171
171
 
172
- @@unique([dropId, guildId])
173
- @@index([platform])
174
- @@index([sentAt])
175
- @@index([guildId])
172
+ @@unique([dropId, guildId])
173
+ @@index([platform])
174
+ @@index([sentAt])
175
+ @@index([guildId])
176
176
  }
@@ -1,82 +1,82 @@
1
1
  model GuildGiveaway {
2
- dbId String @id @default(uuid())
2
+ dbId String @id @default(uuid())
3
3
 
4
- giveawayId String @unique
4
+ giveawayId String @unique
5
5
 
6
- guildId String
7
- channelId String
8
- messageId String?
6
+ guildId String
7
+ channelId String
8
+ messageId String?
9
9
 
10
- name String
11
- winnerIds String[]
10
+ name String
11
+ winnerIds String[]
12
12
 
13
- mentionRole String?
14
- emojiUnicodeOrId String?
15
- buttonLabel String?
13
+ mentionRole String?
14
+ emojiUnicodeOrId String?
15
+ buttonLabel String?
16
16
 
17
- liveEntryCountUpdatedAt DateTime?
18
- currentEntries GuildGiveawayEntry[]
17
+ liveEntryCountUpdatedAt DateTime?
18
+ currentEntries GuildGiveawayEntry[]
19
19
 
20
- startedAt DateTime?
21
- durationMinutes Int
22
- endedAt DateTime?
20
+ startedAt DateTime?
21
+ durationMinutes Int
22
+ endedAt DateTime?
23
23
 
24
- hostId String?
24
+ hostId String?
25
25
 
26
- maxEntries Int?
27
- winnerCount Int
28
- entryFilter GuildGiveawayFilter?
26
+ maxEntries Int?
27
+ winnerCount Int
28
+ entryFilter GuildGiveawayFilter?
29
29
 
30
- disableDoubleVoteEntry Boolean?
30
+ disableDoubleVoteEntry Boolean?
31
31
 
32
- roleBonusType RoleBonusEnum?
33
- roleBonuses GuildGiveawayRoleBonus[]
34
- requirements GuildGiveawayRequirements?
35
- bypassRequirementsRoles String[]
32
+ roleBonusType RoleBonusEnum?
33
+ roleBonuses GuildGiveawayRoleBonus[]
34
+ requirements GuildGiveawayRequirements?
35
+ bypassRequirementsRoles String[]
36
36
  }
37
37
 
38
38
  model GuildGiveawayEntry {
39
- dbId String @id @default(uuid())
39
+ dbId String @id @default(uuid())
40
40
 
41
- userId String
42
- username String
43
- entries Int
41
+ userId String
42
+ username String
43
+ entries Int
44
44
 
45
- guildGiveawayId String
46
- guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
45
+ guildGiveawayId String
46
+ guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
47
47
  }
48
48
 
49
49
  model GuildGiveawayFilter {
50
- dbId String @id @default(uuid())
50
+ dbId String @id @default(uuid())
51
51
 
52
- roleMode FilterEnum
53
- roles String[]
52
+ roleMode FilterEnum
53
+ roles String[]
54
54
 
55
- guildGiveawayId String @unique
56
- guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
55
+ guildGiveawayId String @unique
56
+ guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
57
57
  }
58
58
 
59
59
  model GuildGiveawayRoleBonus {
60
- dbId String @id @default(uuid())
60
+ dbId String @id @default(uuid())
61
61
 
62
- roles String[]
63
- additionalEntries Int
62
+ roles String[]
63
+ additionalEntries Int
64
64
 
65
- guildGiveawayId String
66
- guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
65
+ guildGiveawayId String
66
+ guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
67
67
 
68
- @@unique([guildGiveawayId, additionalEntries])
68
+ @@unique([guildGiveawayId, additionalEntries])
69
69
  }
70
70
 
71
71
  model GuildGiveawayRequirements {
72
- dbId String @id @default(uuid())
72
+ dbId String @id @default(uuid())
73
73
 
74
- joinedServerBefore DateTime?
75
- accountCreatedBefore DateTime?
76
- boostingServer Boolean?
77
- messageCount Int?
78
- roles String[]
74
+ joinedServerBefore DateTime?
75
+ accountCreatedBefore DateTime?
76
+ boostingServer Boolean?
77
+ messageCount Int?
78
+ roles String[]
79
79
 
80
- guildGiveawayId String @unique
81
- guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
80
+ guildGiveawayId String @unique
81
+ guildGiveaway GuildGiveaway? @relation(fields: [guildGiveawayId], references: [dbId], onUpdate: Cascade, onDelete: Cascade)
82
82
  }