Skip to content

Commit 6851f6d

Browse files
committed
Release 1.0.9
Versão feita as pressas, leia a changelog para detalhes: https://github.com/KillovSky/iris/blob/main/.github/CHANGELOG.md
1 parent 212815d commit 6851f6d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+2051
-580
lines changed

.github/CHANGELOG.md

+43-4
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,49 @@ A voz ecoou seu último suspiro.
3131
## Sumário de Atualizações
3232

3333
<details>
34-
<summary><code>1.0.9 - ? <strong>[? RELEASE]</strong></code></summary>
35-
<!-- Vai um mistério ai amigo? -->
34+
<summary><code>1.0.9 - 28/11/2023 🍵 <strong>[TEACUP RELEASE]</strong></code></summary>
35+
<!-- Enquanto todos lutam pela sobrevivência e comida, e para terem mais um dia sem virar o almoço de um titã, Levi se senta em casa e pensa mais uma vez em como seria bom abrir uma loja de chá em um mundo lindo, limpo e sem violência. -->
3636

37-
1. Em produção.
37+
### Mural
38+
- Versão feita as pressas por motivos de mudanças na equipe de desenvolvimento da Íris, ainda não é tudo que a versão anterior almejava ter e não houve muito tempo para checagem, mas deve funcionar adequadamente ainda assim.
39+
40+
- A próxima atualização pode ser considera uma parte 2 desta, não tendo um nome de relase diferente.
41+
42+
### Novidades
43+
1. **Toolbox**
44+
- Uma ferramenta linda, mas experimental, que permite automatizar tarefas como atualizações, instalação de programas e demais.
45+
2. **Revisão**
46+
- Feito mais uma parte da revisão da versão anterior, ainda não completo no entanto.
47+
3. **Comando**
48+
- Inserido um comando para mostrar todos os aliases de comandos (/allcmd).
49+
4. **Ping**
50+
- Inserido nome da release no comando ping.
51+
5. **Velocidade**
52+
- Aprimorado ainda mais a velocidade.
53+
6. **Certificado**
54+
- Novo certificado para o site localhost da Íris, se ainda não estiver usando HTTPS, instale o arquivo 'RootCA.crt' no seu sistema.
55+
7. **Template**
56+
- O template de como criar comandos foi atualizado.
57+
8. **Funções**
58+
- Algumas funções foram refeitas como parte da revisão geral.
59+
9. **Git Ignore**
60+
- Atualizei o gitignore para não upar ou deixar de upar arquivos importantes.
61+
62+
### Correções
63+
1. **Sticker**
64+
- Corrigido erro que fazia o sticker não ser executado por falta de mídia.
65+
2. **WhatsApp Web**
66+
- Corrigido erro que fazia stickers não renderizarem no WhatsApp Web.
67+
3. **Construct**
68+
- Corrigido erro de não retornar a mensagem base no caso de falhas.
69+
4. **NASA**
70+
- Inserido imagem padrão, caso a NASA não envie uma.
71+
5. **YouTube**
72+
- Corrigido o download de Shorts no YouTube, note que alguns videos ainda não podem ser baixados por questões do YouTube.
73+
74+
### Removido
75+
1. **Códigos**
76+
- Diversos comentarios e códigos sem uso.
3877

3978
</details>
4079

@@ -47,7 +86,7 @@ A voz ecoou seu último suspiro.
4786

4887
- Essa versão tem tanta, **TANTA COISA**, que não sei nem descrever adequadamente o quão imensa e númerosa ela é, diversas coisas podem ter sido esquecidas de ser inseridas nessa changelog, e se houver novos erros devido a alguma coisa que mexi, informe para que eu possa realizar a correção de forma urgente.
4988

