diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 4684dec8..48c5d0a0 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -1,10 +1,9 @@
---
name: Bug report
about: Create a report to help us improve
-title: ''
-labels: ''
-assignees: ''
-
+title: ""
+labels: ""
+assignees: ""
---
**Describe the bug**
@@ -12,6 +11,7 @@ A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
+
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
@@ -24,18 +24,20 @@ A clear and concise description of what you expected to happen.
If applicable, add console logs to help give more information about your problem.
**System Information (please complete the following information):**
- - OS: [e.g. Debian Linux, Arch Linux etc.]
- - Version (If not applicable skip): [e.g Ubuntu 22.04 LTS/Windows Server 2022]
- - Node Version: [e.g Node v18.7.0]
- - Python 3 Version: [e.g Python 3.10.6]
+
+- OS: [e.g. Debian Linux, Arch Linux etc.]
+- Version (If not applicable skip): [e.g Ubuntu 22.04 LTS/Windows Server 2022]
+- Node Version: [e.g Node v18.7.0]
+- Python 3 Version: [e.g Python 3.10.6]
**Env and Software info**
- - Release: [e.g. 0.1.0]
- - Branch (if release is not applicable): [e.g Staging]
- - Commit Hash (if release is not applicable): [e.g 401eda069a3ced17f1c43294d19765663cb8dcb7]
- - Database: [e.g Postgres 14]
- - Reverse Proxy: [e.g ngnix]
- - Thread Count: [e.g 1]
+
+- Release: [e.g. 0.1.0]
+- Branch (if release is not applicable): [e.g Staging]
+- Commit Hash (if release is not applicable): [e.g 401eda069a3ced17f1c43294d19765663cb8dcb7]
+- Database: [e.g Postgres 14]
+- Reverse Proxy: [e.g ngnix]
+- Thread Count: [e.g 1]
**Additional context**
Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index bd1f64b6..e553e964 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -1,10 +1,9 @@
---
name: Feature request
about: Suggest an feature for Fosscord Server
-title: ''
-labels: ''
-assignees: ''
-
+title: ""
+labels: ""
+assignees: ""
---
**Is your feature request related to a problem? Please describe.**
diff --git a/assets/index.html b/assets/index.html
index f73fe99f..4513d0d2 100644
--- a/assets/index.html
+++ b/assets/index.html
@@ -72,7 +72,7 @@
localStorage.setItem("UserSettingsStore", JSON.stringify(settings));
}
</script>
-
+
<script src="/assets/checkLocale.js"></script>
<script src="/assets/2f2e0c25e45eb2f5a6f1.js"></script>
<script src="/assets/006e72c08a4c69cb66fc.js"></script>
diff --git a/assets/schemas.json b/assets/schemas.json
index f3d96959..9ed4b27e 100644
--- a/assets/schemas.json
+++ b/assets/schemas.json
@@ -1,1458 +1,1258 @@
{
- "ActivitySchema": {
- "type": "object",
- "properties": {
- "afk": {
- "type": "boolean"
- },
- "status": {},
- "activities": {
- "type": "array",
- "items": {}
- },
- "since": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "afk",
- "status"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "BackupCodesChallengeSchema": {
- "type": "object",
- "properties": {
- "password": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "password"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "BanCreateSchema": {
- "type": "object",
- "properties": {
- "delete_message_days": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "BanModeratorSchema": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "user_id": {
- "type": "string"
- },
- "guild_id": {
- "type": "string"
- },
- "executor_id": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "executor_id",
- "guild_id",
- "id",
- "user_id"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "BanRegistrySchema": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "user_id": {
- "type": "string"
- },
- "guild_id": {
- "type": "string"
- },
- "executor_id": {
- "type": "string"
- },
- "ip": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "executor_id",
- "guild_id",
- "id",
- "user_id"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "BulkDeleteSchema": {
- "type": "object",
- "properties": {
- "messages": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "additionalProperties": false,
- "required": [
- "messages"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "ChannelPermissionOverwriteSchema": {
- "type": "object",
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "ChannelReorderSchema": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "position": {
- "type": "integer"
- },
- "lock_permissions": {
- "type": "boolean"
- },
- "parent_id": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "id"
- ]
- },
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "CodesVerificationSchema": {
- "type": "object",
- "properties": {
- "key": {
- "type": "string"
- },
- "nonce": {
- "type": "string"
- },
- "regenerate": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "key",
- "nonce"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "DmChannelCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "recipients": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "additionalProperties": false,
- "required": [
- "recipients"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "EmojiCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "image": {
- "type": "string"
- },
- "require_colons": {
- "type": [
- "null",
- "boolean"
- ]
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "additionalProperties": false,
- "required": [
- "image"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "EmojiModifySchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "GuildCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "maxLength": 100,
- "type": "string"
- },
- "region": {
- "type": "string"
- },
- "icon": {
- "type": [
- "null",
- "string"
- ]
- },
- "channels": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/ChannelModifySchema"
- }
- },
- "guild_template_code": {
- "type": "string"
- },
- "system_channel_id": {
- "type": "string"
- },
- "rules_channel_id": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "name"
- ],
- "definitions": {
- "ChannelModifySchema": {
- "type": "object",
- "properties": {
- "name": {
- "maxLength": 100,
- "type": "string"
- },
- "type": {
- "enum": [
- 0,
- 1,
- 10,
- 11,
- 12,
- 13,
- 14,
- 15,
- 2,
- 255,
- 3,
- 33,
- 34,
- 35,
- 4,
- 5,
- 6,
- 64,
- 7,
- 8,
- 9
- ],
- "type": "number"
- },
- "topic": {
- "type": "string"
- },
- "icon": {
- "type": [
- "null",
- "string"
- ]
- },
- "bitrate": {
- "type": "integer"
- },
- "user_limit": {
- "type": "integer"
- },
- "rate_limit_per_user": {
- "type": "integer"
- },
- "position": {
- "type": "integer"
- },
- "permission_overwrites": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "type": {
- "$ref": "#/definitions/ChannelPermissionOverwriteType"
- },
- "allow": {
- "type": "string"
- },
- "deny": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "allow",
- "deny",
- "id",
- "type"
- ]
- }
- },
- "parent_id": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "nsfw": {
- "type": "boolean"
- },
- "rtc_region": {
- "type": "string"
- },
- "default_auto_archive_duration": {
- "type": "integer"
- },
- "flags": {
- "type": "integer"
- },
- "default_thread_rate_limit_per_user": {
- "type": "integer"
- }
- },
- "additionalProperties": false
- },
- "ChannelPermissionOverwriteType": {
- "enum": [
- 0,
- 1,
- 2
- ],
- "type": "number"
- }
- },
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "GuildTemplateCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "avatar": {
- "type": [
- "null",
- "string"
- ]
- }
- },
- "additionalProperties": false,
- "required": [
- "name"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "GuildUpdateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "banner": {
- "type": [
- "null",
- "string"
- ]
- },
- "splash": {
- "type": [
- "null",
- "string"
- ]
- },
- "description": {
- "type": "string"
- },
- "features": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "verification_level": {
- "type": "integer"
- },
- "default_message_notifications": {
- "type": "integer"
- },
- "system_channel_flags": {
- "type": "integer"
- },
- "explicit_content_filter": {
- "type": "integer"
- },
- "public_updates_channel_id": {
- "type": "string"
- },
- "afk_timeout": {
- "type": "integer"
- },
- "afk_channel_id": {
- "type": "string"
- },
- "preferred_locale": {
- "type": "string"
- },
- "premium_progress_bar_enabled": {
- "type": "boolean"
- },
- "region": {
- "type": "string"
- },
- "icon": {
- "type": [
- "null",
- "string"
- ]
- },
- "guild_template_code": {
- "type": "string"
- },
- "system_channel_id": {
- "type": "string"
- },
- "rules_channel_id": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "GuildUpdateWelcomeScreenSchema": {
- "type": "object",
- "properties": {
- "welcome_channels": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "channel_id": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "emoji_id": {
- "type": "string"
- },
- "emoji_name": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "channel_id",
- "description",
- "emoji_name"
- ]
- }
- },
- "enabled": {
- "type": "boolean"
- },
- "description": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "IdentifySchema": {
- "type": "object",
- "properties": {
- "token": {
- "type": "string"
- },
- "properties": {
- "type": "object",
- "properties": {
- "os": {
- "type": "string"
- },
- "os_atch": {
- "type": "string"
- },
- "browser": {
- "type": "string"
- },
- "device": {
- "type": "string"
- },
- "$os": {
- "type": "string"
- },
- "$browser": {
- "type": "string"
- },
- "$device": {
- "type": "string"
- },
- "browser_user_agent": {
- "type": "string"
- },
- "browser_version": {
- "type": "string"
- },
- "os_version": {
- "type": "string"
- },
- "referrer": {
- "type": "string"
- },
- "referring_domain": {
- "type": "string"
- },
- "referrer_current": {
- "type": "string"
- },
- "referring_domain_current": {
- "type": "string"
- },
- "release_channel": {
- "enum": [
- "canary",
- "dev",
- "ptb",
- "stable"
- ],
- "type": "string"
- },
- "client_build_number": {
- "type": "integer"
- },
- "client_event_source": {},
- "client_version": {
- "type": "string"
- },
- "system_locale": {
- "type": "string"
- }
- },
- "additionalProperties": false
- },
- "intents": {
- "type": "string"
- },
- "presence": {
- "$ref": "#/definitions/ActivitySchema"
- },
- "compress": {
- "type": "boolean"
- },
- "large_threshold": {
- "type": "integer"
- },
- "shard": {
- "type": "array",
- "items": [
- {
- "type": "integer"
- },
- {
- "type": "integer"
- }
- ],
- "minItems": 2,
- "maxItems": 2
- },
- "guild_subscriptions": {
- "type": "boolean"
- },
- "capabilities": {
- "type": "integer"
- },
- "client_state": {
- "type": "object",
- "properties": {
- "guild_hashes": {},
- "highest_last_message_id": {
- "type": "string"
- },
- "read_state_version": {
- "type": "integer"
- },
- "user_guild_settings_version": {
- "type": "integer"
- },
- "user_settings_version": {
- "type": "integer"
- }
- },
- "additionalProperties": false
- },
- "v": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "properties",
- "token"
- ],
- "definitions": {
- "ActivitySchema": {
- "type": "object",
- "properties": {
- "afk": {
- "type": "boolean"
- },
- "status": {},
- "activities": {
- "type": "array",
- "items": {}
- },
- "since": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "afk",
- "status"
- ]
- }
- },
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "InviteCreateSchema": {
- "type": "object",
- "properties": {
- "target_user_id": {
- "type": "string"
- },
- "target_type": {
- "type": "string"
- },
- "validate": {
- "type": "string"
- },
- "max_age": {
- "type": "integer"
- },
- "max_uses": {
- "type": "integer"
- },
- "temporary": {
- "type": "boolean"
- },
- "unique": {
- "type": "boolean"
- },
- "target_user": {
- "type": "string"
- },
- "target_user_type": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "LoginSchema": {
- "type": "object",
- "properties": {
- "login": {
- "type": "string"
- },
- "password": {
- "type": "string"
- },
- "undelete": {
- "type": "boolean"
- },
- "captcha_key": {
- "type": "string"
- },
- "login_source": {
- "type": "string"
- },
- "gift_code_sku_id": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "login",
- "password"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MemberChangeProfileSchema": {
- "type": "object",
- "properties": {
- "banner": {
- "type": [
- "null",
- "string"
- ]
- },
- "nick": {
- "type": "string"
- },
- "bio": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MemberChangeSchema": {
- "type": "object",
- "properties": {
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "nick": {
- "type": "string"
- },
- "avatar": {
- "type": [
- "null",
- "string"
- ]
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MemberNickChangeSchema": {
- "type": "object",
- "properties": {
- "nick": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "nick"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MessageAcknowledgeSchema": {
- "type": "object",
- "properties": {
- "manual": {
- "type": "boolean"
- },
- "mention_count": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MessageCreateSchema": {
- "type": "object",
- "properties": {
- "type": {
- "type": "integer"
- },
- "content": {
- "type": "string"
- },
- "nonce": {
- "type": "string"
- },
- "channel_id": {
- "type": "string"
- },
- "tts": {
- "type": "boolean"
- },
- "flags": {
- "type": "string"
- },
- "embeds": {
- "type": "array",
- "items": {}
- },
- "embed": {},
- "allowed_mentions": {
- "type": "object",
- "properties": {
- "parse": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "users": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "replied_user": {
- "type": "boolean"
- }
- },
- "additionalProperties": false
- },
- "message_reference": {
- "type": "object",
- "properties": {
- "message_id": {
- "type": "string"
- },
- "channel_id": {
- "type": "string"
- },
- "guild_id": {
- "type": "string"
- },
- "fail_if_not_exists": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "channel_id",
- "message_id"
- ]
- },
- "payload_json": {
- "type": "string"
- },
- "file": {},
- "attachments": {
- "description": "TODO: we should create an interface for attachments\nTODO: OpenWAAO<-->attachment-style metadata conversion",
- "type": "array",
- "items": {}
- },
- "sticker_ids": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "MfaCodesSchema": {
- "type": "object",
- "properties": {
- "password": {
- "type": "string"
- },
- "regenerate": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "password"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "ModifyGuildStickerSchema": {
- "type": "object",
- "properties": {
- "name": {
- "minLength": 2,
- "maxLength": 30,
- "type": "string"
- },
- "description": {
- "maxLength": 100,
- "type": "string"
- },
- "tags": {
- "maxLength": 200,
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "name",
- "tags"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "PruneSchema": {
- "type": "object",
- "properties": {
- "days": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "days"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "PurgeSchema": {
- "type": "object",
- "properties": {
- "before": {
- "type": "string"
- },
- "after": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "after",
- "before"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "RegisterSchema": {
- "type": "object",
- "properties": {
- "username": {
- "minLength": 2,
- "maxLength": 32,
- "type": "string"
- },
- "password": {
- "minLength": 1,
- "maxLength": 72,
- "type": "string"
- },
- "consent": {
- "type": "boolean"
- },
- "email": {
- "format": "email",
- "type": "string"
- },
- "fingerprint": {
- "type": "string"
- },
- "invite": {
- "type": "string"
- },
- "date_of_birth": {
- "type": "string"
- },
- "gift_code_sku_id": {
- "type": "string"
- },
- "captcha_key": {
- "type": "string"
- },
- "promotional_email_opt_in": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "consent",
- "username"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "RelationshipPostSchema": {
- "type": "object",
- "properties": {
- "discriminator": {
- "type": "string"
- },
- "username": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "discriminator",
- "username"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "RelationshipPutSchema": {
- "type": "object",
- "properties": {
- "type": {}
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "RoleModifySchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "permissions": {
- "type": "string"
- },
- "color": {
- "type": "integer"
- },
- "hoist": {
- "type": "boolean"
- },
- "mentionable": {
- "type": "boolean"
- },
- "position": {
- "type": "integer"
- },
- "icon": {
- "type": "string"
- },
- "unicode_emoji": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "RolePositionUpdateSchema": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "position": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "id",
- "position"
- ]
- },
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "TemplateCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "description": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "name"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "TemplateModifySchema": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string"
- },
- "description": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "name"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "TotpDisableSchema": {
- "type": "object",
- "properties": {
- "code": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "code"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "TotpEnableSchema": {
- "type": "object",
- "properties": {
- "password": {
- "type": "string"
- },
- "code": {
- "type": "string"
- },
- "secret": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "password"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "TotpSchema": {
- "type": "object",
- "properties": {
- "code": {
- "type": "string"
- },
- "ticket": {
- "type": "string"
- },
- "gift_code_sku_id": {
- "type": [
- "null",
- "string"
- ]
- },
- "login_source": {
- "type": [
- "null",
- "string"
- ]
- }
- },
- "additionalProperties": false,
- "required": [
- "code",
- "ticket"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "UserModifySchema": {
- "type": "object",
- "properties": {
- "username": {
- "minLength": 1,
- "maxLength": 100,
- "type": "string"
- },
- "discriminator": {
- "type": "string"
- },
- "avatar": {
- "type": [
- "null",
- "string"
- ]
- },
- "bio": {
- "maxLength": 1024,
- "type": "string"
- },
- "accent_color": {
- "type": "integer"
- },
- "banner": {
- "type": [
- "null",
- "string"
- ]
- },
- "password": {
- "type": "string"
- },
- "new_password": {
- "type": "string"
- },
- "code": {
- "type": "string"
- },
- "email": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "UserProfileModifySchema": {
- "type": "object",
- "properties": {
- "bio": {
- "type": "string"
- },
- "accent_color": {
- "type": [
- "null",
- "integer"
- ]
- },
- "banner": {
- "type": [
- "null",
- "string"
- ]
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "UserSettingsSchema": {
- "type": "object",
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "VanityUrlSchema": {
- "type": "object",
- "properties": {
- "code": {
- "minLength": 1,
- "maxLength": 20,
- "type": "string"
- }
- },
- "additionalProperties": false,
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "VoiceStateUpdateSchema": {
- "type": "object",
- "properties": {
- "channel_id": {
- "type": "string"
- },
- "guild_id": {
- "type": "string"
- },
- "suppress": {
- "type": "boolean"
- },
- "request_to_speak_timestamp": {
- "type": "string",
- "format": "date-time"
- },
- "self_mute": {
- "type": "boolean"
- },
- "self_deaf": {
- "type": "boolean"
- },
- "self_video": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "channel_id"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "WebhookCreateSchema": {
- "type": "object",
- "properties": {
- "name": {
- "maxLength": 80,
- "type": "string"
- },
- "avatar": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "name"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "WidgetModifySchema": {
- "type": "object",
- "properties": {
- "enabled": {
- "type": "boolean"
- },
- "channel_id": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "channel_id",
- "enabled"
- ],
- "$schema": "http://json-schema.org/draft-07/schema#"
- },
- "ChannelModifySchema": {
- "type": "object",
- "properties": {
- "name": {
- "maxLength": 100,
- "type": "string"
- },
- "type": {
- "enum": [
- 0,
- 1,
- 10,
- 11,
- 12,
- 13,
- 14,
- 15,
- 2,
- 255,
- 3,
- 33,
- 34,
- 35,
- 4,
- 5,
- 6,
- 64,
- 7,
- 8,
- 9
- ],
- "type": "number"
- },
- "topic": {
- "type": "string"
- },
- "icon": {
- "type": [
- "null",
- "string"
- ]
- },
- "bitrate": {
- "type": "integer"
- },
- "user_limit": {
- "type": "integer"
- },
- "rate_limit_per_user": {
- "type": "integer"
- },
- "position": {
- "type": "integer"
- },
- "permission_overwrites": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "type": {
- "$ref": "#/definitions/ChannelPermissionOverwriteType"
- },
- "allow": {
- "type": "string"
- },
- "deny": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "allow",
- "deny",
- "id",
- "type"
- ]
- }
- },
- "parent_id": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "nsfw": {
- "type": "boolean"
- },
- "rtc_region": {
- "type": "string"
- },
- "default_auto_archive_duration": {
- "type": "integer"
- },
- "flags": {
- "type": "integer"
- },
- "default_thread_rate_limit_per_user": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "definitions": {
- "ChannelPermissionOverwriteType": {
- "enum": [
- 0,
- 1,
- 2
- ],
- "type": "number"
- }
- },
- "$schema": "http://json-schema.org/draft-07/schema#"
- }
-}
\ No newline at end of file
+ "ActivitySchema": {
+ "type": "object",
+ "properties": {
+ "afk": {
+ "type": "boolean"
+ },
+ "status": {},
+ "activities": {
+ "type": "array",
+ "items": {}
+ },
+ "since": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["afk", "status"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "BackupCodesChallengeSchema": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["password"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "BanCreateSchema": {
+ "type": "object",
+ "properties": {
+ "delete_message_days": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "BanModeratorSchema": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "user_id": {
+ "type": "string"
+ },
+ "guild_id": {
+ "type": "string"
+ },
+ "executor_id": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["executor_id", "guild_id", "id", "user_id"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "BanRegistrySchema": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "user_id": {
+ "type": "string"
+ },
+ "guild_id": {
+ "type": "string"
+ },
+ "executor_id": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["executor_id", "guild_id", "id", "user_id"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "BulkDeleteSchema": {
+ "type": "object",
+ "properties": {
+ "messages": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": ["messages"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "ChannelPermissionOverwriteSchema": {
+ "type": "object",
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "ChannelReorderSchema": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "position": {
+ "type": "integer"
+ },
+ "lock_permissions": {
+ "type": "boolean"
+ },
+ "parent_id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["id"]
+ },
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "CodesVerificationSchema": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "nonce": {
+ "type": "string"
+ },
+ "regenerate": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["key", "nonce"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "DmChannelCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "recipients": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": ["recipients"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "EmojiCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "image": {
+ "type": "string"
+ },
+ "require_colons": {
+ "type": ["null", "boolean"]
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": ["image"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "EmojiModifySchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "GuildCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "maxLength": 100,
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "icon": {
+ "type": ["null", "string"]
+ },
+ "channels": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ChannelModifySchema"
+ }
+ },
+ "guild_template_code": {
+ "type": "string"
+ },
+ "system_channel_id": {
+ "type": "string"
+ },
+ "rules_channel_id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name"],
+ "definitions": {
+ "ChannelModifySchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "maxLength": 100,
+ "type": "string"
+ },
+ "type": {
+ "enum": [0, 1, 10, 11, 12, 13, 14, 15, 2, 255, 3, 33, 34, 35, 4, 5, 6, 64, 7, 8, 9],
+ "type": "number"
+ },
+ "topic": {
+ "type": "string"
+ },
+ "icon": {
+ "type": ["null", "string"]
+ },
+ "bitrate": {
+ "type": "integer"
+ },
+ "user_limit": {
+ "type": "integer"
+ },
+ "rate_limit_per_user": {
+ "type": "integer"
+ },
+ "position": {
+ "type": "integer"
+ },
+ "permission_overwrites": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "type": {
+ "$ref": "#/definitions/ChannelPermissionOverwriteType"
+ },
+ "allow": {
+ "type": "string"
+ },
+ "deny": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["allow", "deny", "id", "type"]
+ }
+ },
+ "parent_id": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "nsfw": {
+ "type": "boolean"
+ },
+ "rtc_region": {
+ "type": "string"
+ },
+ "default_auto_archive_duration": {
+ "type": "integer"
+ },
+ "flags": {
+ "type": "integer"
+ },
+ "default_thread_rate_limit_per_user": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ChannelPermissionOverwriteType": {
+ "enum": [0, 1, 2],
+ "type": "number"
+ }
+ },
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "GuildTemplateCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": ["null", "string"]
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "GuildUpdateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "banner": {
+ "type": ["null", "string"]
+ },
+ "splash": {
+ "type": ["null", "string"]
+ },
+ "description": {
+ "type": "string"
+ },
+ "features": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "verification_level": {
+ "type": "integer"
+ },
+ "default_message_notifications": {
+ "type": "integer"
+ },
+ "system_channel_flags": {
+ "type": "integer"
+ },
+ "explicit_content_filter": {
+ "type": "integer"
+ },
+ "public_updates_channel_id": {
+ "type": "string"
+ },
+ "afk_timeout": {
+ "type": "integer"
+ },
+ "afk_channel_id": {
+ "type": "string"
+ },
+ "preferred_locale": {
+ "type": "string"
+ },
+ "premium_progress_bar_enabled": {
+ "type": "boolean"
+ },
+ "region": {
+ "type": "string"
+ },
+ "icon": {
+ "type": ["null", "string"]
+ },
+ "guild_template_code": {
+ "type": "string"
+ },
+ "system_channel_id": {
+ "type": "string"
+ },
+ "rules_channel_id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "GuildUpdateWelcomeScreenSchema": {
+ "type": "object",
+ "properties": {
+ "welcome_channels": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "channel_id": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "emoji_id": {
+ "type": "string"
+ },
+ "emoji_name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["channel_id", "description", "emoji_name"]
+ }
+ },
+ "enabled": {
+ "type": "boolean"
+ },
+ "description": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "IdentifySchema": {
+ "type": "object",
+ "properties": {
+ "token": {
+ "type": "string"
+ },
+ "properties": {
+ "type": "object",
+ "properties": {
+ "os": {
+ "type": "string"
+ },
+ "os_atch": {
+ "type": "string"
+ },
+ "browser": {
+ "type": "string"
+ },
+ "device": {
+ "type": "string"
+ },
+ "$os": {
+ "type": "string"
+ },
+ "$browser": {
+ "type": "string"
+ },
+ "$device": {
+ "type": "string"
+ },
+ "browser_user_agent": {
+ "type": "string"
+ },
+ "browser_version": {
+ "type": "string"
+ },
+ "os_version": {
+ "type": "string"
+ },
+ "referrer": {
+ "type": "string"
+ },
+ "referring_domain": {
+ "type": "string"
+ },
+ "referrer_current": {
+ "type": "string"
+ },
+ "referring_domain_current": {
+ "type": "string"
+ },
+ "release_channel": {
+ "enum": ["canary", "dev", "ptb", "stable"],
+ "type": "string"
+ },
+ "client_build_number": {
+ "type": "integer"
+ },
+ "client_event_source": {},
+ "client_version": {
+ "type": "string"
+ },
+ "system_locale": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "intents": {
+ "type": "string"
+ },
+ "presence": {
+ "$ref": "#/definitions/ActivitySchema"
+ },
+ "compress": {
+ "type": "boolean"
+ },
+ "large_threshold": {
+ "type": "integer"
+ },
+ "shard": {
+ "type": "array",
+ "items": [
+ {
+ "type": "integer"
+ },
+ {
+ "type": "integer"
+ }
+ ],
+ "minItems": 2,
+ "maxItems": 2
+ },
+ "guild_subscriptions": {
+ "type": "boolean"
+ },
+ "capabilities": {
+ "type": "integer"
+ },
+ "client_state": {
+ "type": "object",
+ "properties": {
+ "guild_hashes": {},
+ "highest_last_message_id": {
+ "type": "string"
+ },
+ "read_state_version": {
+ "type": "integer"
+ },
+ "user_guild_settings_version": {
+ "type": "integer"
+ },
+ "user_settings_version": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false
+ },
+ "v": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["properties", "token"],
+ "definitions": {
+ "ActivitySchema": {
+ "type": "object",
+ "properties": {
+ "afk": {
+ "type": "boolean"
+ },
+ "status": {},
+ "activities": {
+ "type": "array",
+ "items": {}
+ },
+ "since": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["afk", "status"]
+ }
+ },
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "InviteCreateSchema": {
+ "type": "object",
+ "properties": {
+ "target_user_id": {
+ "type": "string"
+ },
+ "target_type": {
+ "type": "string"
+ },
+ "validate": {
+ "type": "string"
+ },
+ "max_age": {
+ "type": "integer"
+ },
+ "max_uses": {
+ "type": "integer"
+ },
+ "temporary": {
+ "type": "boolean"
+ },
+ "unique": {
+ "type": "boolean"
+ },
+ "target_user": {
+ "type": "string"
+ },
+ "target_user_type": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "LoginSchema": {
+ "type": "object",
+ "properties": {
+ "login": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string"
+ },
+ "undelete": {
+ "type": "boolean"
+ },
+ "captcha_key": {
+ "type": "string"
+ },
+ "login_source": {
+ "type": "string"
+ },
+ "gift_code_sku_id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["login", "password"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MemberChangeProfileSchema": {
+ "type": "object",
+ "properties": {
+ "banner": {
+ "type": ["null", "string"]
+ },
+ "nick": {
+ "type": "string"
+ },
+ "bio": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MemberChangeSchema": {
+ "type": "object",
+ "properties": {
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "nick": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": ["null", "string"]
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MemberNickChangeSchema": {
+ "type": "object",
+ "properties": {
+ "nick": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["nick"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MessageAcknowledgeSchema": {
+ "type": "object",
+ "properties": {
+ "manual": {
+ "type": "boolean"
+ },
+ "mention_count": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MessageCreateSchema": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "integer"
+ },
+ "content": {
+ "type": "string"
+ },
+ "nonce": {
+ "type": "string"
+ },
+ "channel_id": {
+ "type": "string"
+ },
+ "tts": {
+ "type": "boolean"
+ },
+ "flags": {
+ "type": "string"
+ },
+ "embeds": {
+ "type": "array",
+ "items": {}
+ },
+ "embed": {},
+ "allowed_mentions": {
+ "type": "object",
+ "properties": {
+ "parse": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "users": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "replied_user": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "message_reference": {
+ "type": "object",
+ "properties": {
+ "message_id": {
+ "type": "string"
+ },
+ "channel_id": {
+ "type": "string"
+ },
+ "guild_id": {
+ "type": "string"
+ },
+ "fail_if_not_exists": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["channel_id", "message_id"]
+ },
+ "payload_json": {
+ "type": "string"
+ },
+ "file": {},
+ "attachments": {
+ "description": "TODO: we should create an interface for attachments\nTODO: OpenWAAO<-->attachment-style metadata conversion",
+ "type": "array",
+ "items": {}
+ },
+ "sticker_ids": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "MfaCodesSchema": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "regenerate": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["password"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "ModifyGuildStickerSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "minLength": 2,
+ "maxLength": 30,
+ "type": "string"
+ },
+ "description": {
+ "maxLength": 100,
+ "type": "string"
+ },
+ "tags": {
+ "maxLength": 200,
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name", "tags"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "PruneSchema": {
+ "type": "object",
+ "properties": {
+ "days": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["days"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "PurgeSchema": {
+ "type": "object",
+ "properties": {
+ "before": {
+ "type": "string"
+ },
+ "after": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["after", "before"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "RegisterSchema": {
+ "type": "object",
+ "properties": {
+ "username": {
+ "minLength": 2,
+ "maxLength": 32,
+ "type": "string"
+ },
+ "password": {
+ "minLength": 1,
+ "maxLength": 72,
+ "type": "string"
+ },
+ "consent": {
+ "type": "boolean"
+ },
+ "email": {
+ "format": "email",
+ "type": "string"
+ },
+ "fingerprint": {
+ "type": "string"
+ },
+ "invite": {
+ "type": "string"
+ },
+ "date_of_birth": {
+ "type": "string"
+ },
+ "gift_code_sku_id": {
+ "type": "string"
+ },
+ "captcha_key": {
+ "type": "string"
+ },
+ "promotional_email_opt_in": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["consent", "username"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "RelationshipPostSchema": {
+ "type": "object",
+ "properties": {
+ "discriminator": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["discriminator", "username"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "RelationshipPutSchema": {
+ "type": "object",
+ "properties": {
+ "type": {}
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "RoleModifySchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "permissions": {
+ "type": "string"
+ },
+ "color": {
+ "type": "integer"
+ },
+ "hoist": {
+ "type": "boolean"
+ },
+ "mentionable": {
+ "type": "boolean"
+ },
+ "position": {
+ "type": "integer"
+ },
+ "icon": {
+ "type": "string"
+ },
+ "unicode_emoji": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "RolePositionUpdateSchema": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "position": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["id", "position"]
+ },
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "TemplateCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "TemplateModifySchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "TotpDisableSchema": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["code"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "TotpEnableSchema": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "code": {
+ "type": "string"
+ },
+ "secret": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["password"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "TotpSchema": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "ticket": {
+ "type": "string"
+ },
+ "gift_code_sku_id": {
+ "type": ["null", "string"]
+ },
+ "login_source": {
+ "type": ["null", "string"]
+ }
+ },
+ "additionalProperties": false,
+ "required": ["code", "ticket"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "UserModifySchema": {
+ "type": "object",
+ "properties": {
+ "username": {
+ "minLength": 1,
+ "maxLength": 100,
+ "type": "string"
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": ["null", "string"]
+ },
+ "bio": {
+ "maxLength": 1024,
+ "type": "string"
+ },
+ "accent_color": {
+ "type": "integer"
+ },
+ "banner": {
+ "type": ["null", "string"]
+ },
+ "password": {
+ "type": "string"
+ },
+ "new_password": {
+ "type": "string"
+ },
+ "code": {
+ "type": "string"
+ },
+ "email": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "UserProfileModifySchema": {
+ "type": "object",
+ "properties": {
+ "bio": {
+ "type": "string"
+ },
+ "accent_color": {
+ "type": ["null", "integer"]
+ },
+ "banner": {
+ "type": ["null", "string"]
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "UserSettingsSchema": {
+ "type": "object",
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "VanityUrlSchema": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "minLength": 1,
+ "maxLength": 20,
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "VoiceStateUpdateSchema": {
+ "type": "object",
+ "properties": {
+ "channel_id": {
+ "type": "string"
+ },
+ "guild_id": {
+ "type": "string"
+ },
+ "suppress": {
+ "type": "boolean"
+ },
+ "request_to_speak_timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "self_mute": {
+ "type": "boolean"
+ },
+ "self_deaf": {
+ "type": "boolean"
+ },
+ "self_video": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["channel_id"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "WebhookCreateSchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "maxLength": 80,
+ "type": "string"
+ },
+ "avatar": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["name"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "WidgetModifySchema": {
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean"
+ },
+ "channel_id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["channel_id", "enabled"],
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ },
+ "ChannelModifySchema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "maxLength": 100,
+ "type": "string"
+ },
+ "type": {
+ "enum": [0, 1, 10, 11, 12, 13, 14, 15, 2, 255, 3, 33, 34, 35, 4, 5, 6, 64, 7, 8, 9],
+ "type": "number"
+ },
+ "topic": {
+ "type": "string"
+ },
+ "icon": {
+ "type": ["null", "string"]
+ },
+ "bitrate": {
+ "type": "integer"
+ },
+ "user_limit": {
+ "type": "integer"
+ },
+ "rate_limit_per_user": {
+ "type": "integer"
+ },
+ "position": {
+ "type": "integer"
+ },
+ "permission_overwrites": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "type": {
+ "$ref": "#/definitions/ChannelPermissionOverwriteType"
+ },
+ "allow": {
+ "type": "string"
+ },
+ "deny": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": ["allow", "deny", "id", "type"]
+ }
+ },
+ "parent_id": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "nsfw": {
+ "type": "boolean"
+ },
+ "rtc_region": {
+ "type": "string"
+ },
+ "default_auto_archive_duration": {
+ "type": "integer"
+ },
+ "flags": {
+ "type": "integer"
+ },
+ "default_thread_rate_limit_per_user": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "definitions": {
+ "ChannelPermissionOverwriteType": {
+ "enum": [0, 1, 2],
+ "type": "number"
+ }
+ },
+ "$schema": "http://json-schema.org/draft-07/schema#"
+ }
+}
diff --git a/src/Server.ts b/src/Server.ts
index c28ca0f9..83120412 100644
--- a/src/Server.ts
+++ b/src/Server.ts
@@ -51,7 +51,7 @@ async function main() {
app.use(Sentry.Handlers.requestHandler());
app.use(Sentry.Handlers.tracingHandler());
}
-
+
server.listen(port);
await Promise.all([api.start(), cdn.start(), gateway.start()]);
diff --git a/src/api/middlewares/TestClient.ts b/src/api/middlewares/TestClient.ts
index 2c195994..3afd0339 100644
--- a/src/api/middlewares/TestClient.ts
+++ b/src/api/middlewares/TestClient.ts
@@ -45,8 +45,8 @@ export default function TestClient(app: Application) {
res.set(name, value);
});
} else {
- if(req.params.file.endsWith(".map")) {
- return res.status(404).send("Not found");
+ if (req.params.file.endsWith(".map")) {
+ return res.status(404).send("Not found");
}
console.log(`[TestClient] Downloading file not yet cached! Asset file: ${req.params.file}`);
response = await fetch(`https://discord.com/assets/${req.params.file}`, {
diff --git a/src/api/routes/applications/#id/bot/index.ts b/src/api/routes/applications/#id/bot/index.ts
index 2ac3523b..6d054c75 100644
--- a/src/api/routes/applications/#id/bot/index.ts
+++ b/src/api/routes/applications/#id/bot/index.ts
@@ -1,5 +1,5 @@
import { route } from "@fosscord/api";
-import { Application, Config, FieldErrors, generateToken, handleFile, OrmUtils, trimSpecial, User, HTTPError } from "@fosscord/util";
+import { Application, Config, FieldErrors, generateToken, handleFile, HTTPError, OrmUtils, trimSpecial, User } from "@fosscord/util";
import { Request, Response, Router } from "express";
import { verifyToken } from "node-2fa";
diff --git a/src/api/routes/auth/login.ts b/src/api/routes/auth/login.ts
index 68b2656a..045b86eb 100644
--- a/src/api/routes/auth/login.ts
+++ b/src/api/routes/auth/login.ts
@@ -1,7 +1,7 @@
-import { Request, Response, Router } from "express";
-import { route, getIpAdress, verifyCaptcha } from "@fosscord/api";
-import { Config, User, generateToken, adjustEmail, FieldErrors, LoginSchema } from "@fosscord/util";
+import { getIpAdress, route, verifyCaptcha } from "@fosscord/api";
+import { adjustEmail, Config, FieldErrors, generateToken, LoginSchema, User } from "@fosscord/util";
import crypto from "crypto";
+import { Request, Response, Router } from "express";
let bcrypt: any;
try {
@@ -38,7 +38,7 @@ router.post("/", route({ body: "LoginSchema" }), async (req: Request, res: Respo
captcha_key: verify["error-codes"],
captcha_sitekey: sitekey,
captcha_service: service
- })
+ });
}
}
diff --git a/src/api/routes/auth/mfa/totp.ts b/src/api/routes/auth/mfa/totp.ts
index 4b080af6..65ec7f2f 100644
--- a/src/api/routes/auth/mfa/totp.ts
+++ b/src/api/routes/auth/mfa/totp.ts
@@ -1,5 +1,5 @@
import { route } from "@fosscord/api";
-import { BackupCode, generateToken, TotpSchema, User, HTTPError } from "@fosscord/util";
+import { BackupCode, generateToken, HTTPError, TotpSchema, User } from "@fosscord/util";
import { Request, Response, Router } from "express";
import { verifyToken } from "node-2fa";
const router = Router();
diff --git a/src/api/routes/auth/verify/view-backup-codes-challenge.ts b/src/api/routes/auth/verify/view-backup-codes-challenge.ts
index d524e0f7..846e186b 100644
--- a/src/api/routes/auth/verify/view-backup-codes-challenge.ts
+++ b/src/api/routes/auth/verify/view-backup-codes-challenge.ts
@@ -1,6 +1,6 @@
-import { Router, Request, Response } from "express";
import { route } from "@fosscord/api";
-import { FieldErrors, User, BackupCodesChallengeSchema } from "@fosscord/util";
+import { BackupCodesChallengeSchema, FieldErrors, User } from "@fosscord/util";
+import { Request, Response, Router } from "express";
let bcrypt: any;
try {
@@ -17,13 +17,13 @@ router.post("/", route({ body: "BackupCodesChallengeSchema" }), async (req: Requ
const user = await User.findOneOrFail({ where: { id: req.user_id }, select: ["data"] });
- if (!await bcrypt.compare(password, user.data.hash || "")) {
+ if (!(await bcrypt.compare(password, user.data.hash || ""))) {
throw FieldErrors({ password: { message: req.t("auth:login.INVALID_PASSWORD"), code: "INVALID_PASSWORD" } });
}
return res.json({
nonce: "NoncePlaceholder",
- regenerate_nonce: "RegenNoncePlaceholder",
+ regenerate_nonce: "RegenNoncePlaceholder"
});
});
diff --git a/src/api/routes/guilds/#guild_id/member-verification.ts b/src/api/routes/guilds/#guild_id/member-verification.ts
index 265a1b35..bb3ffb0a 100644
--- a/src/api/routes/guilds/#guild_id/member-verification.ts
+++ b/src/api/routes/guilds/#guild_id/member-verification.ts
@@ -1,8 +1,8 @@
-import { Router, Request, Response } from "express";
import { route } from "@fosscord/api";
+import { Request, Response, Router } from "express";
const router = Router();
-router.get("/",route({}), async (req: Request, res: Response) => {
+router.get("/", route({}), async (req: Request, res: Response) => {
// TODO: member verification
res.status(404).json({
diff --git a/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts b/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts
index f8c78bc5..a5fe0cf2 100644
--- a/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts
+++ b/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts
@@ -134,159 +134,159 @@ const skus = new Map([
price: 0,
price_tier: null
}
- ],
+ ]
],
[
"978380684370378762",
[
[
{
- "id": "978380692553465866",
- "name": "Premium Tier 0 Monthly",
- "interval": 1,
- "interval_count": 1,
- "tax_inclusive": true,
- "sku_id": "978380684370378762",
- "currency": "usd",
- "price": 299,
- "price_tier": null,
- "prices": {
+ id: "978380692553465866",
+ name: "Premium Tier 0 Monthly",
+ interval: 1,
+ interval_count: 1,
+ tax_inclusive: true,
+ sku_id: "978380684370378762",
+ currency: "usd",
+ price: 299,
+ price_tier: null,
+ prices: {
"0": {
- "country_prices": {
- "country_code": "US",
- "prices": [
+ country_prices: {
+ country_code: "US",
+ prices: [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
},
- "payment_source_prices": {
+ payment_source_prices: {
"775487223059316758": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"736345864146255982": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"683074999590060249": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
}
},
"3": {
- "country_prices": {
- "country_code": "US",
- "prices": [
+ country_prices: {
+ country_code: "US",
+ prices: [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
},
- "payment_source_prices": {
+ payment_source_prices: {
"775487223059316758": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"736345864146255982": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"683074999590060249": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
}
},
"4": {
- "country_prices": {
- "country_code": "US",
- "prices": [
+ country_prices: {
+ country_code: "US",
+ prices: [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
},
- "payment_source_prices": {
+ payment_source_prices: {
"775487223059316758": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"736345864146255982": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"683074999590060249": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
}
},
"1": {
- "country_prices": {
- "country_code": "US",
- "prices": [
+ country_prices: {
+ country_code: "US",
+ prices: [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
},
- "payment_source_prices": {
+ payment_source_prices: {
"775487223059316758": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"736345864146255982": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
],
"683074999590060249": [
{
- "currency": "usd",
- "amount": 0,
- "exponent": 2
+ currency: "usd",
+ amount: 0,
+ exponent: 2
}
]
}
diff --git a/src/api/routes/users/@me/mfa/codes-verification.ts b/src/api/routes/users/@me/mfa/codes-verification.ts
index 071c71fa..570606e0 100644
--- a/src/api/routes/users/@me/mfa/codes-verification.ts
+++ b/src/api/routes/users/@me/mfa/codes-verification.ts
@@ -1,6 +1,6 @@
-import { Router, Request, Response } from "express";
import { route } from "@fosscord/api";
-import { BackupCode, generateMfaBackupCodes, User, CodesVerificationSchema } from "@fosscord/util";
+import { BackupCode, CodesVerificationSchema, generateMfaBackupCodes, User } from "@fosscord/util";
+import { Request, Response, Router } from "express";
const router = Router();
@@ -14,27 +14,23 @@ router.post("/", route({ body: "CodesVerificationSchema" }), async (req: Request
var codes: BackupCode[];
if (regenerate) {
- await BackupCode.update(
- { user: { id: req.user_id } },
- { expired: true }
- );
+ await BackupCode.update({ user: { id: req.user_id } }, { expired: true });
codes = generateMfaBackupCodes(req.user_id);
- await Promise.all(codes.map(x => x.save()));
- }
- else {
+ await Promise.all(codes.map((x) => x.save()));
+ } else {
codes = await BackupCode.find({
where: {
user: {
- id: req.user_id,
+ id: req.user_id
},
- expired: false,
+ expired: false
}
});
}
return res.json({
- backup_codes: codes.map(x => ({ ...x, expired: undefined })),
+ backup_codes: codes.map((x) => ({ ...x, expired: undefined }))
});
});
diff --git a/src/api/routes/users/@me/mfa/totp/disable.ts b/src/api/routes/users/@me/mfa/totp/disable.ts
index 07fdbb05..a53fa816 100644
--- a/src/api/routes/users/@me/mfa/totp/disable.ts
+++ b/src/api/routes/users/@me/mfa/totp/disable.ts
@@ -1,5 +1,5 @@
import { route } from "@fosscord/api";
-import { BackupCode, generateToken, TotpDisableSchema, User, HTTPError } from "@fosscord/util";
+import { BackupCode, generateToken, HTTPError, TotpDisableSchema, User } from "@fosscord/util";
import { Request, Response, Router } from "express";
import { verifyToken } from "node-2fa";
diff --git a/src/api/routes/users/@me/mfa/totp/enable.ts b/src/api/routes/users/@me/mfa/totp/enable.ts
index adf51d6e..0bf1a188 100644
--- a/src/api/routes/users/@me/mfa/totp/enable.ts
+++ b/src/api/routes/users/@me/mfa/totp/enable.ts
@@ -1,5 +1,5 @@
import { route } from "@fosscord/api";
-import { BackupCode, Config, generateMfaBackupCodes, generateToken, TotpEnableSchema, User, HTTPError } from "@fosscord/util";
+import { BackupCode, Config, generateMfaBackupCodes, generateToken, HTTPError, TotpEnableSchema, User } from "@fosscord/util";
import { Request, Response, Router } from "express";
import { verifyToken } from "node-2fa";
diff --git a/src/api/util/index.ts b/src/api/util/index.ts
index 31e75325..d06860cd 100644
--- a/src/api/util/index.ts
+++ b/src/api/util/index.ts
@@ -3,8 +3,8 @@ export * from "./handlers/Message";
export * from "./handlers/route";
export * from "./handlers/Voice";
export * from "./utility/Base64";
+export * from "./utility/captcha";
export * from "./utility/ipAddress";
export * from "./utility/passwordStrength";
export * from "./utility/RandomInviteID";
export * from "./utility/String";
-export * from "./utility/captcha";
\ No newline at end of file
diff --git a/src/api/util/utility/captcha.ts b/src/api/util/utility/captcha.ts
index 739647d2..02983f3f 100644
--- a/src/api/util/utility/captcha.ts
+++ b/src/api/util/utility/captcha.ts
@@ -7,8 +7,8 @@ export interface hcaptchaResponse {
hostname: string;
credit: boolean;
"error-codes": string[];
- score: number; // enterprise only
- score_reason: string[]; // enterprise only
+ score: number; // enterprise only
+ score_reason: string[]; // enterprise only
}
export interface recaptchaResponse {
@@ -22,8 +22,8 @@ export interface recaptchaResponse {
const verifyEndpoints = {
hcaptcha: "https://hcaptcha.com/siteverify",
- recaptcha: "https://www.google.com/recaptcha/api/siteverify",
-}
+ recaptcha: "https://www.google.com/recaptcha/api/siteverify"
+};
export async function verifyCaptcha(response: string, ip?: string) {
const { security } = Config.get();
@@ -34,13 +34,14 @@ export async function verifyCaptcha(response: string, ip?: string) {
const res = await fetch(verifyEndpoints[service], {
method: "POST",
headers: {
- "Content-Type": "application/x-www-form-urlencoded",
+ "Content-Type": "application/x-www-form-urlencoded"
},
- body: `response=${encodeURIComponent(response)}`
- + `&secret=${encodeURIComponent(secret!)}`
- + `&sitekey=${encodeURIComponent(sitekey!)}`
- + (ip ? `&remoteip=${encodeURIComponent(ip!)}` : ""),
+ body:
+ `response=${encodeURIComponent(response)}` +
+ `&secret=${encodeURIComponent(secret!)}` +
+ `&sitekey=${encodeURIComponent(sitekey!)}` +
+ (ip ? `&remoteip=${encodeURIComponent(ip!)}` : "")
});
- return await res.json() as hcaptchaResponse | recaptchaResponse;
-}
\ No newline at end of file
+ return (await res.json()) as hcaptchaResponse | recaptchaResponse;
+}
diff --git a/src/util/entities/Member.ts b/src/util/entities/Member.ts
index 9e9131fe..da0b240e 100644
--- a/src/util/entities/Member.ts
+++ b/src/util/entities/Member.ts
@@ -1,6 +1,13 @@
import { Column, Entity, Index, JoinColumn, JoinTable, ManyToMany, ManyToOne, PrimaryGeneratedColumn, RelationId } from "typeorm";
-import { Ban, PublicGuildRelations, Message } from ".";
-import { GuildCreateEvent, GuildDeleteEvent, GuildMemberAddEvent, GuildMemberRemoveEvent, GuildMemberUpdateEvent, MessageCreateEvent } from "../interfaces";
+import { Ban, Message, PublicGuildRelations } from ".";
+import {
+ GuildCreateEvent,
+ GuildDeleteEvent,
+ GuildMemberAddEvent,
+ GuildMemberRemoveEvent,
+ GuildMemberUpdateEvent,
+ MessageCreateEvent
+} from "../interfaces";
import { Config, emitEvent } from "../util";
import { DiscordApiErrors } from "../util/Constants";
import { HTTPError } from "../util/imports/HTTPError";
@@ -301,7 +308,7 @@ export class Member extends BaseClassWithoutId {
presences: [],
stage_instances: [],
threads: [],
- embedded_activities: [],
+ embedded_activities: []
},
user_id
} as GuildCreateEvent)
@@ -320,7 +327,7 @@ export class Member extends BaseClassWithoutId {
attachments: [],
embeds: [],
sticker_items: [],
- edited_timestamp: undefined,
+ edited_timestamp: undefined
});
await Promise.all([
message.save(),
diff --git a/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts b/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts
index 6e1ac3f8..21ee2027 100644
--- a/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts
+++ b/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts
@@ -1,40 +1,39 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class guildMemberProfiles1661885910534 implements MigrationInterface {
- name = 'guildMemberProfiles1661885910534'
+ name = "guildMemberProfiles1661885910534";
- public async up(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async up(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
ALTER TABLE \`members\`
ADD \`avatar\` varchar(255) NULL
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\`
ADD \`banner\` varchar(255) NULL
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\`
ADD \`bio\` varchar(255) NOT NULL
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\`
ADD \`communication_disabled_until\` datetime NULL
`);
- }
+ }
- public async down(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async down(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
ALTER TABLE \`members\` DROP COLUMN \`communication_disabled_until\`
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\` DROP COLUMN \`bio\`
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\` DROP COLUMN \`banner\`
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE \`members\` DROP COLUMN \`avatar\`
`);
- }
-
+ }
}
diff --git a/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts b/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts
index 81671250..c6b69234 100644
--- a/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts
+++ b/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts
@@ -1,40 +1,39 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class guildMemberProfiles1661885830688 implements MigrationInterface {
- name = 'guildMemberProfiles1661885830688'
+ name = "guildMemberProfiles1661885830688";
- public async up(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async up(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
ALTER TABLE "members"
ADD "avatar" character varying
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members"
ADD "banner" character varying
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members"
ADD "bio" character varying NOT NULL default ''
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members"
ADD "communication_disabled_until" TIMESTAMP
`);
- }
+ }
- public async down(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async down(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
ALTER TABLE "members" DROP COLUMN "communication_disabled_until"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members" DROP COLUMN "bio"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members" DROP COLUMN "banner"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members" DROP COLUMN "avatar"
`);
- }
-
+ }
}
diff --git a/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts b/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts
index 24ec9c72..03932c3a 100644
--- a/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts
+++ b/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts
@@ -1,13 +1,13 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class guildMemberProfiles1661885742207 implements MigrationInterface {
- name = 'guildMemberProfiles1661885742207'
+ name = "guildMemberProfiles1661885742207";
- public async up(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async up(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
CREATE TABLE "temporary_members" (
"index" integer PRIMARY KEY AUTOINCREMENT NOT NULL,
"id" varchar NOT NULL,
@@ -29,7 +29,7 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface {
CONSTRAINT "FK_16aceddd5b89825b8ed6029ad1c" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION
)
`);
- await queryRunner.query(`
+ await queryRunner.query(`
INSERT INTO "temporary_members"(
"index",
"id",
@@ -58,27 +58,27 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface {
"joined_by"
FROM "members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
DROP TABLE "members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "temporary_members"
RENAME TO "members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id")
`);
- }
+ }
- public async down(queryRunner: QueryRunner): Promise<void> {
- await queryRunner.query(`
+ public async down(queryRunner: QueryRunner): Promise<void> {
+ await queryRunner.query(`
DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
ALTER TABLE "members"
RENAME TO "temporary_members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
CREATE TABLE "members" (
"index" integer PRIMARY KEY AUTOINCREMENT NOT NULL,
"id" varchar NOT NULL,
@@ -96,7 +96,7 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface {
CONSTRAINT "FK_16aceddd5b89825b8ed6029ad1c" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION
)
`);
- await queryRunner.query(`
+ await queryRunner.query(`
INSERT INTO "members"(
"index",
"id",
@@ -125,12 +125,11 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface {
"joined_by"
FROM "temporary_members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
DROP TABLE "temporary_members"
`);
- await queryRunner.query(`
+ await queryRunner.query(`
CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id")
`);
- }
-
+ }
}
diff --git a/src/util/schemas/BackupCodesChallengeSchema.ts b/src/util/schemas/BackupCodesChallengeSchema.ts
index d6b519b7..8e2f0649 100644
--- a/src/util/schemas/BackupCodesChallengeSchema.ts
+++ b/src/util/schemas/BackupCodesChallengeSchema.ts
@@ -1,3 +1,3 @@
export interface BackupCodesChallengeSchema {
password: string;
-}
\ No newline at end of file
+}
diff --git a/src/util/schemas/CodesVerificationSchema.ts b/src/util/schemas/CodesVerificationSchema.ts
index e8e2e7b4..73c371eb 100644
--- a/src/util/schemas/CodesVerificationSchema.ts
+++ b/src/util/schemas/CodesVerificationSchema.ts
@@ -2,4 +2,4 @@ export interface CodesVerificationSchema {
key: string;
nonce: string;
regenerate?: boolean;
-}
\ No newline at end of file
+}
diff --git a/src/util/schemas/index.ts b/src/util/schemas/index.ts
index 320593ec..4e0acb22 100644
--- a/src/util/schemas/index.ts
+++ b/src/util/schemas/index.ts
@@ -44,4 +44,4 @@ export * from "./UserSettingsSchema";
export * from "./VanityUrlSchema";
export * from "./VoiceStateUpdateSchema";
export * from "./WebhookCreateSchema";
-export * from "./WidgetModifySchema";
\ No newline at end of file
+export * from "./WidgetModifySchema";
|