Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Réécriture complète de la structure du projet #178

Merged
merged 106 commits into from
Apr 3, 2023
Merged

Réécriture complète de la structure du projet #178

merged 106 commits into from
Apr 3, 2023

Conversation

Unarray
Copy link
Member

@Unarray Unarray commented Feb 25, 2023

Objectifs de la PR :

  • Retirer toute les classes du projet pour plus être orienté vers de la programmation fonctionnelle
  • Créer un système d'auto-loading beaucoup plus propre avec des fichiers séparer les uns des autres
  • Utilisation d'arrows functions a la place de regulars functions
  • Nouvelle convention de nommage des fichiers (kebab-case, fonctionnalité du fichier défini en file.functionnalité.ts, export barrel pour les choses pas auto load)
  • Utiliser des fichiers config en .ts
  • Utiliser CRONS pour les tasks

Pour l'instant les exports sont un peu défini de manière magique, mais dans le futur cette PR viendra fix ça : microsoft/TypeScript#38511


Avancement de la conversion

Commands
  • Birthday
  • Clean
  • Emoji
  • Forum
  • Inactive
  • Interaction
  • Main
  • Member
  • Role
  • Roulette
  • Stats
  • TopMessage
  • TopVoice
Events
  • ChannelDelete
  • GithubLinkReaction
  • GuildMemberAdd
  • GuildMemberRemove
  • MessageCreate
  • MessageLinkReaction
  • RoleDelete
  • RolesSelector
  • RouletteModal
  • UserUpdate
  • VerifMessageReactionAdd
  • VerifModal
Tasks
  • ActivityUpdate
  • Birthday
  • TierUpdate
  • TierUpdateGameServer
  • VerifyMembers

En profiter pour close ces issues :

Objectifs de la PR :
- Retirer toute les classes du projet pour plus être orienté vers de la programmation fonctionnelle
- Créer un système d'auto-loading beaucoup plus propre avec des fichiers séparer les uns des autres
- Utilisation d'arrows functions a la place de regulars functions
- Nouvelle convention de nommage des fichiers *(kebab-case, fonctionnalité du fichier défini en `file.functionnalité.ts`, export barrel pour les choses pas auto load)*

Pour l'instant les exports sont un peu défini de manière magique, mais dans le futur cette PR viendra fix ça :  microsoft/TypeScript#38511
- Use kamel-case for `Client.ts`
- Ignore `.vscode` folder
- `isFolderExist` function moved in `./utils/function`
- `EnableInDev` type moved in `./utils/handler/handler.type.ts`
@Bluzzi Bluzzi added the refactor Improvement of an existing code label Mar 11, 2023
@Bluzzi Bluzzi added this to the V2.7.0 milestone Mar 11, 2023
@Bluzzi
Copy link
Member

Bluzzi commented Mar 11, 2023

Il faudra aussi prendre en compte le fait que le bot soit maintenant sur deux Discord (game et pro). Il faudrait que l'intégralité des fonctionnalités soit correctement compatible / synchroniser entre les deux Discord (dans la limite des possibilités de l'API bien entendu).

@Bluzzi Bluzzi merged commit 326a850 into main Apr 3, 2023
@Bluzzi Bluzzi deleted the big-refactor branch April 3, 2023 12:13
@Bluzzi Bluzzi added enhancement New feature and removed refactor Improvement of an existing code labels Apr 3, 2023
@Bluzzi Bluzzi changed the title Refactoring all projet Réécriture complète de la structure du projet Apr 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Suggestions de posts Amélioration de la commande /inactive Mettre en avant la sélection des rôles
2 participants