50-
### Melhorias
89+
### Novidades
5190
1. **Documentação**
5291
- Atualizei as documentações de guia, contribuição, segurança, código de condulta e tudo mais.
5392
2. **Website**

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -148,10 +148,11 @@ lib/Backups/*
148148
lib/Sessions/*
149149
!lib/Backups/readme.txt
150150
!lib/Sessions/readme.txt
151-
!lib/Databases/Informations/Default.json
151+
!lib/Databases/Informations/.readme.txt
152152
MessageTypes
153153
NASA_IMAGES
154154
package-lock.json
155+
.vscode
155156

156157
# managed
157158
**.data.json

lib/Commands/Chess/index.js

+15-8
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,9 @@ const inMemoryGame = {
2121
/* Realiza funções de pós finalização */
2222
function postResults(response) {
2323
/* Verifica se pode resetar a envInfo */
24-
if ((envInfo.settings.finish.value === true)
25-
|| (envInfo.settings.ender.value === true
26-
&& envInfo.results.success === false
27-
)
24+
if (
25+
envInfo.settings.finish.value === true
26+
|| (envInfo.settings.ender.value === true && envInfo.results.success === false)
2827
) {
2928
/* setTimeout para poder retornar */
3029
setTimeout(() => {
@@ -55,8 +54,16 @@ function echoError(error) {
5554

5655
/* Define se pode printar erros */
5756
if (envInfo.settings.error.value === true) {
58-
/* Printa o erro */
59-
console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
57+
/* Define se vai printar inteiro */
58+
const showError = config?.fullError?.value || true;
59+
60+
/* Se pode printar o erro inteiro */
61+
if (showError) {
62+
/* Só joga o erro na tela */
63+
console.error(error);
64+
65+
/* Se não, formata e printa */
66+
} else console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
6067
}
6168

6269
/* Retorna o erro */
@@ -127,10 +134,10 @@ async function checkGaming(chessg, kill, chatId, gameCreator, quoteThis, nowPlay
127134
inMemoryGame.score[rivalPlayer].lost += 1;
128135

129136
/* Ganha icoins */
130-
Indexer('sql').update('leveling', userPlayer, chatId, 'coin', envInfo.parameters.coinsWin.value).value;
137+
Indexer('sql').update('leveling', userPlayer, chatId, 'coin', envInfo.parameters.coinsWin.value);
131138

132139
/* Perde icoins */
133-
Indexer('sql').update('leveling', rivalPlayer, chatId, 'coin', envInfo.parameters.coinsLost.value).value;
140+
Indexer('sql').update('leveling', rivalPlayer, chatId, 'coin', envInfo.parameters.coinsLost.value);
134141

135142
/* Define o dialogo */
136143
dialogue = language(region, 'Games', 'Victory', true, true, { gameend: result, winner: userPlayer.replace(/@s.whatsapp.net/gi, ''), looser: rivalPlayer.replace(/@s.whatsapp.net/gi, '') });

lib/Commands/Chess/utils.json

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "chess",
3-
"description": "O moderno sistema de jogo de xadrez.",
3+
"description": "Criar, jogar e organizar um lindo jogo de xadrez por posição.",
44
"usage": {
55
"general": "[Prefix][Comando] [-Play/-Cancel/-Create/-Board/-Placar/-Moves/-Fen/-Raw/-Pgn] [Move/@User/Mensagem] [@User/Mensagem]",
66
"examples": [
@@ -34,11 +34,14 @@
3434
"developer": "KillovSky",
3535
"files": {
3636
"index.js": "Sistema que faz a coleta das informações e envio.",
37-
"utils.json": "Dados de fábrica da envInfo."
37+
"utils.json": "Dados de fábrica da envInfo.",
38+
"chess.png": "Imagem de ajuda do xadrez."
3839
},
3940
"modules": {
4041
"fs": "Leitura de diretórios e arquivos.",
4142
"path": "Para inserção do local na envInfo.",
43+
"wa-sticker-formatter": "Mandar os tabuleiros como sticker.",
44+
"chess.js": "Para controlar o jogo de xadrez e suas regras.",
4245
"../../Dialogues/index": "Funções que retornam os diálogos necessários.",
4346
"../../index'": "Para rodar funções de outros arquivos."
4447
},

lib/Commands/Default/index.js

+24-9
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@ let commandFound = false;
1414
/* Realiza funções de pós finalização */
1515
function postResults(response) {
1616
/* Verifica se pode resetar a envInfo */
17-
if ((envInfo.settings.finish.value === true)
18-
|| (envInfo.settings.ender.value === true
19-
&& envInfo.results.success === false
20-
)
17+
if (
18+
envInfo.settings.finish.value === true
19+
|| (envInfo.settings.ender.value === true && envInfo.results.success === false)
2120
) {
2221
/* setTimeout para poder retornar */
2322
setTimeout(() => {
@@ -48,8 +47,16 @@ function echoError(error) {
4847

4948
/* Define se pode printar erros */
5049
if (envInfo.settings.error.value === true) {
51-
/* Printa o erro */
52-
console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
50+
/* Define se vai printar inteiro */
51+
const showError = config?.fullError?.value || true;
52+
53+
/* Se pode printar o erro inteiro */
54+
if (showError) {
55+
/* Só joga o erro na tela */
56+
console.error(error);
57+
58+
/* Se não, formata e printa */
59+
} else console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
5360
}
5461

5562
/* Retorna o erro */
@@ -102,6 +109,7 @@ async function caseDefault(
102109
isOwner,
103110
isCmd,
104111
prefix,
112+
allCommands,
105113
argl,
106114
quoteThis,
107115
arg,
@@ -117,7 +125,7 @@ async function caseDefault(
117125
}
118126

119127
/* Switch para os comandos, para saber mais leia os tutoriais */
120-
/* Caso queira tornar o uso de comandos sem prefix insensive... */
128+
/* Caso queira tornar o uso de comandos sem prefix insensitivo... */
121129
/* ...Adicione .toLowerCase() no commandFound da switch abaixo */
122130
/* eslint-disable-next-line padded-blocks */
123131
switch (commandFound) {
@@ -178,7 +186,7 @@ async function caseDefault(
178186
break;
179187

180188
/*
181-
Esse sistema permite obter variaveis do sistema
189+
Esse sistema permite obter variáveis do sistema
182190
Evite mexer nos parâmetros deste, pois é perigoso
183191
*/
184192
case caseChecker('getvar', true, isCmd):
@@ -189,7 +197,7 @@ async function caseDefault(
189197
break;
190198

191199
/*
192-
Case do menu, ele é autoconstruido usando Bash Scripting.
200+
Case do menu, ele é autoconstruído usando Bash Scripting.
193201
Alguns comandos, como o caso desses em formato de case...
194202
...Não aparecerão no menu
195203
*/
@@ -199,6 +207,13 @@ async function caseDefault(
199207
}, { quoted: quoteThis });
200208
break;
201209

210+
/* Case do allCommands, retorna todos os comandos e alias */
211+
case caseChecker('allcmd', true, isCmd):
212+
envInfo.results.value = await kill.sendMessage(chatId, {
213+
text: allCommands.sort().join('\n'),
214+
}, { quoted: quoteThis });
215+
break;
216+
202217
/*
203218
Default, não insira nada fora do if...
204219
As mensagens que NÃO são comandos caem fora do if!

lib/Commands/Default/utils.json

+11-10
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
{
2-
"name": "Default",
3-
"description": "Sistema de comandos sem prefix e serviço de compatibilidade para comandos de versões antigas da Íris, além de sistema para iniciantes poderem programar mais facilmente.",
2+
"name": "standard",
3+
"description": "Executar o serviço de compatibilidade para uso, criação e edição de comandos similares a versões antigas da Íris (OpenWA).",
44
"usage": {
55
"general": "[RESTRITO] - Verifique o 'examples' para usos inseguros.",
66
"examples": [
7-
"Default.env()",
8-
"Default.execute()",
9-
"Default.env().functions.execute.value()",
10-
"Default.env().functions.revert.value()"
7+
"standard.env()",
8+
"standard.execute()",
9+
"standard.env().functions.execute.value()",
10+
"standard.env().functions.revert.value()"
1111
]
1212
},
1313
"license": "MIT",
1414
"helps": [
15-
"Você pode mudar os parâmetros da exports enviando o valor da Object que deseja editar ao resetar, por exemplo → Default.reset({ name: 'Body'}) ← Isso mudaria o module de Tree para Body, o uso então passaria ser: → Body.funcão ← Isso também permite que você edita a função usando o mesmo método.",
16-
"Você pode mudar o que os códigos rodam, em tempo real, basta usar a 'env', por exemplo → Default.env().name = 'Body' ← Mas este método não atualizará o sistema, somente a Object, os sistemas permanecem intactos.",
17-
"Você pode configurar o tempo de reset dos resultados ou se eles devem ser resetados usando a env, por exemplo → Default.env().settings.wait = 10000 ← Isso mudaria o tempo de espera para 10 segundos, o tempo deve ser em milissegundos.",
15+
"Você pode mudar os parâmetros da exports enviando o valor da Object que deseja editar ao resetar, por exemplo → standard.reset({ name: 'Body'}) ← Isso mudaria o module de Tree para Body, o uso então passaria ser: → Body.funcão ← Isso também permite que você edita a função usando o mesmo método.",
16+
"Você pode mudar o que os códigos rodam, em tempo real, basta usar a 'env', por exemplo → standard.env().name = 'Body' ← Mas este método não atualizará o sistema, somente a Object, os sistemas permanecem intactos.",
17+
"Você pode configurar o tempo de reset dos resultados ou se eles devem ser resetados usando a env, por exemplo → standard.env().settings.wait = 10000 ← Isso mudaria o tempo de espera para 10 segundos, o tempo deve ser em milissegundos.",
1818
"Alguém lê essas dicas? Se sim, torne-se um programador, ler os tutoriais é de suma importância e poucos desenvolvedores o fazem...",
1919
"Existem infinitas formas de uso secretas, explore os códigos para descobrir os mistérios dos sistemas!",
2020
"Todas as funções tem valores padrão, então você não sofrerá erros por esquecer de enviar um parâmetro ou similar."
@@ -35,7 +35,8 @@
3535
"modules": {
3636
"fs": "Leitura de diretórios e arquivos.",
3737
"path": "Para obter o nome da pasta.",
38-
"../../../index": "Para rodar funções de outros arquivos."
38+
"../../../index": "Para rodar funções de outros arquivos.",
39+
"../../Dialogues": "Para puxar dialogos de determinado idioma."
3940
},
4041
"functions": {
4142
"ambient": {

lib/Commands/Everyone/index.js

+14-6
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@ let envInfo = JSON.parse(fs.readFileSync(`${__dirname}/utils.json`));
1414
/* Realiza funções de pós finalização */
1515
function postResults(response) {
1616
/* Verifica se pode resetar a envInfo */
17-
if ((envInfo.settings.finish.value === true)
18-
|| (envInfo.settings.ender.value === true
19-
&& envInfo.results.success === false
20-
)
17+
if (
18+
envInfo.settings.finish.value === true
19+
|| (envInfo.settings.ender.value === true && envInfo.results.success === false)
2120
) {
2221
/* setTimeout para poder retornar */
2322
setTimeout(() => {
@@ -48,8 +47,16 @@ function echoError(error) {
4847

4948
/* Define se pode printar erros */
5049
if (envInfo.settings.error.value === true) {
51-
/* Printa o erro */
52-
console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
50+
/* Define se vai printar inteiro */
51+
const showError = config?.fullError?.value || true;
52+
53+
/* Se pode printar o erro inteiro */
54+
if (showError) {
55+
/* Só joga o erro na tela */
56+
console.error(error);
57+
58+
/* Se não, formata e printa */
59+
} else console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
5360
}
5461

5562
/* Retorna o erro */
@@ -114,6 +121,7 @@ async function tagEveryone(
114121

115122
/* Menu de ajuda normal */
116123
} else if (arks.includes('--help')) {
124+
/* Não inclui informações secretas */
117125
envInfo.results.value = await kill.sendMessage(chatId, { text: language(region, 'Helper', 'User', true, true, envInfo) }, { quoted: quoteThis });
118126

119127
/* Se dono, admin, mod ou pode rodar */

lib/Commands/Everyone/utils.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "everyone",
3-
"description": "Realiza o envio de uma mensagem que marca todos do local.",
3+
"description": "Realizar o envio de uma mensagem que marca todos do local.",
44
"usage": {
55
"general": "[Prefix][Alias] [Mensagem|Image|Audio|Contact|Document|Video|Location|Sticker]",
66
"examples": [
@@ -38,6 +38,7 @@
3838
"fs": "Leitura de diretórios e arquivos.",
3939
"path": "Para inserção do local na envInfo.",
4040
"../../Dialogues/index": "Funções que retornam os diálogos necessários.",
41+
"../../index": "Adquirir funções de outros arquivos",
4142
"wa-sticker-formatter": "Converte os stickers em buffer para enviar no Baileys."
4243
},
4344
"functions": {

lib/Commands/Handlers/index.js

+13-6
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,9 @@ let envInfo = JSON.parse(fs.readFileSync(`${__dirname}/utils.json`));
1212
/* Realiza funções de pós finalização */
1313
function postResults(response) {
1414
/* Verifica se pode resetar a envInfo */
15-
if ((envInfo.settings.finish.value === true)
16-
|| (envInfo.settings.ender.value === true
17-
&& envInfo.results.success === false
18-
)
15+
if (
16+
envInfo.settings.finish.value === true
17+
|| (envInfo.settings.ender.value === true && envInfo.results.success === false)
1918
) {
2019
/* setTimeout para poder retornar */
2120
setTimeout(() => {
@@ -46,8 +45,16 @@ function echoError(error) {
4645

4746
/* Define se pode printar erros */
4847
if (envInfo.settings.error.value === true) {
49-
/* Printa o erro */
50-
console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
48+
/* Define se vai printar inteiro */
49+
const showError = config?.fullError?.value || true;
50+
51+
/* Se pode printar o erro inteiro */
52+
if (showError) {
53+
/* Só joga o erro na tela */
54+
console.error(error);
55+
56+
/* Se não, formata e printa */
57+
} else console.log('\x1b[31m', `[${path.basename(__dirname)} #${envInfo.parameters.code.value || 0}] →`, `\x1b[33m${envInfo.parameters.message.value}`);
5158
}
5259

5360
/* Retorna o erro */

0 commit comments

Comments
 (0)