-
-
-
- Logged in as {{ botTag || "Unknown#0000" }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/examples/command-parsing.js b/src/examples/command-parsing.js
index e72cbb73a..3950447c2 100644
--- a/src/examples/command-parsing.js
+++ b/src/examples/command-parsing.js
@@ -1,109 +1,112 @@
export default `
-
-
- arguments
- command
-
-
-
-
- Your bot token
-
-
+
+
+ arguments
+ command
+
+
+
+
+ Your bot token
+
+
+
+
+
+
+ arguments
+
+
+
+ SPLIT
+
+
+
+
+
+
+
+
-
-
-
- arguments
-
-
-
- SPLIT
-
-
-
-
-
-
-
-
+
+
+
+ command
+
+
+
+ GET_REMOVE
+ FROM_START
+
+
+ arguments
+
+
+
+
+ 1
+
+
+
+
+
+
+
+
+ EQ
+
+
+ command
-
-
-
- command
-
-
-
- GET_REMOVE
- FROM_START
-
-
- arguments
-
-
-
-
- 1
-
-
-
-
-
-
-
-
- EQ
-
-
- command
-
-
-
-
- !say
-
-
-
-
-
-
-
-
- You have written the following content after !say:
-
-
-
-
-
-
- Salut!
-
-
-
- JOIN
-
-
- arguments
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ !say
+
+
+
+
+
+
+
+
+ You have written the following content after !say:
+
+
+
+
+
+
+
+
+ JOIN
+
+
+ arguments
-
+
+
+
+
+
+
-
+
+
+
+
+
+ TRUE
-
+
-
+
+
+
-
+
+
+
+
+
`;
\ No newline at end of file
diff --git a/src/examples/ping-pong.js b/src/examples/ping-pong.js
index 08645b360..169948547 100644
--- a/src/examples/ping-pong.js
+++ b/src/examples/ping-pong.js
@@ -1,39 +1,59 @@
export default `
-
-
-
-
- Your bot token
-
+
+
+
+
+ Your bot token
+
+
+
+
+
+
+
+
+ EQ
+
+
-
-
-
-
-
-
- EQ
-
-
-
-
-
- !ping
-
-
-
-
-
-
-
-
- pong!
-
-
-
-
-
-
-
-
+
+
+ !ping
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ pong!
+
+
+
+
+ #33ff33
+
+
+
+
+
+
+ TRUE
+
+
+
+
+
+
+
+
`;
\ No newline at end of file
diff --git a/src/locales/en-US.json b/src/locales/en-US.json
index be0355b4e..d4172b29b 100644
--- a/src/locales/en-US.json
+++ b/src/locales/en-US.json
@@ -1,32 +1,69 @@
{
"BASE_BLOCKS": "Base blocks",
"MESSAGE_RELATED_BLOCKS": "Blocks related to messages",
- "REPLY": "reply %1",
+ "REPLY": "reply %1 embed %2 mention %3",
+ "EDITED_REPLY": "edited reply %1 embed %2 mention %3",
+ "SLASH_REPLY": "reply %1 embed %2 ephemeral %3",
+ "ON_THREAD_CREATE": "When thread is created",
+ "ON_THREAD_UNARCHIVE": "When thread is unarchived",
+ "RES_VALID_CHANNEL": "You must specify a valid channel",
+ "ON_THREAD_DELETE": "When thread is deleted",
+ "CHANNEL_OF_THREAD": "channel of thread %1",
+ "DIRECT_REPLY": "direct reply %1 embed %2 mention %3",
"LOGIN": "Connect to Discord with the token %1",
"LOGIN_TOOLTIP": "Connect your bot to Discord. To get your bot token, go to https://discord.com/developers/.",
"ON_MESSAGE": "When a message is received",
+ "ON_SLASH": "When slash command is received",
+ "RES_MISSING_THREAD": "You must specify a valid thread!",
+ "CHANNEL_CATEGORY": "category of channel %1",
+ "THREAD_ARCHIVE": "%1 thread %2",
+ "ON_DIRECT": "When a direct message is received",
+ "DETECT_SLASH": "Detect slash commands",
+ "ON_THREAD_ARCHIVE": "When thread is archived",
+ "MESSAGE_THREAD": "message thread",
"ON_CONNECTED": "When the bot is connected",
+ "ON_THREAD_MESSAGE": "When thread message is received",
+ "ON_EDITED": "When a message is edited",
+ "TOOLBOX_EDITED": "Edited",
+ "TOOLBOX_DIRECT": "Direct",
"ON_CONNECTED_TOOLTIP": "Event emitted when your bot is connected to Discord.",
"MESSAGE_ID": "message ID",
"MESSAGE_CONTENT": "message content",
"MESSAGE_AUTHOR": "message author",
+ "THREAD_REPLY": "thread reply %1 embed %2 mention %3",
+ "EDITED_AUTHOR": "edited message author",
"MESSAGE_AUTHOR_RAW": "%1 of the message author",
+ "LABEL_THREAD_ARCHIVE": "Thread archive/unarchive",
+ "THREAD_REACTION": "add reaction %1 on thread message",
+ "DELETE_THREAD_MESSAGE": "delete thread message",
+ "THREAD_RAW": "%1 of the message thread",
+ "EDITED_AUTHOR_RAW": "%1 of the edited message author",
"USERNAME": "username",
+ "THREAD_GUILD_RAW":"%1 of the thread message server",
"NICKNAME": "nickname",
+ "THREAD_MESSAGE_AUTHOR_RAW": "%1 of thread message author",
"GET_GUILD": "find server %1 using %2",
"NAME": "name",
"ADD_ROLE": "add role %1 to member %2",
"REMOVE_ROLE": "remove role %1 from member %2",
"BAN_MEMBER": "ban member %1",
"KICK_MEMBER": "kick member %1",
- "SEND_MEMBER": "send %1 to member %2",
+ "SEND_MEMBER": "send %1embed%2to member %3",
+ "DIRECT_CONTENT": "direct mesage content",
"MESSAGE_GUILD": "message server",
+ "THREAD_MESSAGE_GUILD": "thread message server",
+ "EDITED_GUILD": "edited message server",
+ "EDITED_ID": "edited message ID",
"MESSAGE_CHANNEL": "message channel",
+ "EDITED_MESSAGE_CHANNEL": "edited message channel",
"BASIC_BLOCKS": "Basic blocks",
"ADVANCED_BLOCKS": "Advanced blocks",
"MENTIONED_MEMBER": "mentioned member",
+ "OLD_EDITED_MENTIONED_MEMBER": "old edited mentioned member",
+ "NEW_EDITED_MENTIONED_MEMBER": "new edited mentioned member",
"ADMINISTRATOR": "Administrator",
"DETECT_MESSAGES": "Detect messages",
+ "DETECT_EDITED": "Detect editing",
"MESSAGE_ACTIONS": "Actions on the message",
"RELATED_TO_MESSAGE_STRINGS": "Strings related to the message",
"DELETE_MESSAGE": "delete the message",
@@ -75,8 +112,13 @@
"PERM_CHANGE_NICKNAME": "change nickname",
"PERM_MANAGE_NICKNAMES": "manage nicknames",
"PERM_MANAGE_ROLES": "manage roles",
+ "SLASH_VALUE": "Get %1 option name %2",
"PERM_MANAGE_WEBHOOKS": "manage webhooks",
+ "DIRECT_REACTION": "add reaction %1 to direct message",
"PERM_MANAGE_EMOJIS": "manage emojis",
+ "DELETE_DIRECT": "delete direct message",
+ "DIRECT_BOT": "direct author is bot?",
+ "TAG": "tag",
"JOINS_RELATED_BLOCKS": "Blocks related to member joins",
"DETECT_JOINS": "Detect joins",
"ON_MEMBER_JOIN": "When a member joins a server",
@@ -86,12 +128,49 @@
"JOINING_MEMBER_RAW": "%1 of the joining member",
"JOINING_GUILD": "joining member server",
"TEMPORARILY": "Temporarily",
+ "THREAD_NAME": "name of thread %1",
+ "DELETED_THREAD": "deleted thread",
+ "THREAD_SERVER": "server of thread %1",
+ "RES_HAS_ROLE_MISSING_ROLE": "You must specify a valid role",
+ "THREAD_OTHER_LABEL": "Other thread stuff",
+ "RES_HAS_ROLE_MISSING_MEMBER": "You must specify a valid member",
"HOURS": "hours",
+ "ROLE_EXIST": "role %1 exist?",
"REASON": "reason",
+ "RES_MUST_BE_IN_ON_THREAD_DELETE":"This block may only be used in a \"When a thread is deleted\" event",
+ "DISCRIMINATOR": "discriminator",
+ "THREAD_CREATE_LABEL": "Detect creating thread",
+ "THREAD_DELETE_LABEL": "Detect deleting thread",
+ "MESSAGE_CREATE_THREAD": "start thread on message %7 with name%1 auto archive after%2%4then%6%3if not enoguh server boost level%8%5",
+ "CREATE_THREAD": "start thread in channel %1 with name %2 archive after %3 %7then%5%4if not enough server boost level%8%6",
+ "CREATED_THREAD": "started thread",
+ "THREAD_HOUR": "1 hour",
+ "THREAD_DAY": "1 day",
+ "THREAD_3DAY": "3 days",
+ "THREAD_WEEK": "1 week",
+ "HAS_ROLE": "member %2 has role %1",
+ "CREATED_THREAD_ON": "created thread",
+ "DIRECT_ID": "direct message ID",
+ "UNARCHIVED_THREAD": "(un)archived thread",
+ "DIRECT_AUTHOR_INFO": "Informations about direct message author",
+ "DIRECT_AUTHOR_RAW": "%1 of direct message author",
"DURING_HOURS": "during",
+ "SLASH_AUTHOR": "slash command author",
+ "SLASH_CHANNEL": "slash command channel",
+ "SLASH_SERVER": "slash command server",
+ "SLASH_NAME": "slash command name",
"WITH_REASON": "for the reason",
+ "THREAD_MESSAGE_CONTENT": "thread message content",
+ "RES_MUST_BE_IN_THREAD_START": "This block may only be used in a \"start thread\" block!",
+ "RES_MISSING_CHANNEL": "You must specify a valid channel!",
+ "RES_MUST_BE_IN_ON_THREAD_START": "This block may only be used in a \"When a thread is created\" event",
+ "RES_MUST_BE_IN_ON_UNARCHIVE_THREAD": "This block may only be used in a \"When a thread is (un)archived\" event",
"RES_MUST_BE_IN_ON_MESSAGE": "This block may only be used in a \"When a message is received\" event",
+ "RES_MUST_BE_IN_ON_SLASH": "This block may only be used in a \"When slash command is received\" event",
+ "RES_MUST_BE_IN_ON_DIRECT": "This block may only be used in a \"When a direct message is received\" event",
+ "RES_MUST_BE_IN_ON_THREAD_MESSAGE": "This block may only be used in a \"When thread message is received\" event",
"RES_MISSING_CONTENT": "You must specify a valid content to reply!",
+ "RES_MISSING_SLASH_NAME": "You must specify a valid slash value to get!",
"RES_MISSING_MEMBER_HAS_PERMISSION": "You must specify a valid member to check permissions!",
"RES_MUST_BE_IN_ON_MEMBER_JOIN": "This block may only be used in a \"When a member joins a server\" event",
"RES_ADD_ROLE_MISSING_ROLE": "You must specify a valid name or role ID to add!",
@@ -111,13 +190,19 @@
"RES_INCLUDES_TEXT": "You must specify a text to see if that includes something!",
"RES_INCLUDES_INCLUDES": "You must specify a text to see if in the other text includes that!",
"NEWLINE": "new line",
+ "CPU_MODEL": "CPU model",
+ "THREAD_MESSAGE_AUTHOR": "thread message author",
+ "THREAD_MESSAGE_ID": "thread message ID",
"FIND_CHANNEL": "Find a channel",
+ "REPLY_REFERENCE": "reference reply %1 embed %2 if no reference %3%4",
"SEND_CHANNEL_LABEL": "Send a message in the found channel",
+ "LABEL_THREAD_MESSAGE": "Thread messages",
"GET_CHANNEL": "get the channel with %2 equal to %1",
"RES_MISSING_CHANNEL_VALUE": "You must specify a valid channel name or ID!",
"RES_SEND_CHANNEL_CONTENT": "You must specify a content to send!",
"RES_SEND_CHANNEL_CHANNEL": "You must specify a channel in which to send the content!",
- "SEND_CHANNEL": "send %1 in the channel %2",
+ "SEND_CHANNEL": "send %1embed%2in channel %3",
+ "SEND_THREAD": "send%1embed%2thread%3",
"TOOLBOX_LOGIC": "Logic",
"TOOLBOX_LOOPS": "Loops",
"TOOLBOX_MATH": "Math",
@@ -149,20 +234,28 @@
"RES_GET_ROLE_VALUE": "You must specify a valid name or role ID!",
"RES_GET_SERVER_VALUE": "You must specify a valid server name or ID!",
"FIND_ROLE": "Find a role",
+ "START_TYPING": "start typing%1 in channel %2",
+ "MEMBER_STATUS": "presence status of %1",
"ROLE_ASSIGNMENT": "Roles assignment",
"FIND_MEMBER": "Find a member",
+ "LOG": "log in console %1",
"GET_MEMBER": "get member with %2 equal to %1 on server %3",
"INIT_TOOLTIP": "Allows you to use Discord blocks!",
+ "MEMBER_IS_STREAMING": "member %1 is streaming",
"JOINING_GUILD_RAW": "%1 of the server of the joining member",
"LABEL_MEMBER_ACTIONS": "Actions on the member",
"LABEL_MESSAGE_CONTEXT": "Message context",
+ "LABEL_EDITED_INTERACTION": "Interactions with message",
"MESSAGE_CHANNEL_RAW": "%1 of the channel of the message",
+ "EDITED_CHANNEL_RAW": "%1 of the channel of edited message",
"MESSAGE_GUILD_RAW": "%1 of the server of the message",
+ "EDITED_GUILD_RAW": "%1 of the server of the message",
"RES_GET_MEMBER_SERVER": "You must specify a valid server on which the member is!",
"RES_GET_MEMBER_VALUE": "You must specify a valid member ID or member name!",
"TOOLBOX_MEMBERS": "Member",
"MEMBER_INFORMATIONS": "Members informations",
"RES_VALID_MEMBER": "You must specify a valid member !",
+ "DELETE_EDITED_MESSAGE": "delete edited message",
"MEMBER_DISCRIMINATOR": "discriminator of member %1",
"MEMBER_ID": "id of member %1",
"MEMBER_TAG": "tag of member %1",
@@ -196,6 +289,7 @@
"BOT_SERVER_COUNT": "bot server count",
"TOOLBOX_E_JOINS": "Joins",
"TOOLBOX_E_MESSAGES": "Messages",
+ "TOOLBOX_SLASH": "Slash",
"TOOLBOX_E_REACTIONS": "Reactions",
"TOOLBOX_DATABASE": "Database",
"GET_DATA": "get %1 from the database",
@@ -205,6 +299,8 @@
"DELETE_DATA": "delete %1 from database",
"HAS_DATA": "%1 exists in database",
"ADD_DATA": "add %1 to %2",
+ "NEW_CONTENT": "new message content",
+ "OLD_CONTENT": "old message content",
"SUBTRACT_DATA": "subtract %1 from %2",
"DETECT_LEAVES": "Detect leaves",
"LEAVING_GUILD": "leaving member server",
diff --git a/src/locales/en.js b/src/locales/en.js
index 9a3b7c3de..b6335203c 100644
--- a/src/locales/en.js
+++ b/src/locales/en.js
@@ -11,6 +11,7 @@ export const applyBlocklyLocale = () => {
export const websiteMessages = {
untitled: "Untitled document",
help: "Help",
+ slash: "Register slash commands",
load: {
error: "The uploaded file is corrupted and cannot be loaded by Scratch For Discord..."
},
diff --git a/src/locales/fr-FR.json b/src/locales/fr-FR.json
deleted file mode 100644
index 80a8031f4..000000000
--- a/src/locales/fr-FR.json
+++ /dev/null
@@ -1,243 +0,0 @@
-{
- "BASE_BLOCKS": "Blocks de base",
- "REPLY": "répondre %1",
- "MESSAGE_RELATED_BLOCKS": "Blocks relatifs aux messages",
- "INIT_TOOLTIP": "Vous permet d'utiliser les blocks Discord!",
- "LOGIN": "Connexion à Discord avec le token %1",
- "LOGIN_TOOLTIP": "Connecte votre bot à Discord. Pour trouver le token de votre bot, rendez-vous sur https://discord.com/developers/.",
- "ON_MESSAGE": "Quand un message est reçu",
- "ON_CONNECTED": "Quand le bot est connecté",
- "ON_CONNECTED_TOOLTIP": "Évènement émis lorsque votre bot est connecté à Discord.",
- "MESSAGE_ID": "ID du message",
- "MESSAGE_CONTENT": "contenu du message",
- "MESSAGE_AUTHOR": "auteur du message",
- "MESSAGE_AUTHOR_RAW": "%1 de l'auteur du message",
- "USERNAME": "nom d'utilisateur",
- "NICKNAME": "pseudo",
- "GET_GUILD": "trouver le serveur %1 via %2",
- "NAME": "nom",
- "ADD_ROLE": "ajouter le rôle %1 au membre %2",
- "REMOVE_ROLE": "enlever le rôle %1 au membre %2",
- "BAN_MEMBER": "bannir le membre %1",
- "KICK_MEMBER": "expulser le membre %1",
- "SEND_MEMBER": "envoyer %1 au membre %2",
- "MESSAGE_GUILD_RAW": "%1 du serveur du message",
- "MESSAGE_CHANNEL_RAW": "%1 du salon du message",
- "MESSAGE_CHANNEL": "salon du message",
- "MESSAGE_GUILD": "serveur du message",
- "BASIC_BLOCKS": "Blocks basics",
- "ADVANCED_BLOCKS": "Blocks avancés",
- "MENTIONED_MEMBER": "membre mentionné",
- "ADMINISTRATOR": "Administrateur",
- "DETECT_MESSAGES": "Détecter les messages",
- "MESSAGE_ACTIONS": "Actions sur le message",
- "RELATED_TO_MESSAGE_STRINGS": "Chaînes relatives au message",
- "DELETE_MESSAGE": "supprimer le message",
- "RES_ADD_REACTION_MISSING_REACTION": "Vous devez spécifier un émoji valide !",
- "ADD_REACTION": "ajouter la réaction %1 au message",
- "MESSAGE_EMBED": "Message Embed",
- "COLOR": "couleur",
- "TITLE": "titre",
- "MESSAGE": "message",
- "IMAGE": "image",
- "FOOTER": "pied de page",
- "THUMBNAIL": "miniature",
- "PURGE": "dans le salon %1 supprimer %2 messages",
- "RES_PURGE_AMOUNT": "Vous devez préciser un nombre valide de messages à supprimer !",
- "RES_PURGE_CHANNEL": "Vous devez préciser un salon valide !",
- "CHANNEL_MESSAGE_ACTIONS": "Actions sur les messages du salon",
- "TOOLS": "Outils",
- "CHECK_PERMISSIONS": "Vérifier les permissions d'un membre",
- "MEMBER_HAS_PERMISSION": "le membre %1 a la permission %2",
- "PERM_CREATE_INSTANT_INVITE": "créer une invitation instantanée",
- "PERM_KICK_MEMBERS": "expulser des membres",
- "PERM_BAN_MEMBERS": "bannir des membres",
- "PERM_ADMINISTRATOR": "administrateur",
- "PERM_MANAGE_CHANNELS": "gérer les salons",
- "PERM_MANAGE_GUILD": "gérer le serveur",
- "PERM_ADD_REACTIONS": "ajouter des réactions",
- "PERM_VIEW_AUDIT_LOG": "voir les logs du serveur",
- "PERM_PRIORITY_SPEAKER": "voix prioritaire",
- "PERM_VIEW_CHANNEL": "voir le salon",
- "PERM_READ_MESSAGES": "lire les messages",
- "PERM_SEND_MESSAGES": "envoyer des messages",
- "PERM_SEND_TTS_MESSAGES": "envoyer des messages TTS",
- "PERM_MANAGE_MESSAGES": "gérer les messages",
- "PERM_EMBED_LINKS": "intégrer des liens",
- "PERM_ATTACH_FILES": "attacher des fichiers",
- "PERM_READ_MESSAGE_HISTORY": "voir l'historique des messages",
- "PERM_MENTION_EVERYONE": "mentionner @everyone",
- "PERM_EXTERNAL_EMOJIS": "voir les émojis externes",
- "PERM_USE_EXTERNAL_EMOJIS": "utiliser des émojis externes",
- "PERM_CONNECT": "se connecter",
- "PERM_SPEAK": "parler",
- "PERM_MUTE_MEMBERS": "couper le micro des membres",
- "PERM_DEAFEN_MEMBERS": "mettre en sourdine des membres",
- "PERM_MOVE_MEMBERS": "déplacer des membres",
- "PERM_USE_VAD": "utiliser la détection de la voix",
- "PERM_CHANGE_NICKNAME": "changer de pseudo",
- "PERM_MANAGE_NICKNAMES": "gérer les pseudos",
- "PERM_MANAGE_ROLES": "gérer les rôles",
- "PERM_MANAGE_WEBHOOKS": "gérer les webhooks",
- "PERM_MANAGE_EMOJIS": "gérer les émojis",
- "JOINS_RELATED_BLOCKS": "Blocks relatifs aux arrivées de membre",
- "DETECT_JOINS": "Détecter les arrivées",
- "ON_MEMBER_JOIN": "Quand un membre rejoint le serveur",
- "JOINING_MEMBER_INFORMATIONS": "Informations sur l'arrivant",
- "JOINING_MEMBER": "membre arrivant",
- "JOINING_GUILD": "serveur du membre arrivant",
- "RELATED_TO_JOIN_STRINGS": "Chaînes relatives à l'arrivée",
- "JOINING_MEMBER_RAW": "%1 du membre arrivant",
- "JOINING_GUILD_RAW": "%1 du serveur du membre arrivant",
- "TEMPORARILY": "Temporairement",
- "HOURS": "heures",
- "REASON": "raison",
- "DURING_HOURS": "durant",
- "WITH_REASON": "pour la raison",
- "RES_MUST_BE_IN_ON_MESSAGE": "Ce block ne peut être utilisé que dans un évènement \"Quand un message est reçu\"",
- "RES_MISSING_CONTENT": "Vous devez préciser un contenu valide à répondre !",
- "RES_MISSING_MEMBER_HAS_PERMISSION": "Vous devez préciser un membre valide à qui vérifier les permissions !",
- "RES_MUST_BE_IN_ON_MEMBER_JOIN": "Ce block ne peut être utilisé que dans un évènement \"Quand un membre rejoint le serveur\"",
- "RES_ADD_ROLE_MISSING_ROLE": "Vous devez préciser un nom ou un identifiant de rôle valide à ajouter !",
- "RES_ADD_ROLE_MISSING_MEMBER": "Vous devez préciser un membre valide à qui ajouter le rôle !",
- "RES_REMOVE_ROLE_MISSING_ROLE": "Vous devez préciser un nom ou un identifiant de rôle valide à enlever !",
- "RES_REMOVE_ROLE_MISSING_MEMBER": "Vous devez préciser un membre valide à qui enlever le rôle !",
- "RES_KICK_MEMBER_MISSING_MEMBER": "Vous devez préciser un membre valide à expulser !",
- "RES_BAN_MEMBER_MISSING_MEMBER": "Vous devez préciser un membre valide à bannir !",
- "RES_SEND_MEMBER_MISSING_MEMBER": "Vous devez préciser un membre valide à qui envoyer le message !",
- "MANDATORY_BLOCKS": "Blocks obligatoires",
- "STARTS_WITH": "%1 commence par %2",
- "REPLACE": "dans le texte %1 remplacer %2 par %3",
- "RES_REPLACE_STRING": "Vous devez préciser un texte à modifier !",
- "RES_REPLACE_REPLACE": "Vous devez préciser ce qu'il faut remplacer dans le texte !",
- "RES_REPLACE_WITH": "Vous devez préciser ce avec quoi remplacer dans le texte !",
- "INCLUDES": "%1 contient %2",
- "RES_INCLUDES_TEXT": "Vous devez préciser un texte dans lequel chercher !",
- "RES_INCLUDES_INCLUDES": "Vous devez préciser un texte à rechercher !",
- "NEWLINE": "nouvelle ligne",
- "FIND_CHANNEL": "Trouver un salon",
- "SEND_CHANNEL_LABEL": "Envoyer un message dans le salon trouvé",
- "GET_CHANNEL": "obtenir le salon dont le %2 est %1",
- "RES_MISSING_CHANNEL_VALUE": "Vous devez préciser un nom ou un identifiant de salon valide !",
- "RES_SEND_CHANNEL_CONTENT": "Vous devez préciser un contenu à envoyer !",
- "RES_SEND_CHANNEL_CHANNEL": "Vous devez préciser un salon dans lequel envoyer le contenu !",
- "SEND_CHANNEL": "envoyer %1 dans le salon %2",
- "TOOLBOX_LOGIC": "Logique",
- "TOOLBOX_LOOPS": "Boucles",
- "TOOLBOX_MATH": "Math",
- "TOOLBOX_TEXT": "Texte",
- "TOOLBOX_LISTS": "Listes",
- "TOOLBOX_COLORS": "Couleurs",
- "TOOLBOX_VARIABLES": "Variables",
- "TOOLBOX_FUNCTIONS": "Fonctions",
- "TOOLBOX_CHANNELS": "Salons",
- "TOOLBOX_ACTIONS": "Actions",
- "TOOLBOX_BASE": "Base",
- "TOOLBOX_SERVER": "Serveurs",
- "TOOLBOX_ROLES": "Rôles",
- "TOOLBOX_MEMBERS": "Membres",
- "FIND_SERVER": "Trouver un serveur",
- "GET_SERVER": "obtenir le serveur dont le %2 est %1",
- "RES_GET_SERVER_SERVER": "Vous devez préciser un nom ou un identifiant de serveur valide !",
- "LABEL_SERVER_INFOS": "Informations sur le serveur",
- "MEMBER_COUNT": "nombre de membres du serveur %1",
- "RES_VALID_SERVER": "Vous devez préciser un serveur valide !",
- "ICON_URL": "URL de l'icône du serveur %1",
- "SERVER_NAME": "nom du serveur %1",
- "SERVER_OWNER": "propriétaire du serveur %1",
- "RES_SET_SERVER_NAME_SERVER": "Vous devez préciser un serveur valide à qui changer le nom !",
- "RES_SET_SERVER_NAME_NEW_NICKNAME": "Vous devez préciser un nouveau nom valide pour le serveur !",
- "LABEL_MODIFY_SERVER": "Modifier le serveur",
- "SET_SERVER_NAME": "changer le nom du serveur %1 nouveau nom %2",
- "GET_ROLE_SERVER": "sur le serveur",
- "GET_ROLE": "obtenir le rôle dont le %2 est %1",
- "RES_GET_ROLE_VALUE": "Vous devez préciser un nom ou un identifiant de rôle valide !",
- "RES_GET_SERVER_VALUE": "Vous devez préciser un nom ou un identifiant de serveur valide !",
- "FIND_ROLE": "Trouver un rôle",
- "ROLE_ASSIGNMENT": "Affectation des rôles",
- "RES_GET_MEMBER_VALUE": "Vous devez préciser un nom ou un identifiant de membre valide !",
- "RES_GET_MEMBER_SERVER": "Vous devez préciser un serveur valide sur lequel chercher le membre !",
- "MEMBER_INFORMATIONS": "Informations des membres",
- "RES_VALID_MEMBER": "Vous devez préciser un membre valide !",
- "MEMBER_DISCRIMINATOR": "discriminateur du membre %1",
- "MEMBER_ID": "id du membre %1",
- "MEMBER_TAG": "tag du membre %1",
- "MEMBER_USERNAME": "pseudo du membre %1",
- "MEMBER_IS_BOT": "le membre %1 est un robot",
- "GET_MEMBER": "obtenir le membre dont le %2 est %1 sur le serveur %3",
- "FIND_MEMBER": "Trouver un membre",
- "LABEL_MEMBER_ACTIONS": "Actions sur le membre",
- "LABEL_MESSAGE_CONTEXT": "Contexte du message",
- "SET_MEMBER_NICKNAME": "changer le surnom du membre %1 nouveau surnom %2",
- "RES_SET_MEMBER_NICKNAME_MEMBER": "Vous devez préciser un membre valide à qui changer le surnom !",
- "RES_SET_MEMBER_NICKNAME_NEW_NICKNAME": "Vous devez préciser un nouveau surnom valide pour le membre !",
- "SERVER_BOOST_COUNT": "nombre de boosts du serveur %1",
- "SERVER_BOOST_LEVEL": "niveau de boost du serveur %1",
- "SEND_WAIT_REPLY": "envoyer %1 dans le salon %2 et attendre une réponse du membre %3 pendant (minutes) %4 quand une réponse est reçue %5 si aucune réponse n'est reçue %6",
- "RES_SEND_WAIT_REPLY_VALUE_PARENT": "Ce block ne peut être utilisé que dans un block \"Attendre une réponse\" !",
- "SEND_WAIT_REPLY_VALUE": "réponse du membre",
- "FORMS": "Formulaires",
- "SEND_WAIT_REPLY_EXAMPLE": "Quel est votre prénom ?",
- "REPLY_EXAMPLE": "Salut!",
- "ON_REACT_ADDED": "Quand une réaction est ajoutée",
- "REACT_RELATED_BLOCKS": "Blocks relatifs aux réactions",
- "DETECT_REACT": "Détecter les réactions",
- "REACT_INFORMATIONS": "Information sur la réaction ajoutée/enlevée",
- "REACT_MESSAGE_ID": "ID du message",
- "RES_MUST_BE_IN_ON_REACT": "Ce block ne peut être utilisé que dans un block \"réaction ajoutée\" ou \"réaction enlevée\" !",
- "REACT_EMOJI": "émoji de la réaction",
- "REACT_MEMBER": "membre réagissant",
- "ON_REACT_REMOVED": "Quand une réaction est enlevée",
- "BOT_PING": "ping du bot",
- "BOT_INFORMATIONS": "Informations about the bot",
- "BOT_ACTIONS": "Actions sur le bot",
- "RES_MISSING_GAME": "Vous devez préciser un jeu pour le bot !",
- "SET_BOT_GAME": "définir le jeu du bot à %1",
- "BOT_SERVER_COUNT": "nombre de serveurs du bot",
- "TOOLBOX_E_JOINS": "Arrivées",
- "TOOLBOX_E_MESSAGES": "Messages",
- "TOOLBOX_E_REACTIONS": "Réactions",
- "TOOLBOX_DATABASE": "Base de données",
- "GET_DATA": "obtenir %1 dans la base de données",
- "LABEL_READ_DB": "Lire la base de données",
- "LABEL_UPDATE_DB": "Modifier la base de données",
- "SET_DATA": "définir %1 à %2 dans la base de données",
- "DELETE_DATA": "supprimer %1 de la base de données",
- "HAS_DATA": "%1 existe dans la base de données",
- "ADD_DATA": "ajouter %1 à %2",
- "SUBTRACT_DATA": "soustraire %1 à %2",
- "DETECT_LEAVES": "Détecter les départs",
- "LEAVING_GUILD": "serveur du membre partant",
- "LEAVING_GUILD_RAW": "%1 du serveur du membre partant",
- "LEAVING_MEMBER_INFORMATIONS": "Informations sur le membre",
- "LEAVES_RELATED_BLOCKS": "Blocks relatifs aux départs de membre",
- "ON_MEMBER_LEAVE": "Quand un membre part d'un serveur",
- "RELATED_TO_LEAVE_STRINGS": "Chaînes relatives au départ",
- "TOOLBOX_E_LEAVES": "Départs",
- "RES_MUST_BE_IN_ON_MEMBER_LEAVE": "Ce block ne peut être utilisé que dans un évènement \"Quand un membre part d'un serveur\"",
- "LEAVING_MEMBER_RAW": "%1 du membre partant",
- "WAIT_SECONDS": "attendre %1 secondes",
- "TOOLBOX_OTHER": "Autre",
- "RUN_SAVE_OUTPUT": "faire %1 et sauvegarder le résultat dans %2",
- "TOOLBOX_MESSAGES": "Messages",
- "GET_MESSAGE": "obtenir le message dont l'ID est %1 dans le salon %2",
- "RES_GET_MESSAGE_CHANNEL": "Vous devez préciser un salon valide sur lequel chercher le message!",
- "RES_GET_MESSAGE_VALUE": "Vous devez préciser un identifiant de message valide!",
- "FIND_MESSAGE": "Trouver le message",
- "MESSAGE_INFORMATIONS": "Informations sur le message",
- "CURRENT": "%1 actuelle",
- "HOUR": "heure",
- "MINUTE": "minute",
- "MONTH": "mois",
- "DAY_OF_WEEK": "jour de la semaine",
- "SECOND": "seconde",
- "DATE": "date",
- "FOREVER": "répéter indéfiniement %1 faire %2",
- "YES": "oui",
- "NO": "non",
- "CREATE_CHANNEL": "créer un salon avec comme nom %1 sur le serveur %2 de type %3",
- "CHANNEL_ACTIONS": "Actions sur le salon",
- "TEXT": "textuel",
- "VOICE": "vocal",
- "CATEGORY": "catégorie"
-}
diff --git a/src/locales/fr.js b/src/locales/fr.js
deleted file mode 100644
index 86266b60f..000000000
--- a/src/locales/fr.js
+++ /dev/null
@@ -1,91 +0,0 @@
-import Blockly from "blockly";
-
-import blocklyMessages from "./fr-FR.json";
-
-export const applyBlocklyLocale = () => {
- for(let key in blocklyMessages){
- Blockly.Msg[key] = blocklyMessages[key];
- }
-};
-
-export const websiteMessages = {
- untitled: "Document sans titre",
- help: "Aide",
- load: {
- error: "Le fichier téléversé est corrompu et ne peut pas être chargé par Scratch For Discord..."
- },
- file: {
- title: "Fichier",
- javascript: "Exporter vers Javascript",
- open: "Ouvrir un fichier...",
- save: "Sauvegarder"
- },
- edit: {
- title: "Modifier",
- undo: "Annuler",
- redo: "Rétablir",
- clear: "Nettoyer {blockCount} blocks",
- cleanup: "Réorganiser les blocks",
- cleardb: "Effacer la base de données"
- },
- lang: {
- title: "Langue"
- },
- examples: {
- title: "Exemples",
- confirm: {
- title: "Supprimer les blocks",
- text: "Souhaitez-vous supprimer les blocks du projet actuel avant d'importer l'exemple ?",
- cancel: "Annuler",
- yes: "Oui",
- no: "Non"
- },
- loaded: "Exemple {example} importé avec succès !",
- ping_pong: "Commande ping-pong",
- command_parsing: "Traitement des commandes",
- leveling: "Système d'XP et niveaux"
- },
- download: {
- title: "Télécharger votre bot",
- content: {
- title: "Comment lancer votre bot une fois le bot téléchargé ?",
- unzipFile: "Dézippez le fichier obtenu.",
- node: "Installez NPM et Node.js (cherchez des tutos sur google)",
- start: "Tapez 'npm install' et 'npm start' dans votre terminal",
- done: "Votre bot est lancé!"
- },
- cancel: "Annuler",
- confirm: "Télécharger"
- },
- tour: {
- skip: "Sauter la visite",
- previous: "Précédent",
- next: "Suivant",
- finish: "Finir",
- steps: {
- load_examples: "Importer des exemples pour découvrir Scratch4Discord!",
- run_test: "Testez le fonctionnement de votre bot ici!",
- export_code: "Exportez votre code ici!"
- }
- },
- warnings: {
- login_block: "Le block \"Connexion à Discord\" de la catégorie \"Base\" est obligatoire !"
- },
- run_modal: {
- title: "Appuyez sur démarrer pour tester votre bot!",
- start: "Démarrer le bot",
- stop: "Arrêter le bot",
- invalid_token: "Impossible de se connecter à Discord... Peut-être que le token du bot n'est pas valide !",
- error: "Impossible de se connecter à Discord... Réessayez plus tard!",
- disabled: "⚠️ Cette fonction n'est disponible qu'avec l'application Scratch For Discord (obtenez la {here})",
- here: "ici"
- },
- code_modal: {
- title: "Code JavaScript de votre bot"
- }
-};
-
-export default {
- applyBlocklyLocale,
- websiteMessages
-};
diff --git a/src/locales/pt-BR.json b/src/locales/pt-BR.json
deleted file mode 100644
index c09fb18d0..000000000
--- a/src/locales/pt-BR.json
+++ /dev/null
@@ -1,243 +0,0 @@
-{
- "BASE_BLOCKS": "Blocos de base",
- "MESSAGE_RELATED_BLOCKS": "Bloqueios relacionados a mensagens",
- "REPLY": "responder %1",
- "LOGIN": "Conecte-se ao Discord com o token %1",
- "LOGIN_TOOLTIP": "Conecte seu bot ao Discord. Para obter seu token de bot, vá para https://discord.com/developers/.",
- "ON_MESSAGE": "Quando uma mensagem é recebida",
- "ON_CONNECTED": "Quando o bot está conectado",
- "ON_CONNECTED_TOOLTIP": "Evento emitido quando seu bot está conectado ao Discord.",
- "MESSAGE_ID": "message ID",
- "MESSAGE_CONTENT": "conteudo da mensagem",
- "MESSAGE_AUTHOR": "autor da mensagem",
- "MESSAGE_AUTHOR_RAW": "%1 do autor da mensagem",
- "USERNAME": "apelido",
- "NICKNAME": "sobrenome",
- "GET_GUILD": "encontre servidor %1 usando %2",
- "NAME": "nome",
- "REPLACE": "no texto %1 troque %2 com %3",
- "RES_REPLACE_STRING": "Você precisa me ta um texto para troca!",
- "RES_REPLACE_REPLACE": "Você precisa me fala oque você quer troca no texto!",
- "RES_REPLACE_WITH": "Você precisa me fala com qual vai ser o novo valor!",
- "ADD_ROLE": "adicione cargo %1 do membro %2",
- "INCLUDES": "%1 tem %2",
- "RES_INCLUDES_TEXT": "Você precisa me ta um texto para ver se tem algo nele!",
- "RES_INCLUDES_INCLUDES": "Você precisa me ta um texto para ver se tem no outro texto!",
- "BAN_MEMBER": "banir membro %1",
- "KICK_MEMBER": "kicka membro %1",
- "SEND_MEMBER": "send %1 to member %2",
- "MESSAGE_GUILD": "servidor da mensagem",
- "MESSAGE_CHANNEL": "canal da mensagem",
- "BASIC_BLOCKS": "blocos basicos",
- "ADVANCED_BLOCKS": "blocos avançados",
- "MENTIONED_MEMBER": "membro mensianado",
- "PURGE": "no canal %1 delete %2 memsagens",
- "CHANNEL_MESSAGE_ACTIONS": "Ações nas mensagens do canal",
- "RES_PURGE_AMOUNT": "Você precisa especifica a quantidade de mensagens para deleta!",
- "RES_PURGE_CHANNEL": "Voce precisa especifica o canal!",
- "FOOTER": "footer",
- "THUMBNAIL": "thumbnail",
- "ADMINISTRATOR": "Administrator",
- "DETECT_MESSAGES": "Detectar mensagem",
- "MESSAGE_ACTIONS": "Ações na mensagem",
- "RELATED_TO_MESSAGE_STRINGS": "Strings relacionadas à mensagem",
- "DELETE_MESSAGE": "deleta a mensagem",
- "RES_ADD_REACTION_MISSING_REACTION": "você precisa adiciona um emoji valido !",
- "ADD_REACTION": "adiciona reação %1 para a mensagem",
- "MESSAGE_EMBED": "Message Embed",
- "COLOR": "cor",
- "TITLE": "titulo",
- "MESSAGE": "mensagem",
- "IMAGE": "image",
- "TOOLS": "ferramentas",
- "CHECK_PERMISSIONS": "Verifique as permissões dos membros",
- "MEMBER_HAS_PERMISSION": "o membro %1 tem permissão %2",
- "PERM_CREATE_INSTANT_INVITE": "criar convites instantâneos",
- "PERM_KICK_MEMBERS": "kicka membros",
- "PERM_BAN_MEMBERS": "banir membros",
- "PERM_ADMINISTRATOR": "administrator",
- "PERM_MANAGE_CHANNELS": "gerenciar canais",
- "PERM_MANAGE_GUILD": "gerenciar servidores",
- "PERM_ADD_REACTIONS": "adiciona reação",
- "PERM_VIEW_AUDIT_LOG": "ver registros de auditoria",
- "PERM_PRIORITY_SPEAKER": "Voz Prioritária",
- "PERM_VIEW_CHANNEL": "ver canal",
- "PERM_READ_MESSAGES": "ler mensagens",
- "PERM_SEND_MESSAGES": "mandar mensagens",
- "PERM_SEND_TTS_MESSAGES": "manda TTS mensagens",
- "PERM_MANAGE_MESSAGES": "gerenciar mensagens",
- "PERM_EMBED_LINKS": "embed links",
- "PERM_ATTACH_FILES": "anexar arquivos",
- "PERM_READ_MESSAGE_HISTORY": "ler histórico de mensagens",
- "PERM_MENTION_EVERYONE": "mencionar @everyone",
- "PERM_EXTERNAL_EMOJIS": "ver emojis externos",
- "PERM_USE_EXTERNAL_EMOJIS": "usar emojis externos",
- "PERM_CONNECT": "conectar",
- "PERM_SPEAK": "falar",
- "PERM_MUTE_MEMBERS": "mutar membros",
- "PERM_DEAFEN_MEMBERS": "membros surdos",
- "PERM_MOVE_MEMBERS": "mover membros",
- "PERM_USE_VAD": "usar atividade de voz",
- "PERM_CHANGE_NICKNAME": "troca sobrenome",
- "PERM_MANAGE_NICKNAMES": "gerenciar sobrenomes",
- "PERM_MANAGE_ROLES": "gerenciar cargos",
- "PERM_MANAGE_WEBHOOKS": "gerenciar webhooks",
- "PERM_MANAGE_EMOJIS": "Blocos relacionados a associações de membros",
- "DETECT_JOINS": "Detectar entrada",
- "ON_MEMBER_JOIN": "Quando um membro se junta a um servidor",
- "JOINING_MEMBER_INFORMATIONS": "Informações sobre o membro",
- "JOINING_MEMBER": "membro entrado",
- "RELATED_TO_JOIN_STRINGS": "Strings relacionadas a entrada",
- "JOINING_MEMBER_RAW": "%1 do membro que entrou",
- "JOINING_GUILD": "servidor onde o membro entrou",
- "TEMPORARILY": "Temporariamente",
- "HOURS": "horas",
- "REASON": "motivo",
- "DURING_HOURS": "durante",
- "WITH_REASON": "com o motivo",
- "RES_MUST_BE_IN_ON_MESSAGE": "Este bloco só pode ser usado em um \"Quando uma mensagem é recebida\" evento",
- "RES_MISSING_CONTENT": "Você deve especificar um conteúdo válido para responder!",
- "RES_MISSING_MEMBER_HAS_PERMISSION": "Você deve especificar um membro válido para verificar as permissões!",
- "RES_MUST_BE_IN_ON_MEMBER_JOIN": "Este bloco só pode ser usado em um \"Quando um membro se junta a um servidor\" evento",
- "RES_ADD_ROLE_MISSING_ROLE": "Você deve especificar um nome ou ID de um cargo válido para adicionar!",
- "RES_ADD_ROLE_MISSING_MEMBER": "você teve especifica um membro valido para adiciona o cargo nele!",
- "RES_REMOVE_ROLE_MISSING_ROLE": "Você deve especificar um nome ou ID de um cargo válido para remove",
- "RES_REMOVE_ROLE_MISSING_MEMBER": "você teve especifica um membro valido para remove o cargo nele!",
- "RES_KICK_MEMBER_MISSING_MEMBER": "você teve especifica um membro valido para ser kickado!",
- "RES_BAN_MEMBER_MISSING_MEMBER": "você teve especifica um membro valido para ser banido!",
- "RES_SEND_MEMBER_MISSING_MEMBER": "You must specify a valid member to send the message to!",
- "MANDATORY_BLOCKS": "Blocos obrigatorios",
- "FIND_CHANNEL": "Encontre um canal",
- "SEND_CHANNEL_LABEL": "Envie uma mensagem no canal encontrado",
- "GET_CHANNEL": "pegue o salão com %2 igual a %1",
- "RES_MISSING_CHANNEL_VALUE": "você teve especifica um nome ou id de um canal valido!",
- "RES_SEND_CHANNEL_CONTENT": "você teve especifica um conteudo para manda!",
- "RES_SEND_CHANNEL_CHANNEL": "Você deve especificar um canal para enviar o conteúdo!",
- "SEND_CHANNEL": "envie %1 no canal %2",
- "TOOLBOX_LOGIC": "Logica",
- "TOOLBOX_LOOPS": "Loops",
- "TOOLBOX_MATH": "Matematica",
- "TOOLBOX_TEXT": "Texto",
- "TOOLBOX_LISTS": "Listas",
- "TOOLBOX_COLORS": "Cors",
- "TOOLBOX_VARIABLES": "Variaveis",
- "TOOLBOX_FUNCTIONS": "Funções",
- "TOOLBOX_CHANNELS": "Canais",
- "TOOLBOX_ACTIONS": "Ações",
- "TOOLBOX_BASE": "Base",
- "TOOLBOX_SERVER": "Servers",
- "TOOLBOX_ROLES": "Cargos",
- "FIND_SERVER": "Encontre um servidor",
- "GET_SERVER": "encontre um servidor com %2 igual a %1",
- "RES_GET_SERVER_SERVER": "você precisa especifica um nome ou id de um servidor valido!",
- "LABEL_SERVER_INFOS": "Informações sobre o servidor",
- "MEMBER_COUNT": "numero de membros no servidor %1",
- "RES_VALID_SERVER": "você precisa coloca um servidor valido!",
- "ICON_URL": "icone url do servidor %1",
- "SERVER_NAME": "nome do servidor %1",
- "SERVER_OWNER": "dono do servidor %1",
- "RES_SET_SERVER_NAME_SERVER": "você precisa especifica um servidor valido!",
- "RES_SET_SERVER_NAME_NEW_NICKNAME": "você precisa especifica um nome novo valido!",
- "LABEL_MODIFY_SERVER": "Modifique o servidor",
- "SET_SERVER_NAME": "troque o nome do servidor %1 nome novo %2",
- "GET_ROLE_SERVER": "no servidor",
- "GET_ROLE": "pegue o cargo com %2 igual a %1",
- "RES_GET_ROLE_VALUE": "você precisa especifica um nome ou id de um cargo valido!",
- "RES_GET_SERVER_VALUE": "você precisa especifica um nome ou id de um servidor valido!",
- "FIND_ROLE": "Encontre um cargo",
- "ROLE_ASSIGNMENT": "Atribuição de cargos",
- "FIND_MEMBER": "Encontre um membro",
- "GET_MEMBER": "encontre um membro com %2 igual a %1 no servidor %3",
- "INIT_TOOLTIP": "Permite que você use blocos Discord!",
- "JOINING_GUILD_RAW": "%1 do membro que entrou no servidor",
- "LABEL_MEMBER_ACTIONS": "Ações no membro",
- "LABEL_MESSAGE_CONTEXT": "Contexto da mensagem",
- "MESSAGE_CHANNEL_RAW": "%1 do canal da mensagem",
- "MESSAGE_GUILD_RAW": "%1 do servidor da mensagem",
- "RES_GET_MEMBER_SERVER": "você precisa especifica um servidor valido onde o membro esta!",
- "RES_GET_MEMBER_VALUE": "você precisa especifica um nome ou id de um membro valido!",
- "TOOLBOX_MEMBERS": "Membro",
- "MEMBER_INFORMATIONS": "Informações dos membros",
- "RES_VALID_MEMBER": "Você deve especificar um membro válido!",
- "MEMBER_DISCRIMINATOR": "discriminador de membro %1",
- "MEMBER_ID": "id do membro %1",
- "MEMBER_TAG": "tag do membro %1",
- "MEMBER_USERNAME": "sobrenome do membro %1",
- "MEMBER_IS_BOT": "membro %1 é um bot",
- "SET_MEMBER_NICKNAME": "troque o apelido %1 novo apelido %2",
- "RES_SET_MEMBER_NICKNAME_MEMBER": "Você deve especificar um membro válido para alterar o apelido",
- "RES_SET_MEMBER_NICKNAME_NEW_NICKNAME": "Você deve especificar um novo apelido válido para o membro!",
- "SERVER_BOOST_COUNT": "numero de impulsos no servidor %1",
- "SERVER_BOOST_LEVEL": "nível de impulso do servidor %1",
- "SEND_WAIT_REPLY": "envie %1 no canal %2 e espere por uma resposta do membro %3 durante (minutos) %4 quando uma resposta é recebida %5 se nenhuma responde vo recebida %6",
- "RES_SEND_WAIT_REPLY_VALUE_PARENT": "Este bloco só pode ser usado em um bloco \"Aguardar uma resposta\"!",
- "SEND_WAIT_REPLY_VALUE": "resposta do membro",
- "FORMS": "Formulários",
- "SEND_WAIT_REPLY_EXAMPLE": "Qual é o seu nome??",
- "REPLY_EXAMPLE": "Hey!",
- "ON_REACT_ADDED": "Quando uma reação é adicionada",
- "REACT_RELATED_BLOCKS": "Blocos relacionados a reações",
- "DETECT_REACT": "Eu estou escrevendo, estou escrevendo",
- "REACT_INFORMATIONS": "Informações sobre a reação adicionada / removida",
- "REACT_MESSAGE_ID": "ID da mensagem de reação",
- "RES_MUST_BE_IN_ON_REACT": "Este bloco só pode ser usado em um bloco de \"reação adicionada\" ou em um bloco \"reação removida\"!",
- "REACT_EMOJI": "emoji da reação",
- "REACT_MEMBER": "membro que reaciu",
- "ON_REACT_REMOVED": "Quando uma reação é removida",
- "BOT_PING": "bot ping",
- "BOT_INFORMATIONS": "Informação do bot",
- "BOT_ACTIONS": "Ações no bot",
- "RES_MISSING_GAME": "Você deve especificar um jogo para o bot!",
- "SET_BOT_GAME": "definir o jogo de bot para %1",
- "BOT_SERVER_COUNT": "contagem de servidores bot",
- "TOOLBOX_E_JOINS": "Entradas",
- "TOOLBOX_E_MESSAGES": "Mensagems",
- "TOOLBOX_E_REACTIONS": "Reações",
- "TOOLBOX_DATABASE": "Banco de dados",
- "GET_DATA": "pegue %1 do banco de dados",
- "LABEL_READ_DB": "banco de dados",
- "LABEL_UPDATE_DB": "atualiza banco de dados",
- "SET_DATA": "setar %1 para %2 no banco de dados",
- "DELETE_DATA": "deletar %1 banco de dados",
- "HAS_DATA": "%1 existe no banco de dados",
- "ADD_DATA": "adiciona %1 para %2",
- "SUBTRACT_DATA": "remover %1 do %2",
- "DETECT_LEAVES": "Detectar licenças",
- "LEAVING_GUILD": "deixando o servidor membro",
- "LEAVING_GUILD_RAW": "%1 do servidor do membro que está saindo",
- "LEAVING_MEMBER_INFORMATIONS": "Informações sobre o membro",
- "LEAVES_RELATED_BLOCKS": "Bloqueios relacionados às saídas de membros",
- "ON_MEMBER_LEAVE": "Quando um membro sai de um servidor",
- "RELATED_TO_LEAVE_STRINGS": "Strings relacionados a saida",
- "TOOLBOX_E_LEAVES": "Saidas",
- "RES_MUST_BE_IN_ON_MEMBER_LEAVE": "Este bloco só pode ser usado em um evento \"Quando um membro deixa um servidor \"",
- "LEAVING_MEMBER_RAW": "%1 do membro que saiu do servidor",
- "WAIT_SECONDS": "espere %1 segundos",
- "TOOLBOX_OTHER": "Outros",
- "STARTS_WITH": "%1 começa com %2",
- "RUN_SAVE_OUTPUT": "faça %1 e salve a saída em %2",
- "TOOLBOX_MESSAGES": "mensagens",
- "GET_MESSAGE": "obter mensagem com ID igual a %1 no canal %2",
- "RES_GET_MESSAGE_CHANNEL": "Você deve especificar um canal válido no qual a mensagem é!",
- "RES_GET_MESSAGE_VALUE": "Você deve especificar um ID de mensagem válido!",
- "FIND_MESSAGE": "Encontre a mensagem",
- "MESSAGE_INFORMATIONS": "Informações sobre a mensagem",
- "CURRENT": "%1 atual",
- "HOUR": "hora",
- "MINUTE": "minuto",
- "MONTH": "mês",
- "DAY_OF_WEEK": "dia da semana",
- "SECOND": "segundo",
- "DATE": "data",
- "FOREVER": "repita para sempre %1 faz %2",
- "YES": "sim",
- "NO": "não",
- "CREATE_CHANNEL": "crie um canal com o nome %1 no servidor %2 do tipo %3",
- "CHANNEL_ACTIONS": "Ações para o canal",
- "TEXT": "texto",
- "VOICE": "voz",
- "CATEGORY": "categoria",
- "NEWLINE": "linha nova",
- "REMOVE_ROLE": "tira o cargo %1 do membro %2",
- "JOINS_RELATED_BLOCKS": "Blocos relacionados a entrada de membros"
-}
diff --git a/src/locales/pt.js b/src/locales/pt.js
deleted file mode 100644
index aba7198e9..000000000
--- a/src/locales/pt.js
+++ /dev/null
@@ -1,91 +0,0 @@
-import Blockly from "blockly";
-
-import blocklyMessages from "./pt-BR.json";
-
-export const applyBlocklyLocale = () => {
- for(let key in blocklyMessages){
- Blockly.Msg[key] = blocklyMessages[key];
- }
-};
-
-export const websiteMessages = {
- untitled: "Documento sem nome",
- help: "Ajuda",
- load: {
- error: "O arquivo enviado está corrompido e não pode ser carregado pelo Scratch For Discord..."
- },
- file: {
- title: "Arquivo",
- javascript: "Exporta para javascirpt",
- open: "abrir arquivo...",
- save: "Salva"
- },
- edit: {
- title: "Edita",
- undo: "desfazer",
- redo: "refazer",
- clear: "deleta {blockCount} blocos",
- cleanup: "limpa blocos",
- cleardb: "limpa database"
- },
- lang: {
- title: "linguagem"
- },
- examples: {
- title: "Exemplos",
- confirm: {
- title: "Deleta os blocos atual?",
- text: "Você gostaria de remover os blocos do projeto atual antes de importar o exemplo?",
- cancel: "Cancela",
- yes: "Sim",
- no: "Não"
- },
- loaded: "Exemplo {example} importando com sucesso!",
- ping_pong: "comando ping-pong",
- command_parsing: "handler de comandos",
- leveling: "XP e sistema de níveis"
- },
- download: {
- title: "Instale o seu bot",
- content: {
- title: "Como iniciar o seu bot depois de baixado?",
- unzipFile: "Descompacte o arquivo baixado.",
- node: "Instale o NPM e o Node.js (pesquise tutoriais no Google)",
- start: "Execute 'npm install' e 'npm start' em um terminal",
- done: "Seu bot foi iniciado!"
- },
- cancel: "Cancela",
- confirm: "Instala"
- },
- tour: {
- skip: "Pular tour",
- previous: "Anterior",
- next: "Próximo",
- finish: "Termina",
- steps: {
- load_examples: "Importe exemplos para descobrir Scratch4Discord!",
- run_test: "Teste as funcionalidades do seu bot aqui!",
- export_code: "Exporte seu código aqui!"
- }
- },
- warnings: {
- login_block: "O bloco \"Conectar ao Discord\" na categoria \"Base\" é obrigatório."
- },
- run_modal: {
- title: "Clique em Iniciar para testar seu bot!",
- start: "Inicie o bot",
- stop: "Pare o bot",
- invalid_token: "Unable to connect to Discord... Maybe the bot's token isn't valid!",
- error: "Incapaz de conectar ao Discord ... Talvez o token do bot não seja válido!",
- disabled: "⚠️ Este recurso está disponível apenas usando o aplicativo Scratch For Discord (pegue ele {here})",
- here: "aqui"
- },
- code_modal: {
- title: "Código JavaScript do seu bot"
- }
-};
-
-export default {
- applyBlocklyLocale,
- websiteMessages
-};
diff --git a/src/main.js b/src/main.js
index 6599b9e97..b76ee7dda 100755
--- a/src/main.js
+++ b/src/main.js
@@ -26,17 +26,11 @@ Vue.config.productionTip = false;
Vue.config.ignoredElements = ["field","block","category","xml","mutation","value","sep"];
import blocklyLocaleEN from "blockly/msg/en";
-import blocklyLocaleFR from "blockly/msg/fr";
-import blocklyLocalePT from "blockly/msg/pt";
import customLocaleEN from './locales/en';
-import customLocaleFR from './locales/fr';
-import customLocalePT from './locales/pt';
const messages = {
- en: customLocaleEN.websiteMessages,
- fr: customLocaleFR.websiteMessages,
- pt: customLocalePT.websiteMessages
+ en: customLocaleEN.websiteMessages
};
const i18n = new Vuei18n({
@@ -95,24 +89,6 @@ Vue.mixin({
// Change website languages (navbar, etc...)
this.$root.$i18n.locale = "en";
break;
- case "fr":
- // Change Blockly language for default blocks
- Blockly.setLocale(blocklyLocaleFR);
- // Change Blockly language for custom blocks
- customLocaleFR.applyBlocklyLocale();
- // Change website languages (navbar, etc...)
- this.$root.$i18n.locale = "fr";
- break;
- case "pt":
- // Change Blockly language for default blocks
- Blockly.setLocale(blocklyLocalePT);
- // Change Blockly language for custom blocks
- customLocalePT.applyBlocklyLocale();
- // Change website languages (navbar, etc...)
- this.$root.$i18n.locale = "pt";
- break;
- default:
- break;
}
},
getWorkspaceCode(){
@@ -121,6 +97,8 @@ Vue.mixin({
(async()=>{
const Discord = require("discord.js");
const Database = require("easy-json-database");
+ const os = require("os");
+ const process = require("process");
const devMode = typeof __E_IS_DEV !== "undefined" && __E_IS_DEV;
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
const s4d = {
@@ -137,7 +115,7 @@ Vue.mixin({
};
s4d.client = new s4d.Discord.Client({
intents: [Object.values(s4d.Discord.Intents.FLAGS).reduce((acc, p) => acc | p, 0)],
- partials: ["REACTION"]
+ partials: ["REACTION", "CHANNEL"]
});
${Blockly.JavaScript.workspaceToCode(this.$store.state.workspace)}
diff --git a/src/prompt.js b/src/prompt.js
index 8ce7de381..78f44a738 100755
--- a/src/prompt.js
+++ b/src/prompt.js
@@ -39,6 +39,7 @@ Blockly.prompt = function(msg, defaultValue, callback) {
},
showCancelButton: true,
confirmButtonText: "Look up",
+ ADD_START_HATS: true,
showLoaderOnConfirm: true,
allowOutsideClick: () => !Swal.isLoading()
}).then(result => {
diff --git a/src/toolbox.js b/src/toolbox.js
index 5e0ad8433..f91c471c0 100644
--- a/src/toolbox.js
+++ b/src/toolbox.js
@@ -392,6 +392,7 @@ export default (Blockly) => {
+
@@ -399,6 +400,8 @@ export default (Blockly) => {
+
+
@@ -436,6 +439,19 @@ export default (Blockly) => {
+
+
+ FALSE
+
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
+ {{ REPLY_EXAMPLE }}
@@ -450,9 +466,155 @@ export default (Blockly) => {
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
+ FALSE
+
+
+
+
+
+
+ 👍
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
+ FALSE
+
+
+
+
+
+
+ 👍
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ FALSE
+
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
+
+
+
+ 👍
+
+
+
+
@@ -501,7 +663,14 @@ export default (Blockly) => {
-
+
+
+
+ {{ REPLY_EXAMPLE }}
+
+
+
+
@@ -528,6 +697,7 @@ export default (Blockly) => {
+
@@ -535,6 +705,8 @@ export default (Blockly) => {
+
+
@@ -544,6 +716,8 @@ export default (Blockly) => {
+
+