├── CITATION.cff ├── .nvmrc ├── src ├── blocks │ ├── Monaco │ │ ├── role_advanced.js │ │ ├── index.js │ │ └── created.js │ ├── frostzzone │ │ ├── useless │ │ │ ├── test.js │ │ │ ├── base │ │ │ │ └── index.js │ │ │ ├── events │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── useful │ │ │ ├── fs │ │ │ │ ├── open.js │ │ │ │ ├── index.js │ │ │ │ ├── data.js │ │ │ │ └── err.js │ │ │ ├── time │ │ │ │ └── index.js │ │ │ ├── translate │ │ │ │ └── index.js │ │ │ ├── repl │ │ │ │ └── index.js │ │ │ ├── attachment │ │ │ │ └── index.js │ │ │ ├── var │ │ │ │ ├── index.js │ │ │ │ └── blank.js │ │ │ ├── embed │ │ │ │ └── index.js │ │ │ ├── category │ │ │ │ ├── index.js │ │ │ │ ├── created_cat.js │ │ │ │ └── message_category.js │ │ │ ├── slash │ │ │ │ └── index.js │ │ │ ├── real_reply │ │ │ │ └── index.js │ │ │ ├── emoji │ │ │ │ └── index.js │ │ │ ├── crosspost.js │ │ │ ├── code_float.js │ │ │ └── index.js │ │ ├── scratch │ │ │ └── index.js │ │ └── github │ │ │ └── index.js │ ├── index.js │ ├── ahq │ │ ├── chatbot │ │ │ └── index.js │ │ ├── polls │ │ │ ├── index.js │ │ │ └── convert api │ │ │ │ ├── input │ │ │ │ └── index.js │ │ │ │ └── index.js │ │ ├── voice │ │ │ ├── properties │ │ │ │ └── index.js │ │ │ ├── functions │ │ │ │ └── index.js │ │ │ ├── events │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── members │ │ │ └── index.js │ │ ├── bad_wrds │ │ │ └── index.js │ │ ├── embed_reader │ │ │ └── index.js │ │ ├── slash_register │ │ │ ├── index.js │ │ │ └── new_option.js │ │ ├── dashboard │ │ │ ├── functions │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── handler │ │ │ ├── index.js │ │ │ ├── prefix.js │ │ │ ├── not_owner.js │ │ │ ├── not-perms.js │ │ │ └── nsfw.js │ │ ├── forms │ │ │ ├── value │ │ │ │ ├── index.js │ │ │ │ ├── form_id.js │ │ │ │ ├── textbox_srvr.js │ │ │ │ ├── textbox_channel.js │ │ │ │ ├── textbox_clicker.js │ │ │ │ └── value.js │ │ │ ├── index.js │ │ │ └── repond │ │ │ │ ├── n_ahq.js │ │ │ │ ├── nahq_embed.js │ │ │ │ └── button.js │ │ ├── embeds │ │ │ └── index.js │ │ ├── buttons │ │ │ ├── index.js │ │ │ ├── btn_srv.js │ │ │ ├── btn_ch.js │ │ │ ├── button_id.js │ │ │ ├── btn_clicker.js │ │ │ └── button_send_embed.js │ │ ├── index.js │ │ └── server.js │ ├── collections │ │ └── index.js │ ├── events │ │ ├── member │ │ │ ├── memberUpdate │ │ │ │ └── index.js │ │ │ ├── guildBanAdd │ │ │ │ └── index.js │ │ │ ├── guildBanRemove │ │ │ │ └── index.js │ │ │ ├── leave-event │ │ │ │ └── index.js │ │ │ └── join-event │ │ │ │ └── index.js │ │ ├── role │ │ │ ├── roleDelete │ │ │ │ └── index.js │ │ │ ├── roleUpdate │ │ │ │ └── index.js │ │ │ └── roleCreate │ │ │ │ └── index.js │ │ ├── emoji │ │ │ ├── emojiCreate │ │ │ │ └── index.js │ │ │ ├── emojiDelete │ │ │ │ └── index.js │ │ │ └── emojiUpdate │ │ │ │ └── index.js │ │ ├── sticker │ │ │ ├── stickerCreate │ │ │ │ └── index.js │ │ │ ├── stickerDelete │ │ │ │ └── index.js │ │ │ └── stickerUpdate │ │ │ │ └── index.js │ │ ├── server │ │ │ └── serverUpdate │ │ │ │ └── index.js │ │ └── channel │ │ │ ├── channelCreate │ │ │ ├── index.js │ │ │ └── channel.js │ │ │ ├── channelDelete │ │ │ ├── index.js │ │ │ └── channel.js │ │ │ └── channelUpdate │ │ │ └── index.js │ ├── firebase │ │ └── index.js │ ├── list │ │ └── index.js │ ├── Parham │ │ ├── Other │ │ │ └── index.js │ │ ├── Slash │ │ │ └── index.js │ │ ├── index.js │ │ └── Replit DB │ │ │ └── index.js │ ├── henpokpok │ │ ├── index.js │ │ └── reactions │ │ │ ├── index.js │ │ │ ├── reaction_messageid.js │ │ │ ├── reaction_member.js │ │ │ └── reaction_emoji.js │ ├── JeremyGamer13 │ │ ├── voice │ │ │ └── index.js │ │ ├── misc │ │ │ └── index.js │ │ ├── jimpBlocks │ │ │ └── update2 │ │ │ │ └── index.js │ │ ├── Objects │ │ │ └── index.js │ │ ├── theroblox │ │ │ ├── roblox_block_update_2 │ │ │ │ └── index.js │ │ │ ├── index.js │ │ │ ├── groupIcon.js │ │ │ ├── gaineduserID.js │ │ │ └── groupUserRankName.js │ │ ├── experiments │ │ │ └── index.js │ │ ├── base │ │ │ ├── index.js │ │ │ ├── botuser.js │ │ │ └── isrunbutton.js │ │ ├── chartsAndGraphs │ │ │ └── index.js │ │ ├── mutatorBlocks │ │ │ └── index.js │ │ ├── text │ │ │ └── index.js │ │ ├── minecraft │ │ │ ├── rcon │ │ │ │ ├── index.js │ │ │ │ ├── disconnect.js │ │ │ │ └── responsemessage.js │ │ │ ├── bedrock │ │ │ │ ├── index.js │ │ │ │ ├── version.js │ │ │ │ ├── edition.js │ │ │ │ └── data.js │ │ │ ├── query │ │ │ │ └── index.js │ │ │ ├── index.js │ │ │ ├── javafavicon.js │ │ │ ├── javadata.js │ │ │ └── javaversionname.js │ │ ├── slashandbutton │ │ │ └── index.js │ │ ├── fileEdit │ │ │ └── index.js │ │ ├── tests │ │ │ ├── index.js │ │ │ ├── type_change.js │ │ │ └── delete_input.js │ │ ├── nullBlock.js │ │ ├── undefinedBlock.js │ │ ├── banana.js │ │ ├── other_err.js │ │ ├── sendTestconsole.js │ │ ├── s4duptime.js │ │ └── webBlocks │ │ │ ├── amountofkeys.js │ │ │ ├── getallkeys.js │ │ │ └── getallvalues.js │ ├── discord-image │ │ └── index.js │ ├── discord │ │ ├── bot-event-2 │ │ │ └── index.js │ │ ├── m-register-menus │ │ │ └── index.js │ │ ├── discord-canvas │ │ │ ├── goodbye │ │ │ │ └── index.js │ │ │ ├── welcome │ │ │ │ └── index.js │ │ │ └── rankcard │ │ │ │ └── index.js │ │ ├── voice-channel │ │ │ └── index.js │ │ ├── attachment │ │ │ └── index.js │ │ ├── bot-event │ │ │ └── index.js │ │ ├── discord-backup │ │ │ ├── index.js │ │ │ └── backup_id.js │ │ ├── deleted │ │ │ └── index.js │ │ ├── discord-menu │ │ │ ├── index.js │ │ │ ├── menu-id.js │ │ │ └── menu_value.js │ │ ├── mmenu │ │ │ ├── index.js │ │ │ ├── m_server.js │ │ │ ├── m_member.js │ │ │ ├── m_name.js │ │ │ └── m_channel.js │ │ ├── scheduled-events │ │ │ └── scheduled-events │ │ │ │ └── index.js │ │ ├── mbuttons │ │ │ ├── index.js │ │ │ ├── b_id.js │ │ │ ├── b_channel.js │ │ │ ├── b_server.js │ │ │ └── b_member.js │ │ ├── mslash │ │ │ ├── index.js │ │ │ ├── i_server.js │ │ │ ├── i_member.js │ │ │ ├── i_channel.js │ │ │ ├── i_name.js │ │ │ ├── i_bot_voice_channel_id.js │ │ │ ├── i_voice_channel.js │ │ │ └── i_voice_channel_id.js │ │ ├── discord-giveaway │ │ │ ├── index.js │ │ │ ├── giveaway_id.js │ │ │ └── giveaway_data.js │ │ ├── base │ │ │ ├── index.js │ │ │ ├── bot_ping.js │ │ │ ├── bot_startup_time.js │ │ │ ├── s4d_bot_shutdown.js │ │ │ └── bot_server_count.js │ │ ├── discord-button │ │ │ ├── index.js │ │ │ ├── button-id.js │ │ │ ├── button-message.js │ │ │ └── button-delete.js │ │ ├── roles │ │ │ └── index.js │ │ ├── reaction-event │ │ │ └── index.js │ │ ├── webhook │ │ │ └── index.js │ │ ├── embed │ │ │ └── index.js │ │ ├── wmise │ │ │ ├── index.js │ │ │ ├── newmsg_server.js │ │ │ ├── newmsg_channel.js │ │ │ ├── newMessage_delete.js │ │ │ ├── oldMessage_delete.js │ │ │ ├── newmessage_content.js │ │ │ ├── oldmessage_content.js │ │ │ └── newmsg_timestamp.js │ │ ├── message-event │ │ │ ├── message.js │ │ │ ├── message_id.js │ │ │ ├── pin_message.js │ │ │ ├── unpin_message.js │ │ │ ├── message_guild.js │ │ │ ├── message_member.js │ │ │ ├── delete_message.js │ │ │ ├── message_channel.js │ │ │ ├── mentioned_role.js │ │ │ ├── message_author.js │ │ │ ├── message_content.js │ │ │ ├── message_ts.js │ │ │ └── mentioned_member.js │ │ ├── music │ │ │ ├── track_url.js │ │ │ ├── track_name.js │ │ │ ├── connected.js │ │ │ ├── track_views.js │ │ │ ├── track_author.js │ │ │ ├── track_duration.js │ │ │ ├── track_channel.js │ │ │ ├── track_thumbnail.js │ │ │ ├── voice_channel.js │ │ │ ├── voice_channel_id.js │ │ │ ├── bot_voice_channel.js │ │ │ └── index.js │ │ ├── membed │ │ │ ├── index.js │ │ │ └── send_embed_string.js │ │ ├── servers │ │ │ └── index.js │ │ ├── channels │ │ │ ├── reply_mentioned_role.js │ │ │ ├── reply_mentioned_member.js │ │ │ └── reply_mentioned_channel.js │ │ ├── members │ │ │ └── member_banner.js │ │ └── thread-event │ │ │ └── index.js │ ├── godslayerakp │ │ ├── tests │ │ │ └── index.js │ │ ├── functions │ │ │ └── index.js │ │ ├── ytdl │ │ │ └── index.js │ │ ├── discord │ │ │ ├── modals │ │ │ │ └── index.js │ │ │ ├── index.js │ │ │ ├── roles │ │ │ │ └── index.js │ │ │ └── embeds │ │ │ │ ├── simple embed │ │ │ │ └── index.js │ │ │ │ └── index.js │ │ ├── objects │ │ │ └── index.js │ │ └── buffers │ │ │ └── index.js │ ├── unlocked_blockly │ │ └── index.js │ ├── invention │ │ ├── index.js │ │ ├── Other │ │ │ ├── index.js │ │ │ ├── backup-list.js │ │ │ ├── inv-chart-to-url.js │ │ │ └── channel-type.js │ │ └── fsh │ │ │ ├── old │ │ │ └── index.js │ │ │ └── index.js │ ├── logs-events │ │ ├── guild │ │ │ ├── boost_level_down │ │ │ │ └── index.js │ │ │ ├── vanity_url_remove │ │ │ │ └── index.js │ │ │ ├── guild_banner_add │ │ │ │ ├── index.js │ │ │ │ └── banner_url.js │ │ │ ├── vanity_url_add │ │ │ │ ├── index.js │ │ │ │ └── vanity_url.js │ │ │ ├── vanity_url_update │ │ │ │ └── index.js │ │ │ └── boost_level_up │ │ │ │ └── index.js │ │ ├── member │ │ │ ├── role_remove │ │ │ │ └── index.js │ │ │ ├── member_unboosted │ │ │ │ └── index.js │ │ │ ├── role_add │ │ │ │ └── index.js │ │ │ └── member_boosted │ │ │ │ ├── index.js │ │ │ │ └── member.js │ │ └── channel │ │ │ ├── channel-topic-update │ │ │ └── index.js │ │ │ └── channel-permissions-update │ │ │ └── index.js │ ├── regex │ │ └── index.js │ ├── weky │ │ └── index.js │ ├── charts │ │ └── index.js │ ├── qr-generator │ │ ├── index.js │ │ └── qr.js │ ├── progess-bar │ │ └── index.js │ ├── Lyric_finder │ │ ├── index.js │ │ └── lyric.js │ ├── tictactoe │ │ └── index.js │ ├── pagination │ │ └── index.js │ ├── p-s_stats │ │ ├── index.js │ │ └── cpu.js │ ├── loops │ │ └── index.js │ ├── example-t │ │ ├── index.js │ │ └── event_example.js │ ├── temp_channels │ │ ├── index.js │ │ └── member_name.js │ ├── games │ │ ├── index.js │ │ └── connect4.js │ ├── jsonrequest │ │ ├── index.js │ │ └── advanced │ │ │ ├── index.js │ │ │ ├── response_data.js │ │ │ ├── response.js │ │ │ └── response_headers.js │ ├── together │ │ ├── index.js │ │ ├── invite_code.js │ │ └── together_vc.js │ ├── youtube-notifier │ │ └── index.js │ ├── emidblol │ │ └── openai │ │ │ └── index.js │ ├── date │ │ └── index.js │ ├── reddit │ │ └── index.js │ ├── Lime │ │ ├── Embed │ │ │ └── index.js │ │ └── Events │ │ │ └── index.js │ ├── cooldown │ │ └── index.js │ ├── captcha │ │ ├── index.js │ │ ├── captcha_value.js │ │ ├── create_new_captcha.js │ │ └── captcha_image.js │ ├── LaserCat │ │ └── switch │ │ │ ├── index.js │ │ │ └── switch_break.js │ ├── image-generation │ │ └── index.js │ ├── invite-tracker │ │ ├── index.js │ │ ├── member.js │ │ ├── Server.js │ │ ├── InviteMember.js │ │ └── AmountOfInvite.js │ ├── Alex │ │ ├── Reactions │ │ │ ├── index.js │ │ │ ├── remojiid.js │ │ │ ├── rserver.js │ │ │ └── rchannel.js │ │ ├── inviteurl.js │ │ ├── tmember.js │ │ ├── url.js │ │ ├── tserver.js │ │ ├── allroles.js │ │ ├── tchannel.js │ │ ├── channel.js │ │ └── isdm.js │ ├── text │ │ ├── index.js │ │ └── newline.js │ ├── database │ │ ├── old_database │ │ │ ├── index.js │ │ │ ├── delete_all.js │ │ │ └── get_all_data.js │ │ ├── dootabase │ │ │ ├── index.js │ │ │ ├── delete_all.js │ │ │ └── get_all_data.js │ │ └── index.js │ ├── quickdb │ │ ├── index.js │ │ ├── delete_all.js │ │ └── all.js │ ├── mongodb │ │ ├── index.js │ │ ├── get_data.js │ │ └── mongo_on.js │ ├── ticket_system │ │ ├── index.js │ │ ├── slashmessagechannel.js │ │ ├── close.js │ │ ├── slashclose.js │ │ ├── archive.js │ │ ├── unarchive.js │ │ ├── slasharchive.js │ │ ├── setup.js │ │ └── slashunarchive.js │ ├── other │ │ ├── index.js │ │ ├── return.js │ │ ├── consoleclear.js │ │ └── eval2.js │ ├── dashboard │ │ ├── index.js │ │ └── random_sekret.js │ ├── Eruption │ │ └── message_embed │ │ │ └── index.js │ └── better_music │ │ ├── addedsong.js │ │ ├── songurl.js │ │ ├── first-song-name.js │ │ ├── newtrackname.js │ │ ├── next.js │ │ ├── songimage.js │ │ ├── trackchannel.js │ │ ├── Shuffle.js │ │ ├── betterduration.js │ │ ├── betterstop.js │ │ ├── musicpause.js │ │ ├── idchannel.js │ │ ├── musicresume.js │ │ ├── botvcid.js │ │ ├── loopstop.js │ │ ├── voicechannel.js │ │ ├── songloop.js │ │ ├── queueloop.js │ │ ├── setdata.js │ │ └── index.js ├── assets │ └── logo.png ├── components │ ├── NavigationBar │ │ ├── accountModule.js │ │ ├── ToolboxModal.vue │ │ └── LanguageMenu.vue │ └── renderers │ │ └── cwest.js ├── block-tools.js ├── backpack-save-load.js └── examples │ └── abcdef.js ├── docs ├── CODEOWNERS ├── SUPPORT.md └── SECURITY.md ├── .vs ├── ProjectSettings.json ├── slnx.sqlite ├── s4dmod │ └── v17 │ │ ├── .suo │ │ └── Browse.VC.db └── VSWorkspaceState.json ├── .github └── FUNDING.yml ├── .replit ├── scratch.png ├── public ├── sun.png ├── moon.png ├── favicon.ico ├── scratch.png ├── logo-font.otf └── spooky │ ├── fan.mp3 │ ├── click.mp3 │ ├── fard.mp3 │ ├── night2.png │ ├── power.png │ ├── static.gif │ ├── static.wav │ ├── glitch1.png │ ├── glitch2.png │ ├── history.gif │ ├── powerout.mp3 │ ├── button_jam.wav │ ├── camera_flip.mp3 │ ├── emptyObject.gif │ ├── glitchare.mp3 │ ├── gottenThread.gif │ ├── office_shine.png │ ├── office_unlit.png │ ├── scoreReading.mp3 │ ├── congratulations.mp3 │ ├── office_door_left.png │ ├── powerMeter_back.png │ ├── vent_door_update.mp3 │ ├── emptyObject_inVent.png │ ├── generatorPowering.mp3 │ ├── office_door_right.png │ ├── powerMeter_filled.png │ └── gottenThread_inVent.png ├── examples ├── example.png ├── example2.png └── preview.png ├── vue.config.js ├── babel.config.js ├── .vscode └── settings.json ├── .gitignore ├── .prettierrc ├── replit.nix └── .breakpoints /CITATION.cff: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v16.10.0 -------------------------------------------------------------------------------- /src/blocks/Monaco/role_advanced.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useless/test.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/fs/open.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useless/base/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/blocks/index.js: -------------------------------------------------------------------------------- 1 | import "./collections" -------------------------------------------------------------------------------- /src/blocks/ahq/chatbot/index.js: -------------------------------------------------------------------------------- 1 | import "./chat" -------------------------------------------------------------------------------- /src/blocks/collections/index.js: -------------------------------------------------------------------------------- 1 | import "./blocks" -------------------------------------------------------------------------------- /src/blocks/events/member/memberUpdate/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/blocks/firebase/index.js: -------------------------------------------------------------------------------- 1 | import "./start_db"; -------------------------------------------------------------------------------- /src/blocks/list/index.js: -------------------------------------------------------------------------------- 1 | import "./push_to_list"; -------------------------------------------------------------------------------- /docs/CODEOWNERS: -------------------------------------------------------------------------------- 1 | @scratch-for-discord/frontend 2 | -------------------------------------------------------------------------------- /src/blocks/Parham/Other/index.js: -------------------------------------------------------------------------------- 1 | import "./No Code" -------------------------------------------------------------------------------- /src/blocks/ahq/polls/index.js: -------------------------------------------------------------------------------- 1 | import "./convert api/" -------------------------------------------------------------------------------- /src/blocks/henpokpok/index.js: -------------------------------------------------------------------------------- 1 | import "./reactions/"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/voice/index.js: -------------------------------------------------------------------------------- 1 | import "./blocks" -------------------------------------------------------------------------------- /src/blocks/ahq/voice/properties/index.js: -------------------------------------------------------------------------------- 1 | import "./prop" -------------------------------------------------------------------------------- /src/blocks/discord-image/index.js: -------------------------------------------------------------------------------- 1 | import "./new_image"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/misc/index.js: -------------------------------------------------------------------------------- 1 | import "./replymessageid" -------------------------------------------------------------------------------- /src/blocks/Parham/Slash/index.js: -------------------------------------------------------------------------------- 1 | import "./Interaction Member" -------------------------------------------------------------------------------- /src/blocks/discord/bot-event-2/index.js: -------------------------------------------------------------------------------- 1 | import "./on_remove"; -------------------------------------------------------------------------------- /src/blocks/events/member/guildBanAdd/index.js: -------------------------------------------------------------------------------- 1 | import "./on_ban" -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/time/index.js: -------------------------------------------------------------------------------- 1 | import "./getcurrent" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/tests/index.js: -------------------------------------------------------------------------------- 1 | import './mutator test' -------------------------------------------------------------------------------- /src/blocks/unlocked_blockly/index.js: -------------------------------------------------------------------------------- 1 | // import "./variables" -------------------------------------------------------------------------------- /.vs/ProjectSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "CurrentProjectSetting": null 3 | } -------------------------------------------------------------------------------- /src/blocks/ahq/members/index.js: -------------------------------------------------------------------------------- 1 | import "./getm" 2 | import "./rm" -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/translate/index.js: -------------------------------------------------------------------------------- 1 | import "./translate" -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | https://github.com/sponsors/scratch-for-discord 2 | -------------------------------------------------------------------------------- /src/blocks/ahq/voice/functions/index.js: -------------------------------------------------------------------------------- 1 | import "./disc" 2 | import "./ch" -------------------------------------------------------------------------------- /src/blocks/events/member/guildBanRemove/index.js: -------------------------------------------------------------------------------- 1 | import "./on_ban_remove" -------------------------------------------------------------------------------- /src/blocks/frostzzone/scratch/index.js: -------------------------------------------------------------------------------- 1 | import "./data" 2 | import "./get" -------------------------------------------------------------------------------- /src/blocks/invention/index.js: -------------------------------------------------------------------------------- 1 | import "./fsh/" 2 | import "./Other/" 3 | -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/boost_level_down/index.js: -------------------------------------------------------------------------------- 1 | import "./on_down"; -------------------------------------------------------------------------------- /src/blocks/logs-events/member/role_remove/index.js: -------------------------------------------------------------------------------- 1 | import "./on_remove" -------------------------------------------------------------------------------- /src/blocks/regex/index.js: -------------------------------------------------------------------------------- 1 | import "./new_regex"; 2 | import "./test_regex"; -------------------------------------------------------------------------------- /src/blocks/weky/index.js: -------------------------------------------------------------------------------- 1 | import "./snake"; 2 | import "./calculator"; 3 | -------------------------------------------------------------------------------- /.replit: -------------------------------------------------------------------------------- 1 | run = "npm run start" 2 | 3 | [nix] 4 | channel = "stable-22_05" 5 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/jimpBlocks/update2/index.js: -------------------------------------------------------------------------------- 1 | import "./drawtextaligned" -------------------------------------------------------------------------------- /src/blocks/ahq/bad_wrds/index.js: -------------------------------------------------------------------------------- 1 | import "./badword"; 2 | import "./censor"; -------------------------------------------------------------------------------- /src/blocks/ahq/embed_reader/index.js: -------------------------------------------------------------------------------- 1 | import "./is_embed" 2 | import "./embed" -------------------------------------------------------------------------------- /src/blocks/charts/index.js: -------------------------------------------------------------------------------- 1 | import "./create_chart" 2 | import "./send_chart" -------------------------------------------------------------------------------- /src/blocks/frostzzone/github/index.js: -------------------------------------------------------------------------------- 1 | import "./profile" 2 | import "./get" -------------------------------------------------------------------------------- /src/blocks/logs-events/member/member_unboosted/index.js: -------------------------------------------------------------------------------- 1 | import "./on_unboost"; -------------------------------------------------------------------------------- /src/blocks/qr-generator/index.js: -------------------------------------------------------------------------------- 1 | import "./make-qr-then"; 2 | import "./qr" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/Objects/index.js: -------------------------------------------------------------------------------- 1 | import "./getObjVar" 2 | import "./blocks" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/theroblox/roblox_block_update_2/index.js: -------------------------------------------------------------------------------- 1 | import "./blocks" -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/repl/index.js: -------------------------------------------------------------------------------- 1 | import "./env" 2 | import "./webserver" -------------------------------------------------------------------------------- /src/blocks/progess-bar/index.js: -------------------------------------------------------------------------------- 1 | import "./filled-bar"; 2 | import "./split-bar"; -------------------------------------------------------------------------------- /src/blocks/Lyric_finder/index.js: -------------------------------------------------------------------------------- 1 | import "./find_lyric_than" 2 | import "./lyric" 3 | -------------------------------------------------------------------------------- /src/blocks/Parham/index.js: -------------------------------------------------------------------------------- 1 | import "./Other" 2 | import "./Slash" 3 | import "./Replit DB" -------------------------------------------------------------------------------- /src/blocks/ahq/polls/convert api/input/index.js: -------------------------------------------------------------------------------- 1 | import "./button" 2 | import "./embed" -------------------------------------------------------------------------------- /src/blocks/events/role/roleDelete/index.js: -------------------------------------------------------------------------------- 1 | import "./name"; 2 | import "./on_delete.js" -------------------------------------------------------------------------------- /src/blocks/events/role/roleUpdate/index.js: -------------------------------------------------------------------------------- 1 | import "./name"; 2 | import "./on_update"; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/attachment/index.js: -------------------------------------------------------------------------------- 1 | import "./info" 2 | import "./info2" -------------------------------------------------------------------------------- /src/blocks/frostzzone/useless/events/index.js: -------------------------------------------------------------------------------- 1 | import "./create_event" 2 | import "./emit" -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/vanity_url_remove/index.js: -------------------------------------------------------------------------------- 1 | import "./on_vanity_url_remove"; -------------------------------------------------------------------------------- /src/blocks/tictactoe/index.js: -------------------------------------------------------------------------------- 1 | import "./start_game"; 2 | import "./slash_start_game"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/experiments/index.js: -------------------------------------------------------------------------------- 1 | import "./xmltojson" 2 | import "./trololololol" -------------------------------------------------------------------------------- /src/blocks/events/emoji/emojiCreate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_emojiCreate"; 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/events/emoji/emojiDelete/index.js: -------------------------------------------------------------------------------- 1 | import "./on_emojiDelete"; 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/events/emoji/emojiUpdate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_emojiUpdate"; 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/events/role/roleCreate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_update"; 2 | import "./name"; 3 | -------------------------------------------------------------------------------- /src/blocks/logs-events/member/role_add/index.js: -------------------------------------------------------------------------------- 1 | import "./on_add"; 2 | import "./role"; 3 | -------------------------------------------------------------------------------- /src/blocks/pagination/index.js: -------------------------------------------------------------------------------- 1 | import "./pagination_embed"; 2 | import "./start_pagination"; -------------------------------------------------------------------------------- /src/blocks/ahq/voice/events/index.js: -------------------------------------------------------------------------------- 1 | import "./when" 2 | import "./leave" 3 | import "./switch" -------------------------------------------------------------------------------- /src/blocks/discord/m-register-menus/index.js: -------------------------------------------------------------------------------- 1 | import "./context_m"; 2 | import "./context_m_g"; 3 | -------------------------------------------------------------------------------- /src/blocks/events/sticker/stickerCreate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_stickerCreate" 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/events/sticker/stickerDelete/index.js: -------------------------------------------------------------------------------- 1 | import "./on_stickerDelete"; 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/events/sticker/stickerUpdate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_stickerupdate"; 2 | import "./name"; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/var/index.js: -------------------------------------------------------------------------------- 1 | import "./blank" 2 | import "./var" 3 | import "./var1" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/functions/index.js: -------------------------------------------------------------------------------- 1 | import "./new function item" 2 | import "./run function" -------------------------------------------------------------------------------- /src/blocks/p-s_stats/index.js: -------------------------------------------------------------------------------- 1 | import "./cpu" 2 | import "./os_stats" 3 | import "./get_cpu_uptime" -------------------------------------------------------------------------------- /scratch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/scratch.png -------------------------------------------------------------------------------- /src/blocks/ahq/voice/index.js: -------------------------------------------------------------------------------- 1 | import "./events/" 2 | import "./properties/" 3 | import "./functions/" -------------------------------------------------------------------------------- /src/blocks/logs-events/channel/channel-topic-update/index.js: -------------------------------------------------------------------------------- 1 | import "./on_change"; 2 | import "./topic"; -------------------------------------------------------------------------------- /src/blocks/loops/index.js: -------------------------------------------------------------------------------- 1 | import "./forever"; 2 | import "./forever2"; 3 | import "./forever3"; 4 | -------------------------------------------------------------------------------- /public/sun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/sun.png -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/base/index.js: -------------------------------------------------------------------------------- 1 | import "./whenrun" 2 | import "./isrunbutton" 3 | import "./botuser" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/chartsAndGraphs/index.js: -------------------------------------------------------------------------------- 1 | import "./chart_filesave" 2 | import "./chart_convertsave" -------------------------------------------------------------------------------- /src/blocks/ahq/slash_register/index.js: -------------------------------------------------------------------------------- 1 | import "./reg"; 2 | import "./add_options"; 3 | import "./new_option"; -------------------------------------------------------------------------------- /src/blocks/events/server/serverUpdate/index.js: -------------------------------------------------------------------------------- 1 | import "./server_update_vars" 2 | import "./on_server_update" -------------------------------------------------------------------------------- /src/blocks/example-t/index.js: -------------------------------------------------------------------------------- 1 | import "./example" 2 | import "./output_example" 3 | import "./event_example" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/ytdl/index.js: -------------------------------------------------------------------------------- 1 | import "./ytdl" 2 | import "./ytdl get info" 3 | import "./ytdl info" -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/guild_banner_add/index.js: -------------------------------------------------------------------------------- 1 | import "./on_banner_add"; 2 | import "./banner_url"; -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/vanity_url_add/index.js: -------------------------------------------------------------------------------- 1 | import "./on_vanity_url_add"; 2 | import "./vanity_url"; -------------------------------------------------------------------------------- /src/blocks/temp_channels/index.js: -------------------------------------------------------------------------------- 1 | import "./register" 2 | import "./member_name" 3 | import "./unregister" -------------------------------------------------------------------------------- /.vs/slnx.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/.vs/slnx.sqlite -------------------------------------------------------------------------------- /public/moon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/moon.png -------------------------------------------------------------------------------- /src/blocks/discord/discord-canvas/goodbye/index.js: -------------------------------------------------------------------------------- 1 | import "./create_goodbye_then"; 2 | import "./send_in_channel"; -------------------------------------------------------------------------------- /src/blocks/events/channel/channelCreate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_create" 2 | import "./name"; 3 | import "./channel"; -------------------------------------------------------------------------------- /.vs/s4dmod/v17/.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/.vs/s4dmod/v17/.suo -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/scratch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/scratch.png -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/src/assets/logo.png -------------------------------------------------------------------------------- /src/blocks/events/channel/channelDelete/index.js: -------------------------------------------------------------------------------- 1 | import "./on_delete"; 2 | import "./name"; 3 | import "./channel"; -------------------------------------------------------------------------------- /src/blocks/events/channel/channelUpdate/index.js: -------------------------------------------------------------------------------- 1 | import "./on_update"; 2 | import "./name"; 3 | import "./channel"; -------------------------------------------------------------------------------- /src/blocks/games/index.js: -------------------------------------------------------------------------------- 1 | import "./snake" 2 | import "./akinator" 3 | import "./aki_gametype" 4 | import "./connect4" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/discord/modals/index.js: -------------------------------------------------------------------------------- 1 | import "./modal textbox" 2 | import "./modal" 3 | import "./send modal" -------------------------------------------------------------------------------- /src/blocks/jsonrequest/index.js: -------------------------------------------------------------------------------- 1 | import "./http_get_then"; 2 | import "./get_string_of_data"; 3 | import "./advanced" -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/vanity_url_update/index.js: -------------------------------------------------------------------------------- 1 | import "./on_vanity_url_update"; 2 | import "./url_update"; -------------------------------------------------------------------------------- /src/blocks/together/index.js: -------------------------------------------------------------------------------- 1 | import "./create_new_then"; 2 | import "./invite_code"; 3 | import "./together_vc"; 4 | -------------------------------------------------------------------------------- /src/blocks/youtube-notifier/index.js: -------------------------------------------------------------------------------- 1 | import "./add_channel"; 2 | import "./on_new_video"; 3 | import "./video_raw"; -------------------------------------------------------------------------------- /src/components/NavigationBar/accountModule.js: -------------------------------------------------------------------------------- 1 | module.exports.apiURL = "https://s4d469apis.scratch4discord.repl.co/" -------------------------------------------------------------------------------- /examples/example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/examples/example.png -------------------------------------------------------------------------------- /examples/example2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/examples/example2.png -------------------------------------------------------------------------------- /examples/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/examples/preview.png -------------------------------------------------------------------------------- /public/logo-font.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/logo-font.otf -------------------------------------------------------------------------------- /public/spooky/fan.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/fan.mp3 -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/embed/index.js: -------------------------------------------------------------------------------- 1 | import "./sendreplyembed" 2 | import "./createfield" 3 | import "./addfield" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/discord/index.js: -------------------------------------------------------------------------------- 1 | import "./embeds" 2 | import "./modals" 3 | import "./roles" 4 | import "./banner" -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/boost_level_up/index.js: -------------------------------------------------------------------------------- 1 | import "./guild_raw"; 2 | import "./on_up"; 3 | import "./boost_level"; -------------------------------------------------------------------------------- /public/spooky/click.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/click.mp3 -------------------------------------------------------------------------------- /public/spooky/fard.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/fard.mp3 -------------------------------------------------------------------------------- /public/spooky/night2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/night2.png -------------------------------------------------------------------------------- /public/spooky/power.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/power.png -------------------------------------------------------------------------------- /public/spooky/static.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/static.gif -------------------------------------------------------------------------------- /public/spooky/static.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/static.wav -------------------------------------------------------------------------------- /src/blocks/emidblol/openai/index.js: -------------------------------------------------------------------------------- 1 | import "./generate_image.js"; 2 | import "./login.js"; 3 | import "./text_completion.js"; -------------------------------------------------------------------------------- /src/blocks/logs-events/member/member_boosted/index.js: -------------------------------------------------------------------------------- 1 | import "./member"; 2 | import "./member_raw"; 3 | import "./on_boost"; 4 | -------------------------------------------------------------------------------- /vue.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | devServer: { 3 | compress: true, 4 | disableHostCheck: true, 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /public/spooky/glitch1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/glitch1.png -------------------------------------------------------------------------------- /public/spooky/glitch2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/glitch2.png -------------------------------------------------------------------------------- /public/spooky/history.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/history.gif -------------------------------------------------------------------------------- /public/spooky/powerout.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/powerout.mp3 -------------------------------------------------------------------------------- /src/blocks/date/index.js: -------------------------------------------------------------------------------- 1 | import "./current"; 2 | import "./date_to_unix"; 3 | import "./unix_to_date"; 4 | import "./get_in_date"; -------------------------------------------------------------------------------- /src/blocks/reddit/index.js: -------------------------------------------------------------------------------- 1 | import "./ran_red_post" 2 | import "./postVars" 3 | import "./get_about" 4 | import "./get_about_then" 5 | -------------------------------------------------------------------------------- /.vs/s4dmod/v17/Browse.VC.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/.vs/s4dmod/v17/Browse.VC.db -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | "@vue/app", 4 | ], 5 | "sourceType": "unambiguous" 6 | } 7 | -------------------------------------------------------------------------------- /public/spooky/button_jam.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/button_jam.wav -------------------------------------------------------------------------------- /public/spooky/camera_flip.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/camera_flip.mp3 -------------------------------------------------------------------------------- /public/spooky/emptyObject.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/emptyObject.gif -------------------------------------------------------------------------------- /public/spooky/glitchare.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/glitchare.mp3 -------------------------------------------------------------------------------- /src/blocks/Lime/Embed/index.js: -------------------------------------------------------------------------------- 1 | import "./lime_embed" 2 | import "./edit_embed" 3 | import "./embed_create" 4 | import "./embed_send" -------------------------------------------------------------------------------- /src/blocks/Parham/Replit DB/index.js: -------------------------------------------------------------------------------- 1 | import "./Set To" 2 | import "./Get" 3 | import "./Get All" 4 | import "./Data" 5 | import "./Delete" -------------------------------------------------------------------------------- /src/blocks/cooldown/index.js: -------------------------------------------------------------------------------- 1 | import "./set_member_cooldown"; 2 | import "./remove_member_cooldown"; 3 | import "./is_member_on_cooldown" -------------------------------------------------------------------------------- /public/spooky/gottenThread.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/gottenThread.gif -------------------------------------------------------------------------------- /public/spooky/office_shine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/office_shine.png -------------------------------------------------------------------------------- /public/spooky/office_unlit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/office_unlit.png -------------------------------------------------------------------------------- /public/spooky/scoreReading.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/scoreReading.mp3 -------------------------------------------------------------------------------- /src/blocks/godslayerakp/objects/index.js: -------------------------------------------------------------------------------- 1 | import "./new" 2 | import "./new item" 3 | import "./has" 4 | import "./delete" 5 | import "./json" -------------------------------------------------------------------------------- /src/blocks/logs-events/channel/channel-permissions-update/index.js: -------------------------------------------------------------------------------- 1 | import "./on_change"; 2 | import "./channel_raw"; 3 | import "./permissions"; -------------------------------------------------------------------------------- /docs/SUPPORT.md: -------------------------------------------------------------------------------- 1 | Find Support in [The Official Discord Server of Scratch for Discord](https://discord.gg/ucDhJVdTPz) : https://discord.gg/ucDhJVdTPz -------------------------------------------------------------------------------- /public/spooky/congratulations.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/congratulations.mp3 -------------------------------------------------------------------------------- /public/spooky/office_door_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/office_door_left.png -------------------------------------------------------------------------------- /public/spooky/powerMeter_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/powerMeter_back.png -------------------------------------------------------------------------------- /public/spooky/vent_door_update.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/vent_door_update.mp3 -------------------------------------------------------------------------------- /src/blocks/ahq/dashboard/functions/index.js: -------------------------------------------------------------------------------- 1 | import "./text" 2 | import "./color" 3 | import "./boolean" 4 | import "./server" 5 | import "./value" -------------------------------------------------------------------------------- /src/blocks/captcha/index.js: -------------------------------------------------------------------------------- 1 | import "./create_new_captcha"; 2 | import "./captcha_image"; 3 | import "./send_image"; 4 | import "./captcha_value"; -------------------------------------------------------------------------------- /public/spooky/emptyObject_inVent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/emptyObject_inVent.png -------------------------------------------------------------------------------- /public/spooky/generatorPowering.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/generatorPowering.mp3 -------------------------------------------------------------------------------- /public/spooky/office_door_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/office_door_right.png -------------------------------------------------------------------------------- /public/spooky/powerMeter_filled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/powerMeter_filled.png -------------------------------------------------------------------------------- /src/blocks/ahq/dashboard/index.js: -------------------------------------------------------------------------------- 1 | import "./start" 2 | import "./permisison" 3 | import "./cooki.js" 4 | import "./cookieload" 5 | import "./functions/" -------------------------------------------------------------------------------- /src/blocks/discord/voice-channel/index.js: -------------------------------------------------------------------------------- 1 | import "./deaf"; 2 | import "./undeaf"; 3 | import "./mute"; 4 | import "./unmute"; 5 | import "./move_member"; -------------------------------------------------------------------------------- /public/spooky/gottenThread_inVent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratch-for-discord/Web-Application_Frontend/HEAD/public/spooky/gottenThread_inVent.png -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/mutatorBlocks/index.js: -------------------------------------------------------------------------------- 1 | import "./messagePayload" 2 | import "./trycatchfinally" 3 | import "./case" 4 | import "./create_website_then" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/text/index.js: -------------------------------------------------------------------------------- 1 | import "./textisboolean" 2 | import "./booleanoftext" 3 | import "./texthasnumbers" 4 | import "./randomletterofstring" -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "editor.codeActionsOnSave": { 3 | "source.fixAll.eslint": true 4 | }, 5 | "eslint.validate": ["javascript"] 6 | } 7 | -------------------------------------------------------------------------------- /src/blocks/LaserCat/switch/index.js: -------------------------------------------------------------------------------- 1 | import "./switch_switch.js"; 2 | import "./switch_break.js"; 3 | import "./switch_case.js"; 4 | import "./switch_default.js"; -------------------------------------------------------------------------------- /src/blocks/ahq/handler/index.js: -------------------------------------------------------------------------------- 1 | import "./create" 2 | import "./prefix" 3 | import "./owner" 4 | import "./not_owner" 5 | import "./nsfw" 6 | import "./not-perms" -------------------------------------------------------------------------------- /src/blocks/discord/attachment/index.js: -------------------------------------------------------------------------------- 1 | import "./attachment_size"; 2 | import "./attachment_name"; 3 | import "./attachment_type"; 4 | import "./attachment_url"; -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Node 2 | node_modules 3 | 4 | # Compiled files 5 | dist/ 6 | package-lock.json 7 | yarn.lock 8 | 9 | # ur mom 10 | yarn-error.log 11 | .env.local -------------------------------------------------------------------------------- /src/blocks/discord/bot-event/index.js: -------------------------------------------------------------------------------- 1 | import "./on_added"; 2 | import "./server_id"; 3 | import "./server_name"; 4 | import "./server_icon"; 5 | import "./server_owner"; -------------------------------------------------------------------------------- /src/blocks/discord/discord-backup/index.js: -------------------------------------------------------------------------------- 1 | import "./backup_id"; 2 | import "./create_backup_of_guild.then"; 3 | import "./backup_load"; 4 | import "./delete_backup"; -------------------------------------------------------------------------------- /src/blocks/godslayerakp/discord/roles/index.js: -------------------------------------------------------------------------------- 1 | import "./create role then" 2 | import "./create_role_then_real" 3 | import "./created_role" 4 | import "./get roles list" -------------------------------------------------------------------------------- /src/blocks/ahq/polls/convert api/index.js: -------------------------------------------------------------------------------- 1 | import "./int.js" 2 | import "./task.js" 3 | import "./set_file" 4 | import "./filename" 5 | import "./send" 6 | import "./input/" -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "tabWidth": 4, 3 | "useTabs": false, 4 | "semi": true, 5 | "trailingComma": "none", 6 | "printWidth": 400, 7 | "singleQuote": false 8 | } -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/rcon/index.js: -------------------------------------------------------------------------------- 1 | import "./onsendback" 2 | import "./responsemessage" 3 | import "./creatercon" 4 | import "./disconnect" 5 | import "./runcommand" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/slashandbutton/index.js: -------------------------------------------------------------------------------- 1 | import "./sendimg" 2 | import "./sendimgb" 3 | import "./sendimgmsg" 4 | import "./sendimgmsgb" 5 | import "./sendimgmsgbfinal" -------------------------------------------------------------------------------- /src/blocks/events/member/leave-event/index.js: -------------------------------------------------------------------------------- 1 | import "./leaving_guild"; 2 | import "./leaving_guild_raw"; 3 | import "./leaving_member_raw"; 4 | import "./on_member_leave"; 5 | -------------------------------------------------------------------------------- /.vs/VSWorkspaceState.json: -------------------------------------------------------------------------------- 1 | { 2 | "ExpandedNodes": [ 3 | "" 4 | ], 5 | "SelectedNode": "\\C:\\Users\\Leo\\Source\\Repos\\s4dmod", 6 | "PreviewInSolutionExplorer": false 7 | } -------------------------------------------------------------------------------- /src/blocks/discord/deleted/index.js: -------------------------------------------------------------------------------- 1 | import "./on_deleted"; 2 | import "./message_content"; 3 | import "./message_server"; 4 | import "./message_channel"; 5 | import "./message_author"; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/fs/index.js: -------------------------------------------------------------------------------- 1 | import "./data" 2 | import "./err" 3 | import "./read" 4 | import "./append" 5 | import "./delete" 6 | import "./rename" 7 | import "./write" -------------------------------------------------------------------------------- /replit.nix: -------------------------------------------------------------------------------- 1 | { pkgs }: { 2 | deps = [ 3 | pkgs.nodejs-16_x 4 | pkgs.nodePackages.typescript-language-server 5 | pkgs.yarn 6 | pkgs.replitPackages.jest 7 | ]; 8 | } -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/index.js: -------------------------------------------------------------------------------- 1 | import "./form_id" 2 | import "./textbox_channel" 3 | import "./textbox_clicker" 4 | import "./textbox_id" 5 | import "./textbox_srvr" 6 | import "./value" -------------------------------------------------------------------------------- /src/blocks/godslayerakp/discord/embeds/simple embed/index.js: -------------------------------------------------------------------------------- 1 | import "./simple embed" 2 | import "./simple fields" 3 | import "./add author" 4 | import "./add fields" 5 | import "./add footer" -------------------------------------------------------------------------------- /src/blocks/henpokpok/reactions/index.js: -------------------------------------------------------------------------------- 1 | import "./reaction_event"; 2 | import "./reaction_member"; 3 | import "./reaction_emoji"; 4 | import "./reaction_messageid"; 5 | import "./reaction_remove"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/fileEdit/index.js: -------------------------------------------------------------------------------- 1 | import "./createFile" 2 | import "./fileContents" 3 | import "./fileTypeOf" 4 | import "./fileMetadata" 5 | import "./foreachfiledir" 6 | import "./foreachfiledirin" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/bedrock/index.js: -------------------------------------------------------------------------------- 1 | import "./getserver" 2 | import "./data" 3 | import "./motd" 4 | import "./version" 5 | import "./players" 6 | import "./serverinfo" 7 | import "./edition" -------------------------------------------------------------------------------- /src/blocks/events/member/join-event/index.js: -------------------------------------------------------------------------------- 1 | import "./joining_guild"; 2 | import "./joining_guild_raw"; 3 | import "./joining_member"; 4 | import "./joining_member_raw"; 5 | import "./on_member_join"; 6 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-menu/index.js: -------------------------------------------------------------------------------- 1 | import "./menu_options_blocks"; 2 | import "./menu_options"; 3 | import "./menu_value"; 4 | import "./create-menu-collector"; 5 | import "./reply"; 6 | import "./menu-id"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/query/index.js: -------------------------------------------------------------------------------- 1 | import "./queryjavaserver" 2 | import "./rawversion" 3 | import "./software" 4 | import "./map" 5 | import "./playerlist" 6 | import "./plugins" 7 | import "./querydata" -------------------------------------------------------------------------------- /src/blocks/image-generation/index.js: -------------------------------------------------------------------------------- 1 | import "./1imagepng"; 2 | import "./load_image"; 3 | import "./send_image"; 4 | import "./send_image_slash"; 5 | import "./1imagegif"; 6 | import "./load_gif"; 7 | import "./2imagepng"; -------------------------------------------------------------------------------- /src/blocks/invite-tracker/index.js: -------------------------------------------------------------------------------- 1 | import "./InviteMember"; 2 | import "./UserInvited"; 3 | import "./member"; 4 | import "./AmountOfInvite"; 5 | import "./UserLeave"; 6 | import "./Server"; 7 | import "./getMemberInvites"; -------------------------------------------------------------------------------- /docs/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Reporting a Vulnerability 4 | 5 | Please report any vulnerability in [/security/advisories](https://github.com/scratch-for-discord/Web-Application_Frontend/security/advisories) 6 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/category/index.js: -------------------------------------------------------------------------------- 1 | import "./message_category" 2 | import "./categoryget" 3 | import "./categoryid" 4 | 5 | import "./create_category_then" 6 | import "./create_in_then" 7 | import "./created_cat" -------------------------------------------------------------------------------- /src/blocks/invention/Other/index.js: -------------------------------------------------------------------------------- 1 | import "./backup-list.js" 2 | import "./backup-list-get.js" 3 | import "./inv-chart-to-url.js" 4 | import "./comment-code.js" 5 | import "./collapse-code.js" 6 | import "./channel-type.js" 7 | -------------------------------------------------------------------------------- /src/blocks/Alex/Reactions/index.js: -------------------------------------------------------------------------------- 1 | import "./rchannel"; 2 | import "./remojiid"; 3 | import "./removeuserreactions"; 4 | import "./removexreaction"; 5 | import "./rrandommember"; 6 | import "./rserver"; 7 | import "./rgetmember" -------------------------------------------------------------------------------- /src/blocks/discord/mmenu/index.js: -------------------------------------------------------------------------------- 1 | import "./m_options"; 2 | import "./m_reply"; 3 | import "./m_reply_edit"; 4 | import "./m_name"; 5 | import "./m_channel"; 6 | import "./m_member"; 7 | import "./m_server"; 8 | import "./on_menu"; -------------------------------------------------------------------------------- /src/blocks/discord/scheduled-events/scheduled-events/index.js: -------------------------------------------------------------------------------- 1 | import "./create_event" 2 | import "./set_options" 3 | import "./privacyLevel" 4 | import "./entity_type" 5 | import "./delete_event" 6 | import "./edit_event" 7 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/slash/index.js: -------------------------------------------------------------------------------- 1 | import "./register" 2 | import "./command" 3 | import "./subcommand_group" 4 | import "./subcommand" 5 | import "./options1" 6 | import "./options2" 7 | import "./choices" 8 | import "./gsa_opt" -------------------------------------------------------------------------------- /src/blocks/invention/fsh/old/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | blocks here are blocks that are no longer used because they got remplaced for new ones 3 | but still exist to not corrupt people using them 4 | */ 5 | import "./fsh-api-animal-old.js" 6 | -------------------------------------------------------------------------------- /.breakpoints: -------------------------------------------------------------------------------- 1 | { 2 | "files": { 3 | "index.js": [ 4 | { 5 | "id": "5b2a385c-bc97-4e40-adb7-c631f003f5af", 6 | "line": 2, 7 | "version": 1, 8 | "index": 11 9 | } 10 | ] 11 | } 12 | } -------------------------------------------------------------------------------- /src/blocks/text/index.js: -------------------------------------------------------------------------------- 1 | import "./newline"; 2 | import "./starts-with"; 3 | import "./includes"; 4 | import "./print"; 5 | import "./ends-with"; 6 | import "./weird-to-normal"; 7 | import "./for_each_letter" 8 | import "./create_random_string" 9 | -------------------------------------------------------------------------------- /src/blocks/database/old_database/index.js: -------------------------------------------------------------------------------- 1 | import "./add_data"; 2 | import "./delete_data"; 3 | import "./get_all_data"; 4 | import "./get_data"; 5 | import "./has_data"; 6 | import "./set_data"; 7 | import "./subtract_data"; 8 | import "./delete_all"; 9 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useless/index.js: -------------------------------------------------------------------------------- 1 | //files 2 | import "./fart" 3 | import "./floppa" 4 | import "./send_image" 5 | import "./drop" 6 | import "./starttyping" 7 | //folders 8 | import "./base/" 9 | import "./events/" 10 | 11 | import './test' -------------------------------------------------------------------------------- /src/blocks/quickdb/index.js: -------------------------------------------------------------------------------- 1 | import './get.js' 2 | import './set.js' 3 | import './add.js' 4 | import './subtract.js' 5 | import './pull.js' 6 | import './push.js' 7 | import './delete_all.js' 8 | import './all.js' 9 | import './delete.js' 10 | import './has.js' -------------------------------------------------------------------------------- /src/blocks/ahq/embeds/index.js: -------------------------------------------------------------------------------- 1 | import "./create" 2 | import "./title" 3 | import "./color" 4 | import "./author" 5 | import "./des" 6 | import "./field" 7 | import "./ftr" 8 | import "./thmb" 9 | import "./image" 10 | import "./send_embed" 11 | import "./url" 12 | import "./stamp" -------------------------------------------------------------------------------- /src/blocks/discord/discord-canvas/welcome/index.js: -------------------------------------------------------------------------------- 1 | import "./create_welcome_then"; 2 | import "./set_color"; 3 | import "./set_username"; 4 | import "./set_discriminator"; 5 | import "./set_member_count"; 6 | import "./set_avatar"; 7 | import "./set_background"; 8 | import "./set_guild_name"; -------------------------------------------------------------------------------- /src/blocks/mongodb/index.js: -------------------------------------------------------------------------------- 1 | import "./add_data"; 2 | import "./connect"; 3 | import "./delete_data"; 4 | import "./get_data"; 5 | import "./has_data"; 6 | import "./mongo_on"; 7 | import "./pull_data"; 8 | import "./push_data"; 9 | import "./set_data"; 10 | import "./subtract_data"; -------------------------------------------------------------------------------- /src/blocks/ahq/forms/index.js: -------------------------------------------------------------------------------- 1 | import "./modal" 2 | import "./textbox" 3 | import "./ahq_style" 4 | import "./send_form" 5 | import "./events/when" 6 | import "./value/index" 7 | import "./repond/reply" 8 | import "./repond/nahq_embed" 9 | import "./repond/button" 10 | import "./repond/n_ahq" -------------------------------------------------------------------------------- /src/blocks/ticket_system/index.js: -------------------------------------------------------------------------------- 1 | import "./Login" 2 | import "./setup" 3 | import "./unarchive" 4 | import "./archive" 5 | import "./close" 6 | 7 | import "./slashsetup" 8 | import "./slashunarchive" 9 | import "./slasharchive" 10 | import "./slashclose" 11 | import "./slashmessagechannel" -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/real_reply/index.js: -------------------------------------------------------------------------------- 1 | import "./real_reply" 2 | import "./send_real_reply_then" 3 | import "./send_real_reply_then_add_reaction" 4 | import "./send_real_reply_then_edit" 5 | import "./send_real_reply_then_delete" 6 | import "./reply_to_message" 7 | import "./reply_to_message_then" -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/index.js: -------------------------------------------------------------------------------- 1 | import "./getjavaserver" 2 | import "./javamotd" 3 | import "./javaplayers" 4 | import "./javaversionname" 5 | import "./javafavicon" 6 | import "./query" 7 | import "./javadata" 8 | // RCON stuff 9 | import "./rcon" 10 | // bedrock s 11 | import "./bedrock" -------------------------------------------------------------------------------- /src/components/renderers/cwest.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly"; 2 | CustomRenderer = function(name) { 3 | CustomRenderer.superClass_.constructor.call(this, name); 4 | } 5 | Blockly.utils.object.inherits(CustomRenderer, Blockly.blockRendering.Renderer) 6 | Blockly.blockRendering.register('cwest', CustomRenderer) -------------------------------------------------------------------------------- /src/blocks/invention/fsh/index.js: -------------------------------------------------------------------------------- 1 | // fsh api blocks 2 | 3 | // text api 4 | import "./fsh-api-html.js" 5 | import "./fsh-api-filter.js" 6 | import "./fsh-api-censor.js" 7 | 8 | // image api 9 | import "./fsh-api-animal.js" 10 | 11 | // old blocks (no longer supported/not in toolbox) 12 | import "./old/" 13 | -------------------------------------------------------------------------------- /src/blocks/Lime/Events/index.js: -------------------------------------------------------------------------------- 1 | import "./on_member_ban" 2 | import "./on_member_unban" 3 | import "./banned_objects" 4 | import "./unbanned_objects" 5 | import "./on_member_kick" 6 | import "./kicked_member" 7 | import "./guildscheduledevent_add" 8 | import "./guildscheduledevent_remove" 9 | import "./scheduled_event_attributes" -------------------------------------------------------------------------------- /src/blocks/discord/mbuttons/index.js: -------------------------------------------------------------------------------- 1 | import "./b_channel"; 2 | import "./b_create"; 3 | import "./b_edit"; 4 | import "./b_id"; 5 | import "./b_member"; 6 | import "./b_row"; 7 | import "./b_row_comp"; 8 | import "./b_send_msg"; 9 | import "./b_server"; 10 | import "./b_style"; 11 | import "./b_reply"; 12 | import "./on_button"; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/emoji/index.js: -------------------------------------------------------------------------------- 1 | import "./create_emoji" 2 | import "./delete_emoji" 3 | import "./get_emoji" 4 | import "./emoji_exists" 5 | import "./get_all_emoji_then" 6 | import "./get_all_emoji_then_emoji" 7 | import "./is_animated" 8 | import "./lock_emoji" 9 | import "./unlock_emoji" 10 | import "./emoji_info" -------------------------------------------------------------------------------- /src/blocks/database/dootabase/index.js: -------------------------------------------------------------------------------- 1 | import "./add_data"; 2 | import "./delete_all"; 3 | import "./delete_data"; 4 | import "./get_all_data"; 5 | import "./get_data"; 6 | import "./has_data"; 7 | import "./set_data"; 8 | import "./set_db"; 9 | import "./subtract_data"; 10 | 11 | import "./multiply_data"; 12 | import "./divide_data"; -------------------------------------------------------------------------------- /src/blocks/discord/mslash/index.js: -------------------------------------------------------------------------------- 1 | import "./edit_reply"; 2 | import "./i_channel"; 3 | import "./i_member"; 4 | import "./i_name"; 5 | import "./i_server"; 6 | import "./on_slash"; 7 | import "./options"; 8 | import "./slash_reply"; 9 | import "./i_voice_channel"; 10 | import "./i_voice_channel_id"; 11 | import "./i_bot_voice_channel_id"; -------------------------------------------------------------------------------- /src/blocks/godslayerakp/buffers/index.js: -------------------------------------------------------------------------------- 1 | import './get' 2 | import './includes' 3 | import './length' 4 | import './new empty' 5 | import './new' 6 | import './set' 7 | import './get where' 8 | import './tostring' 9 | import './websites/geting' 10 | import './websites/sending' 11 | import './fs/write' 12 | import './messages/attachment send' -------------------------------------------------------------------------------- /src/blocks/other/index.js: -------------------------------------------------------------------------------- 1 | import "./run_save_output"; 2 | import "./wait_seconds"; 3 | import "./eval"; 4 | import "./eval2"; 5 | import "./try_and_catch"; 6 | import "./return"; 7 | import "./text_to_number"; 8 | import "./print"; 9 | import "./exec"; 10 | import "./is_a_number_or_string" 11 | import "./setvalto" 12 | import "./consoleclear" -------------------------------------------------------------------------------- /src/blocks/database/index.js: -------------------------------------------------------------------------------- 1 | import "./create_db"; 2 | import "./get_data"; 3 | import "./has_data"; 4 | import "./get_all_data"; 5 | import "./set_data"; 6 | import "./delete_data"; 7 | import "./push_data"; 8 | import "./add_data"; 9 | import "./subtract_data"; 10 | import "./delete_all"; 11 | 12 | import "./old_database" 13 | import "./dootabase" 14 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-giveaway/index.js: -------------------------------------------------------------------------------- 1 | import "./create_giveaway_then"; 2 | import "./giveaway_id"; 3 | import "./giveaway_data"; 4 | import "./reroll_giveaway"; 5 | import "./edit_giveaway"; 6 | import "./delete_giveaway"; 7 | import "./end_giveaway"; 8 | import "./pause_giveaway"; 9 | import "./unpause_giveaway"; 10 | import "./dropdown_giveaway"; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/tests/index.js: -------------------------------------------------------------------------------- 1 | import "./double_dropdown" 2 | import "./type_change" 3 | import "./delete_input" 4 | import "./validator" 5 | import "./onchange" 6 | import "./validator2" 7 | import "./custom_restriction_name" 8 | import "./working_checkbox_mutator" 9 | import "./copyable_checkbox_left_mutator" 10 | import "./copyable_plus_minus_mutator" -------------------------------------------------------------------------------- /src/blocks/discord/base/index.js: -------------------------------------------------------------------------------- 1 | import "./bot_ping"; 2 | import "./bot_server_count"; 3 | import "./login"; 4 | import "./on_connected"; 5 | import "./set_bot_game"; 6 | import "./get_bot"; 7 | import "./s4d_bot_shutdown"; 8 | import "./set_bot_stream"; 9 | import "./set_bot_stream_text"; 10 | import "./bot_amount"; 11 | import "./change"; 12 | import "./bot_startup_time" -------------------------------------------------------------------------------- /src/blocks/jsonrequest/advanced/index.js: -------------------------------------------------------------------------------- 1 | import "./sendrequest" 2 | import "./response" 3 | import "./response_status" 4 | import "./response_headers" 5 | import "./response_get_data" 6 | import "./response_data" 7 | import "./header" 8 | import "./body" 9 | import "./sendrequest2" 10 | import "./data_section" 11 | import "./sendrequest3" 12 | import "./saveresponseas" -------------------------------------------------------------------------------- /src/blocks/discord/discord-canvas/rankcard/index.js: -------------------------------------------------------------------------------- 1 | import "./create_rank_card"; 2 | import "./set_badge"; 3 | import "./set_xp"; 4 | import "./set_level"; 5 | import "./set_rank"; 6 | import "./set_rank_name"; 7 | import "./set_reputation"; 8 | import "./set_color"; 9 | import "./set_text"; 10 | import "./set_transparency"; 11 | import "./set_radius"; 12 | import "./set_addon"; -------------------------------------------------------------------------------- /src/blocks/dashboard/index.js: -------------------------------------------------------------------------------- 1 | import "./new_dashboard" 2 | import "./variables" 3 | import "./new_text_input" 4 | import "./add_boolean_input" 5 | import "./add_inputs" 6 | import "./add_dropdown_input" 7 | import "./new_couple.js" 8 | import "./add_colour_input" 9 | import "./register_commands" 10 | import "./add_command" 11 | import "./add_session_object" 12 | import "./random_sekret" -------------------------------------------------------------------------------- /src/blocks/discord/discord-button/index.js: -------------------------------------------------------------------------------- 1 | import "./send-button"; 2 | import "./create-button-collector"; 3 | import "./button-id"; 4 | import "./button_think"; 5 | import "./button-reply"; 6 | import "./button_style"; 7 | import "./button_row"; 8 | import "./button_row_button"; 9 | import "./button-edit"; 10 | import "./button-delete"; 11 | import "./update"; 12 | import "./button-message" -------------------------------------------------------------------------------- /src/blocks/discord/roles/index.js: -------------------------------------------------------------------------------- 1 | import "./add_role"; 2 | import "./get_role"; 3 | import "./remove_role"; 4 | import "./delete_role"; 5 | import "./has_role"; 6 | import "./create_role"; 7 | import "./set_role_permission"; 8 | import "./get_all_roles_then"; 9 | import "./get_all_roles_then_roles"; 10 | import "./role_exist"; 11 | import "./role_possition"; 12 | import "./set_role_icon"; 13 | -------------------------------------------------------------------------------- /src/blocks/Eruption/message_embed/index.js: -------------------------------------------------------------------------------- 1 | import "./embed_create"; 2 | import "./embed_set_color"; 3 | import "./embed_set_author"; 4 | import "./embed_set_title"; 5 | import "./embed_set_desc"; 6 | import "./embed_set_thumbnail"; 7 | import "./embed_add_field"; 8 | import "./embed_set_image"; 9 | import "./embed_set_timestamp"; 10 | import "./embed_set_footer"; 11 | import "./embed_send"; 12 | // redman is cool 😎 -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/theroblox/index.js: -------------------------------------------------------------------------------- 1 | import "./UserInfo" 2 | import "./getUserInfoThen" 3 | import "./gaineduserID" 4 | import "./getUserIDbyUsername" 5 | import "./getUserImage" 6 | import "./userThumbnailInfo" 7 | import "./getGroup" 8 | import "./groupINFO" 9 | import "./getGroupIcon" 10 | import "./groupIcon" 11 | import "./getGroupUserRank" 12 | import "./groupUserRankName" 13 | import "./roblox_block_update_2" -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/index.js: -------------------------------------------------------------------------------- 1 | import "./button"; 2 | import "./make_button"; 3 | import "./add_btname"; 4 | import "./add_url"; 5 | import "./add_style"; 6 | import "./add_emoji"; 7 | import "./cnd_btn"; 8 | import "./button_id"; 9 | import "./btn_clicker"; 10 | import "./btn_ch"; 11 | import "./btn_srv"; 12 | import "./reply"; 13 | import "./update"; 14 | import "./btn_disabled"; 15 | import "./button_send_embed"; 16 | import "./ahq"; -------------------------------------------------------------------------------- /src/blocks/discord/reaction-event/index.js: -------------------------------------------------------------------------------- 1 | import "./on_react_added"; 2 | import "./on_react_removed"; 3 | import "./react_emoji"; 4 | import "./react_member"; 5 | import "./react_message_id"; 6 | import "./react_wait_added_reaction"; 7 | import "./wait_react_emoji_id"; 8 | import "./wait_react_emoji_name"; 9 | import "./reaction_count"; 10 | import "./reaction_message"; 11 | import "./removeall_reactions"; 12 | import "./remove_message_reaction"; -------------------------------------------------------------------------------- /src/blocks/godslayerakp/discord/embeds/index.js: -------------------------------------------------------------------------------- 1 | import "./add blank field" 2 | import "./add field" 3 | import "./add fields" 4 | import "./create embed" 5 | import "./set author" 6 | import "./set color" 7 | import "./set description" 8 | import "./set thumbnail" 9 | import "./set title" 10 | import "./set image" 11 | import "./set footer" 12 | import "./set thumbnail" 13 | import "./add timestamp" 14 | import "./send embed" 15 | import "./simple embed" -------------------------------------------------------------------------------- /src/block-tools.js: -------------------------------------------------------------------------------- 1 | export function getParentName(block) { 2 | const parent = block.getParent() 3 | return (parent == null ? null : parent.type) 4 | } 5 | export function getEventName(block) { 6 | let parent = block.getParent() 7 | let previous; 8 | while (parent != null) { 9 | previous = parent 10 | parent = parent.getParent() 11 | } 12 | parent = previous 13 | return (parent == null ? null : parent.type) 14 | } -------------------------------------------------------------------------------- /src/blocks/discord/webhook/index.js: -------------------------------------------------------------------------------- 1 | import "./create_webhook"; 2 | import "./edit_webhook"; 3 | import "./webhook_id"; 4 | import "./webhook_token"; 5 | import "./get_webhook_then"; 6 | import "./get_webhook_then_edit"; 7 | import "./webhook_send"; 8 | import "./create_webhook_customized" 9 | import "./webhook_send_created" 10 | import "./webhook_send_mentions" 11 | import "./webhook_send_created_mentions" 12 | import "./send_created_customized" 13 | import "./send_webhook_with_name" -------------------------------------------------------------------------------- /src/blocks/discord/embed/index.js: -------------------------------------------------------------------------------- 1 | import "./create_embed_then_send"; 2 | import "./create_embed_then_set_color"; 3 | import "./create_embed_then_set_title"; 4 | import "./create_embed_then_set_author"; 5 | import "./create_embed_then_set_description"; 6 | import "./create_embed_then_set_thumbnail"; 7 | import "./create_embed_then_add_field"; 8 | import "./create_embed_then_set_image"; 9 | import "./create_embed_then_set_footer"; 10 | import "./create_embed_then"; 11 | import "./create_them_url"; -------------------------------------------------------------------------------- /src/blocks/ahq/index.js: -------------------------------------------------------------------------------- 1 | import "./members/"; 2 | import "./buttons/"; 3 | import "./history"; 4 | import "./slash_register/"; 5 | import "./bad_wrds/"; 6 | import "./embeds" 7 | import "./handler" 8 | import "./chatbot" 9 | import "./send" 10 | import "./mut" 11 | import "./ahqfind" 12 | import "./server" 13 | import "./bot" 14 | import "./embed_reader" 15 | import "./nuke" 16 | import "./simple_host" 17 | import "./forms/index" 18 | import "./polls/" 19 | import "./dashboard/" 20 | import "./voice/" -------------------------------------------------------------------------------- /src/blocks/text/newline.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_newline"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_NEWLINE}", 7 | "output": "String", 8 | "colour": "#5ba58b", 9 | "helpUrl": "" 10 | }; 11 | 12 | Blockly.Blocks[blockName] = { 13 | init: function() { 14 | this.jsonInit(blockData); 15 | } 16 | }; 17 | 18 | Blockly.JavaScript[blockName] = function() { 19 | return [ '\'\\n\'', Blockly.JavaScript.ORDER_ATOMIC ]; 20 | }; 21 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/index.js: -------------------------------------------------------------------------------- 1 | import "./newMessage_channel_send"; 2 | import "./newMessage_delete"; 3 | import "./newmessage_content"; 4 | import "./newmsg_channel"; 5 | import "./newmsg_member"; 6 | import "./newmsg_server"; 7 | import "./newmsg_timestamp"; 8 | import "./oldMessage_channel_send"; 9 | import "./oldMessage_delete"; 10 | import "./oldmessage_content"; 11 | import "./oldmsg_member"; 12 | import "./when_message_is_edited"; 13 | import "./actual_edit_timestamp" 14 | import "./message_content_old_new" -------------------------------------------------------------------------------- /src/blocks/other/return.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_return"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_RETURN}", 7 | "args0": [ 8 | ], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function () { 22 | return `return\n`; 23 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/forms/repond/n_ahq.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | const blockName = "ahqq_ahq_modal"; 3 | 4 | const blockData = { 5 | "message0": "Send jose/redo embeds", 6 | "args0": [ 7 | ], 8 | "output": "ahq_type", 9 | "colour": '#40BF4A', 10 | }; 11 | 12 | Blockly.Blocks[blockName] = { 13 | init: function() { 14 | this.jsonInit(blockData); 15 | } 16 | }; 17 | Blockly.JavaScript[blockName] = function() { 18 | const code = [`embed`, Blockly.JavaScript.ORDER_NONE]; 19 | return code; 20 | }; -------------------------------------------------------------------------------- /src/blocks/invite-tracker/member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "Member"; 4 | 5 | const blockData = { 6 | "message0": "Member", 7 | "colour": "#187795", 8 | "output": "Member", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["member", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/invite-tracker/Server.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "Server"; 4 | 5 | const blockData = { 6 | "message0": "Server", 7 | "colour": "#187795", 8 | "output": "Server", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["member.guild", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/Alex/inviteurl.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "invite_ur"; 4 | 5 | const blockData = { 6 | "message0": "Invite URL", 7 | "colour": "#502e6e", 8 | "tooltip": "Get the URL of an invite", 9 | "helpUrl": "", 10 | "output": "String" 11 | } 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = [`invite.url`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "Message"; 4 | 5 | const blockData = { 6 | "message0": "message", 7 | "colour": "#a55b80", 8 | "output": "Message", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ["s4dmessage", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/henpokpok/reactions/reaction_messageid.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | 4 | const blockName = "react_messageId"; 5 | 6 | const blockData = { 7 | "message0": "Reacting Message id", 8 | "colour": "#BC5CF0", 9 | "output": "String" 10 | }; 11 | 12 | Blockly.Blocks[blockName] = { 13 | init: function() { 14 | this.jsonInit(blockData); 15 | } 16 | }; 17 | 18 | Blockly.JavaScript[blockName] = function() { 19 | const code = ["reaction.message.id", Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | 23 | -------------------------------------------------------------------------------- /src/blocks/invite-tracker/InviteMember.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "InviteMember"; 4 | 5 | const blockData = { 6 | "message0": "Inviter", 7 | "colour": "#187795", 8 | "output": "Member", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["inviter", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/mbuttons/b_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "button_id"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_B_ID}", 8 | "colour": "#5BA58C", 9 | "output": "String", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.customId", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mmenu/m_server.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "m_guild"; 5 | 6 | const blockData = { 7 | "message0": "context server", 8 | "colour": "#D85E47", 9 | "output": "Server", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.guild", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_url.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_url"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_URL}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.url`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/invite-tracker/AmountOfInvite.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "Amount"; 4 | 5 | const blockData = { 6 | "message0": "Amount of Invite of Inviter", 7 | "colour": "#187795", 8 | "output": "Number", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["uses", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/logs-events/member/member_boosted/member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "member"; 4 | 5 | const blockData = { 6 | "message0": "member", 7 | "output": "Member", 8 | "colour": "#5BA58C", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["member", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/p-s_stats/cpu.js: -------------------------------------------------------------------------------- 1 | 2 | import Blockly from "blockly/core"; 3 | 4 | const blockName = "cpu"; 5 | 6 | const blockData = { 7 | "message0": "Cpu Usage", 8 | "args0": [ 9 | ], 10 | "output": "String", 11 | "colour": "#a5745b", 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = ['obj', Blockly.JavaScript.ORDER_NONE ]; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/Alex/tmember.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "typing_member"; 4 | 5 | const blockData = { 6 | "message0": "Typing member", 7 | "colour": "#0b409c", 8 | "output": "Member", 9 | "tooltip": "The typing member", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dTyping.member", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/Alex/url.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "url_image"; 4 | 5 | const blockData = { 6 | 7 | "message0": "Image URL", 8 | "name": "url", 9 | "output": ["String"], 10 | "colour": "#05a386", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | } 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`await image_finder.find(query)`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/nullBlock.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_null"; 4 | 5 | const blockData = { 6 | "message0": "null", 7 | "args0": [], 8 | "output": "Number", 9 | "colour": "#FF0000", 10 | "tooltip": "Returns as null.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`null`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | } 24 | -------------------------------------------------------------------------------- /src/blocks/better_music/addedsong.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "added_song_name"; 4 | 5 | const blockData = { 6 | "message0": "Name of the added track", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`song`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/base/bot_ping.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_bot_ping"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_BOT_PING}", 7 | "colour": "#5b67a5", 8 | "tooltip": "", 9 | "output": "Number", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4d.client.ws.ping", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-menu/menu-id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_menu_click_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MENU_ID}", 7 | "colour": "#187795", 8 | "output": "String", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["i.customId", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/mmenu/m_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "m_member"; 5 | 6 | const blockData = { 7 | "message0": "context member", 8 | "colour": "#187795", 9 | "output": "Member", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.member", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mmenu/m_name.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "m_name"; 5 | 6 | const blockData = { 7 | "message0": "context name", 8 | "colour": "#5BA58C", 9 | "tooltip": "", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.commandName", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_server.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_guild"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_S_GUILD}", 8 | "colour": "#D85E47", 9 | "output": "Server", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.guild", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/music/track_name.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_name"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_NAME}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.title`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/backpack-save-load.js: -------------------------------------------------------------------------------- 1 | import localforage from "localforage"; 2 | export default async function Load(backpack){ 3 | console.log('started backpack') 4 | const content = await localforage.getItem("backpack3"); 5 | if(content !== null){ 6 | console.log('loading backpack') 7 | backpack.setContents(content) 8 | } 9 | Save(backpack) 10 | } 11 | async function Save(backpack){ 12 | setInterval(async function(){ 13 | console.log('saving backpack') 14 | localforage.setItem("backpack3",backpack.getContents()); 15 | 16 | }, 1000); 17 | } -------------------------------------------------------------------------------- /src/blocks/ahq/server.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | const blockName = "server_file"; 3 | 4 | const blockData = { 5 | "type": "block_type", 6 | "message0": "Load Server.js in your project!", 7 | "args0": [], 8 | "colour": '#3366ff', 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function() { 19 | const code = `//let serverjs = 'true';\n`; 20 | return code; 21 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/slash_register/new_option.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_reg_new_options"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "Add option", 7 | "args0": [], 8 | "colour": '#33cc00', 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | }; 12 | 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | Blockly.JavaScript[blockName] = function(){ 20 | const code = `,\n`; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/better_music/songurl.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_track_url"; 4 | 5 | const blockData = { 6 | "message0": "Song URL", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`newSong.url`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/discord-backup/backup_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_backup_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_BACKUP_ID}", 7 | "colour": "#187795", 8 | "output": "String", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["backupData.id", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/mbuttons/b_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "button_channel"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_B_CHANNEL}", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/mbuttons/b_server.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "button_guild"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_B_GUILD}", 8 | "colour": "#D85E47", 9 | "output": "Server", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.guild", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/membed/index.js: -------------------------------------------------------------------------------- 1 | import "./create_embed_then_set_author"; 2 | import "./create_embed_then_set_title"; 3 | import "./create_embed_then_set_description"; 4 | import "./create_embed_then_set_thumbnail"; 5 | import "./create_embed_then_set_color"; 6 | import "./create_embed_then_set_image"; 7 | import "./create_embed_then_add_field"; 8 | import "./create_embed_then_set_footer"; 9 | import "./create_embed_then_send"; 10 | import "./create_embed_then_set_time"; 11 | import "./create_embed_then_add_blankfield"; 12 | import "./create_embed_then"; 13 | import "./send_embed_string"; -------------------------------------------------------------------------------- /src/blocks/discord/membed/send_embed_string.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "send_m_embed_string"; 4 | 5 | const blockData = { 6 | "message0": "Send Embed", 7 | "colour": "#40BF4A", 8 | "tooltip": null, 9 | "output": "Embed", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["embed\n", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_id.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_ID}", 7 | "colour": "#5BA58C", 8 | "tooltip": "", 9 | "output": "String", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.id", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/pin_message.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_pin"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_PIN}", 7 | "args0": [ 8 | ], 9 | "colour": "#4C97FF", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function(){ 23 | return "s4dmessage.pin()" 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/mmenu/m_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "m_channel"; 5 | 6 | const blockData = { 7 | "message0": "context channnel", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/connected.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_connected"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_CONNECTED}", 7 | "args0": [ 8 | ], 9 | "output": "Boolean", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['queue.connection', Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_views.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_views"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_VIEWS}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.views`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/newmsg_server.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "new_message_server"; 5 | 6 | const blockData = { 7 | "message0": "message server", 8 | "colour": "#D85E47", 9 | "output": "Server", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = ["newMessage.guild", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/events/channel/channelCreate/channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "cc_channel"; 5 | 6 | const blockData = { 7 | "message0": "created channel", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/events/channel/channelDelete/channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "cd_channel"; 5 | 6 | const blockData = { 7 | "message0": "deleted channel", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/category/created_cat.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "frost_created_cat"; 4 | 5 | const blockData = { 6 | "message0": "Created Category/Channel", 7 | "output": ["Category", "Channel"], 8 | "colour": "#a55b80", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function () { 20 | var code = 'cat'; 21 | return [code, Blockly.JavaScript.ORDER_NONE]; 22 | }; -------------------------------------------------------------------------------- /src/blocks/henpokpok/reactions/reaction_member.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | 4 | const blockName = "react_member"; 5 | 6 | const blockData = { 7 | "message0": "Reacting member", 8 | "colour": "#F0C55C", 9 | "tooltip":"react,remove reaction", 10 | "output": "Member" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["user", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /src/blocks/invention/Other/backup-list.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "inv_backup_list"; 4 | 5 | const blockData = { 6 | "message0": "backups", 7 | "output": "Array", 8 | "colour": "#187795", 9 | "tooltip": "Gets list of backup ids", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | var code = `_S4D_backups`; 21 | 22 | return [code, Blockly.JavaScript.ORDER_NONE]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/better_music/first-song-name.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "song-first"; 4 | 5 | const blockData = { 6 | "message0": "First song name", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`song`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/discord-menu/menu_value.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_menu_value"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MENU_VALUE}", 7 | "colour": "#187795", 8 | "output": "String", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["i.values[0]", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mbuttons/b_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "button_author"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_B_CLICKER}", 8 | "colour": "#187795", 9 | "output": "Member", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.member", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_author"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_S_MEMBER}", 8 | "colour": "#187795", 9 | "output": "Member", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = ["interaction.member", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_author.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_author"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_AUTHOR}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.author`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/fs/data.js: -------------------------------------------------------------------------------- 1 | 2 | import Blockly from "blockly/core"; 3 | 4 | const blockName = "frost_fs_data"; 5 | 6 | const blockData = { 7 | "message0": "Data", 8 | "args0": [ 9 | ], 10 | "output": "String", 11 | "colour": "#a5745b", 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = ['data', Blockly.JavaScript.ORDER_NONE ]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/Alex/tserver.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "typing_server"; 4 | 5 | const blockData = { 6 | "message0": "Typing server", 7 | "colour": "#7b3a9c", 8 | "output": "Server", 9 | "tooltip": "The server someone is typing in", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dTyping.guild", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/captcha/captcha_value.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "captcha_value"; 4 | 5 | const blockData = { 6 | "message0": "Captcha Value", 7 | "args0": [ 8 | ], 9 | "colour": "#187795", 10 | "output": "String", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`captcha.value`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/discord/discord-button/button-id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_button_click_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_BUTTON_CLICK_ID}", 7 | "colour": "#187795", 8 | "output": "String", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["i.customId", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/unpin_message.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_unpin"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_UNPIN}", 7 | "args0": [ 8 | ], 9 | "colour": "#4C97FF", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function(){ 23 | return "s4dmessage.unpin()" 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_channel"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_S_CHANNEL}", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_name.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_name"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_S_NAME}", 8 | "colour": "#5BA58C", 9 | "tooltip": "", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.commandName", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_duration.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_duration"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_DURATION}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.duration`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/newmsg_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "newmsg_channel"; 5 | 6 | const blockData = { 7 | "message0": "message channel", 8 | "colour": "#a55b80", 9 | "output": "Channel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = ["newMessage.channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/fs/err.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "frost_fs_err"; 4 | 5 | const blockData = { 6 | "message0": "err", 7 | "args0": [ 8 | ], 9 | "output": [ "Boolean", "String" ], 10 | "colour": "#a5745b", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = ['err', Blockly.JavaScript.ORDER_NONE ]; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/qr-generator/qr.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "qr"; 4 | 5 | const blockData = { 6 | "message0": "QRCode", 7 | "colour": "#D14081", 8 | "args0": [], 9 | "tooltip": "QR code, as text and not an image", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = [`QR`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/Lyric_finder/lyric.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "lyric"; 4 | 5 | const blockData = { 6 | "message0": "Lyric", 7 | "colour": "#40BF4A", 8 | "args0": [ 9 | ], 10 | "tooltip": null, 11 | "output": "String", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`lyrics`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_guild.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_guild"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_GUILD}", 7 | "colour": "#D85E47", 8 | "output": "Server", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.guild", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_member"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_MEMBER}", 7 | "colour": "#187795", 8 | "output": "Member", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.member", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_channel"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_CHANNEL}", 7 | "args0": [ 8 | ], 9 | "output": "Channel", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`queue.metadata.channel`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/music/track_thumbnail.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_track_thumbnail"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_TRACK_THUMBNAIL}", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`track.thumbnail`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/invention/Other/inv-chart-to-url.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "inv_chart_to_url"; 4 | 5 | const blockData = { 6 | "message0": "chart url", 7 | "output": null, 8 | "colour": 75, 9 | "tooltip": "", 10 | "helpUrl": "" 11 | } 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript['inv_chart_to_url'] = function() { 20 | // this is giving me pain 21 | var code = `chart.toURL()`; 22 | 23 | return [code, Blockly.JavaScript.ORDER_NONE]; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/quickdb/delete_all.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "qdb_delete_all"; 4 | 5 | const blockData = { 6 | "message0": "Delete all data from sqlite database", 7 | "args0": [ 8 | ], 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "colour": "#5ba58b", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code ='await qdb.deleteAll();\n' 23 | return code 24 | }; -------------------------------------------------------------------------------- /src/blocks/Alex/Reactions/remojiid.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reaction_emoji_id"; 4 | 5 | const blockData = { 6 | "message0": "Reaction emoji ID", 7 | "colour": "#5BA58C", 8 | "output": "String", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["reaction.emojiId", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/Alex/Reactions/rserver.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reaction_server"; 4 | 5 | const blockData = { 6 | "message0": "Reaction server", 7 | "colour": "#D85E47", 8 | "output": "Server", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["reaction.message.guild", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/Alex/allroles.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "all_roles"; 4 | 5 | const blockData = { 6 | 7 | "message0": "All roles", 8 | "name": "roles", 9 | "output": "String", 10 | "colour": "#56afdb", 11 | "tooltip": "All of the roles that the member has.", 12 | "helpUrl": "" 13 | } 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function () { 22 | const code = [`memberRoles`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/Alex/tchannel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "typing_channel"; 4 | 5 | const blockData = { 6 | "message0": "Typing channel", 7 | "colour": "#1392ed", 8 | "output": "Channel", 9 | "tooltip": "Get a channel a member is typing in", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dTyping.channel", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/undefinedBlock.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_undefined"; 4 | 5 | const blockData = { 6 | "message0": "undefined", 7 | "args0": [], 8 | "output": "Number", 9 | "colour": "#FF0000", 10 | "tooltip": "Returns as undefined.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`undefined`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | } 24 | -------------------------------------------------------------------------------- /src/blocks/better_music/newtrackname.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "new_track_name"; 4 | 5 | const blockData = { 6 | "message0": "Name of the new track", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`newSong`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/better_music/next.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_skip"; 4 | 5 | const blockData = { 6 | "message0": "Skip to the next song", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.skip();`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/songimage.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_song_thumbnail"; 4 | 5 | const blockData = { 6 | "message0": "track thumbnail", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`newSong.thumbnail`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/trackchannel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "retro_track_channel"; 4 | 5 | const blockData = { 6 | "message0": "Track channel", 7 | "args0": [ 8 | ], 9 | "output": "Channel", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`queue.data.channel`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/delete_message.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_delete"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_DELETE_MESSAGE}", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `s4dmessage.delete();\n`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_channel"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_CHANNEL}", 7 | "colour": "#a55b80", 8 | "output": "Channel", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.channel", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/servers/index.js: -------------------------------------------------------------------------------- 1 | import "./boost_level"; 2 | import "./get_server"; 3 | import "./icon_url"; 4 | import "./member_count"; 5 | import "./server_name"; 6 | import "./server_owner"; 7 | import "./set_server_name"; 8 | import "./get_all_server_then"; 9 | import "./get_all_server_then_server"; 10 | import "./number_of__server"; 11 | import "./creation_date_of_server"; 12 | import "./leave_server"; 13 | import "./server_id"; 14 | import "./set_server" 15 | import "./verification_level" 16 | import "./explicit_content_filter" 17 | import "./default_notif_lvl" 18 | import "./get_server_attribute" 19 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/newMessage_delete.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_newmsg_del"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_N_DEL}", 8 | "colour": "#4C97FF", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function(){ 22 | const code = `newMessage.delete()\n`; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/oldMessage_delete.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_oldmsg_del"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_O_MSG_CON_DEL}", 8 | "colour": "#4C97FF", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function(){ 22 | const code = `oldMessage.delete()\n`; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/henpokpok/reactions/reaction_emoji.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | 4 | const blockName = "react_emoji"; 5 | 6 | const blockData = { 7 | "message0": "Reacting emoji", 8 | "colour": "#79F05C", 9 | "tooltip":"Emoji of the reaction", 10 | "output": "String" 11 | 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = ["reaction.emoji.name", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/blocks/together/invite_code.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "invite_code"; 4 | 5 | const blockData = { 6 | "message0": "together invite code", 7 | "colour": "#40BF4A", 8 | "args0": [ 9 | ], 10 | "tooltip": null, 11 | "output": "String", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`invite.code`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/Alex/Reactions/rchannel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reaction_channel"; 4 | 5 | const blockData = { 6 | "message0": "Reaction channel", 7 | "colour": "#A55B80", 8 | "output": "Channel", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["reaction.message.channel", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/banana.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_banana"; 4 | 5 | const blockData = { 6 | "message0": "banana block", 7 | "args0": [], 8 | "colour": "#ffcc00", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "go back to banana mode", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return `s4dmessage.channel.send('banana 🍌')`; 23 | } 24 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/tests/type_change.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_tests_typeChange"; 4 | 5 | const blockData = { 6 | "message0": "Type Change", 7 | "args0": [], 8 | "colour": 0, 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | }, 19 | isHiden: true 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function(){ 23 | const code = ``; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/Shuffle.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_shuffle"; 4 | 5 | const blockData = { 6 | "message0": "Shuffle the queue", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.shuffle();`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/mentioned_role.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_mentioned_role"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MENTIONED_ROLE}", 7 | "colour": "#187795", 8 | "tooltip": "", 9 | "output": "Role", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = [`s4dmessage.mentions.roles.first()`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_author.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_author"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_AUTHOR}", 7 | "colour": "#187795", 8 | "output": "Member", 9 | "tooltip": "", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.author", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | 24 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/newmessage_content.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_newmessage_content"; 5 | 6 | const blockData = { 7 | "message0": "new message content", 8 | "colour": "#5BA58C", 9 | "tooltip": "", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = ["newMessage.content", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/wmise/oldmessage_content.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_oldmessage_content"; 5 | 6 | const blockData = { 7 | "message0": "%{BKY_O_MSG_CON}", 8 | "colour": "#5BA58C", 9 | "tooltip": "", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["oldMessage.content", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/Monaco/index.js: -------------------------------------------------------------------------------- 1 | import "./Set NSFW" 2 | import "./monaco_delete_role" 3 | import "./random role" 4 | import "./followchannel" 5 | import "./invdel" 6 | import "./invsall" 7 | import "./invscode" 8 | import "./invschannel" 9 | import "./expanded_punishments" 10 | import "./roleonposition" 11 | import "./setroleposition" 12 | import "./channel_position" 13 | import "./setchannelposition" 14 | import "./createserver" 15 | import "./created" 16 | import "./serverdel" 17 | import "./memberswithrole" 18 | import "./robloxbuy" 19 | import "./timeoutuntil" 20 | import "./timeoutuntiltimestamp" 21 | import "./slowmo" -------------------------------------------------------------------------------- /src/blocks/better_music/betterduration.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_duration"; 4 | 5 | const blockData = { 6 | "message0": "Duration of the track", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [`newSong.duration`, Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/better_music/betterstop.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_stop"; 4 | 5 | const blockData = { 6 | "message0": "Stop the queue and disconnect", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.stop();`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/musicpause.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_pause"; 4 | 5 | const blockData = { 6 | "message0": "pause the player", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.setPaused(true);`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/database/old_database/delete_all.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_delete_all_data"; 4 | 5 | const blockData = { 6 | "message0": "Delete all data from database", 7 | "args0": [ 8 | ], 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "colour": "#5ba58b", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code ='s4d.database.clear()' 23 | return code 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/channels/reply_mentioned_role.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reply_mentioned_role"; 4 | 5 | const blockData = { 6 | "message0": "answer mentioned role", 7 | "colour": "#187795", 8 | "tooltip": "", 9 | "output": "Role", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = [`s4d.message.mentions.roles.first()`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_content.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_content"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MESSAGE_CONTENT}", 7 | "colour": "#5BA58C", 8 | "tooltip": "", 9 | "output": "String", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ["s4dmessage.content", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/vanity_url_add/vanity_url.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | const blockName = "vanity-url"; 4 | 5 | const blockData = { 6 | "message0": "vanity url", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#5BA58C", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = ["vanityURL", Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/base/botuser.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_base_bot"; 4 | 5 | const blockData = { 6 | "message0": "bot", 7 | "args0": [], 8 | "colour": "#5b67a5", 9 | "output": ["Member", "User"], 10 | "tooltip": "The bot itself, as a user.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = [`s4d.client.user`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | } -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/form_id.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "id_form_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "Form Id", 6 | "colour": '#33cc00', 7 | "output": "String", 8 | "tooltip": "The ID of the clicked form.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['(i.customId)', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/better_music/idchannel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_vcid"; 4 | 5 | const blockData = { 6 | "message0": "Voice channel id", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannelId", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.member.voice.channelId', Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/musicresume.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_resume"; 4 | 5 | const blockData = { 6 | "message0": "resume the player", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.setPaused(false);\n`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/members/member_banner.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | const blockName = "s4d_member_banner"; 3 | 4 | const blockData = { 5 | "message0": "Member Banner URL", 6 | "colour": "#187795", 7 | "output": "String", 8 | "tooltip": "", 9 | "helpUrl": "" 10 | }; 11 | 12 | Blockly.Blocks[blockName] = { 13 | init: function() { 14 | this.jsonInit(blockData); 15 | }, 16 | isHiden: true 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["banner", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/message-event/message_ts.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_message_ts"; 4 | 5 | const blockData = { 6 | "message0": "message timestamp", 7 | "colour": "#5BA58C", 8 | "tooltip": "", 9 | "output": "String", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4dmessage.createdTimestamp", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/music/voice_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_voice_channel"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_VOICE_CHANNEL_C}", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannel", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.member.voice.channel', Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/logs-events/guild/guild_banner_add/banner_url.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | const blockName = "banner-url"; 4 | 5 | const blockData = { 6 | "message0": "banner url", 7 | "args0": [ 8 | ], 9 | "output": "String", 10 | "colour": "#5BA58C", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = ["bannerURL", Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/quickdb/all.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "qdb_all"; 4 | 5 | const blockData = { 6 | "message0": "Get all data from SQLite DB", 7 | "args0": [ 8 | ], 9 | "output": "JSON", 10 | "colour": "#5ba58b", 11 | "tooltip": "Gets all data from database\nOutputs a JSON map", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [ 'await qdb.all()\n', Blockly.JavaScript.ORDER_ATOMIC ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/LaserCat/switch/switch_break.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_lasercat_switch_break"; 4 | 5 | const blockData = { 6 | "message0": "end case", 7 | "args0": [ 8 | ], 9 | "colour": "#8B48A3", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "Allows you to manually end a case here.", 13 | "helpUrl": "" 14 | }; 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function () { 22 | return `break; 23 | `; 24 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/btn_srv.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "id_btn_srv"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "button server", 6 | "colour": '#33cc00', 7 | "output": "Server", 8 | "tooltip": "The server the buttons were posted in.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['(i.guild)', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/ahq/handler/prefix.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "prefix_ahq_hndler"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "bot prefix (handler)", 7 | "colour": '#33cc00', 8 | "output": "String", 9 | "tooltip": "???", 10 | "helpUrl": "" 11 | }; 12 | 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ['(ahqhandler[`prefix`])', Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/better_music/botvcid.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_botvcid"; 4 | 5 | const blockData = { 6 | "message0": "Bot Voice channel", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannelId", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.guild.me.voice.channelId', Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/loopstop.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "loop_stop"; 4 | 5 | const blockData = { 6 | "message0": "Stop the loop", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.setRepeatMode(RepeatMode.DISABLED);`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/voicechannel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "better_voice_channel"; 4 | 5 | const blockData = { 6 | "message0": "Voice Channel", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannel", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.member.voice.channel', Blockly.JavaScript.ORDER_NONE ]; 23 | }; -------------------------------------------------------------------------------- /src/blocks/database/dootabase/delete_all.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_delete_all_data2"; 4 | 5 | const blockData = { 6 | "message0": "Delete current dootabase data", 7 | "args0": [ 8 | ], 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "colour": "#50a153", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code ='dootabase.clear()\n' 23 | 24 | 25 | return code 26 | }; 27 | -------------------------------------------------------------------------------- /src/blocks/discord/channels/reply_mentioned_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reply_mentioned_member"; 4 | 5 | const blockData = { 6 | "message0": "answer mentioned member", 7 | "colour": "#187795", 8 | "tooltip": "", 9 | "output": "Member", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = [`s4d.message.mentions.members.first()`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/message-event/mentioned_member.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_mentioned_member"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_MENTIONED_MEMBER}", 7 | "colour": "#187795", 8 | "tooltip": "", 9 | "output": "Member", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = [`s4dmessage.mentions.members.first()`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/thread-event/index.js: -------------------------------------------------------------------------------- 1 | import "./on_new_thread"; 2 | import "./on_thread_update"; 3 | import "./on_thread_remove"; 4 | import "./start_thread"; 5 | import "./channel_thread"; 6 | import "./updated_thread"; 7 | import "./thread_archive"; 8 | import "./started_thread"; 9 | import "./created-thread"; 10 | import "./deleted_thread"; 11 | import "./thread_name"; 12 | import "./thread_id"; 13 | import "./thread_server"; 14 | import "./message_start_thread.js"; 15 | import "./thread_boolean"; 16 | import "./thread_info"; 17 | import "./thread_member_add"; 18 | import "./thread_get_then"; 19 | import "./gotten_thread"; -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/btn_ch.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "id_btn_ch"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "button channel", 7 | "colour": '#33cc00', 8 | "output": "Channel", 9 | "tooltip": "The channel of the button message.", 10 | "helpUrl": "" 11 | }; 12 | 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ['(i.channel)', Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/button_id.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "id_btn_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "button id", 6 | "colour": '#33cc00', 7 | "output": "String", 8 | "tooltip": "The ID of the button that was pressed.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['(i.customId)', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/textbox_srvr.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "server_form_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "Form Server", 6 | "colour": '#33cc00', 7 | "output": "Server", 8 | "tooltip": "The server the form was in.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['(i.guild)', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/ahq/handler/not_owner.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "owner_n_ahq_hndler"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "Not Owner Message", 7 | "colour": '#33cc00', 8 | "output": "String", 9 | "tooltip": "???", 10 | "helpUrl": "" 11 | }; 12 | 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ['(ahqhandler[`not-owner`])', Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/base/bot_startup_time.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_bot_startup_time"; 4 | 5 | const blockData = { 6 | "message0": "bot startup time", 7 | "colour": "#5b67a5", 8 | "tooltip": "", 9 | "output": "String", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["String(s4d.client.readyAt)", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/channels/reply_mentioned_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "reply_mentioned_channel"; 4 | 5 | const blockData = { 6 | "message0": "answer mentioned channel", 7 | "colour": "#187795", 8 | "tooltip": "", 9 | "output": "Channel", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = [`s4d.message.mentions.channels.first()`, Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_bot_voice_channel_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "bot_voice_channel_id"; 5 | 6 | const blockData = { 7 | "message0": "bot voice channel id", 8 | "colour": "#D85E47", 9 | "output": "VoiceChannelId", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.guild.me.voice.channelId", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/music/voice_channel_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_voice_channel_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_VOICE_CHANNEL_ID}", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannelId", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.member.voice.channelId', Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/category/message_category.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "frost_message_category"; 4 | 5 | const blockData = { 6 | "message0": "message channel category", 7 | "args0": [ 8 | ], 9 | "output": "Category", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function () { 22 | return [`s4dmessage.channel.parent`, Blockly.JavaScript.ORDER_NONE]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/temp_channels/member_name.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "temp_member_name"; 4 | 5 | const blockData = { 6 | "message0": "name of channel creator", 7 | "colour": "#40BF4A", 8 | "args0": [ 9 | ], 10 | "tooltip": null, 11 | "output": "String", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`s4dmember.user.username`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/btn_clicker.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "id_btn_clkr"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "button member", 6 | "colour": '#33cc00', 7 | "output": "Member", 8 | "tooltip": "The member who clicked the button.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['(i.member.user)', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/ahq/handler/not-perms.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "not_perms_ahq_hndler"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "Not MOD Perms Message", 7 | "colour": '#33cc00', 8 | "output": "String", 9 | "tooltip": "???", 10 | "helpUrl": "" 11 | }; 12 | 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ['(ahqhandler[`not-perms`])', Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/better_music/songloop.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_loop_song"; 4 | 5 | const blockData = { 6 | "message0": "Loop the current song", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.setRepeatMode(RepeatMode.SONG);`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/captcha/create_new_captcha.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "create_captcha"; 4 | 5 | const blockData = { 6 | "message0": "Create New Captcha", 7 | "args0": [ 8 | ], 9 | "colour": "#4C97FF", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `let captcha = new Captcha();\n` 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-button/button-message.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jose_jg_buttons_s4d_button_message"; 4 | 5 | const blockData = { 6 | "message0": "button message", 7 | "colour": "#187795", 8 | "output": "Message", 9 | "tooltip": "The message of the button.", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function () { 20 | const code = ["i.message", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/music/bot_voice_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_bot_voice_channel"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_BOT_VOICE_CHANNEL}", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannelId", 10 | "colour": "#a55b80", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return ['s4dmessage.guild.me.voice.channelId', Blockly.JavaScript.ORDER_NONE ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/crosspost.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "crosspost"; 4 | 5 | const blockData = { 6 | "message0": "Crosspost recived message (only anouncment channels)", 7 | "args0": [ 8 | ], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function(){ 23 | return `s4dmessage.crosspost();\n`; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/other/consoleclear.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_clearconsole"; 4 | 5 | const blockData = { 6 | "message0": "clear console", 7 | "args0": [], 8 | "colour": "#D14081", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "Clears the console on whatever the bot is running on.", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function(){ 22 | return `console.clear() 23 | `; 24 | }; -------------------------------------------------------------------------------- /src/blocks/ticket_system/slashmessagechannel.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "slash_message_channel"; 4 | 5 | const blockData = { 6 | "message0": "[Slash] Message channel", 7 | "colour":"#d14081", 8 | "args0": [ 9 | ], 10 | "tooltip": null, 11 | "output": "Channel", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`interaction.channel`, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/textbox_channel.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "channel_form_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "Form Channel", 6 | "colour": '#33cc00', 7 | "output": "Channel", 8 | "tooltip": "The channel of the clicked form.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['i.channel', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/textbox_clicker.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "clkr_form_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "Form Clicker", 6 | "colour": '#33cc00', 7 | "output": "Member", 8 | "tooltip": "The member who clicked the form.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['i.member.user', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; 22 | -------------------------------------------------------------------------------- /src/blocks/better_music/queueloop.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "better_loop_queue"; 4 | 5 | const blockData = { 6 | "message0": "Loop the current queue", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = `guildQueue.setRepeatMode(RepeatMode.QUEUE);`; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/base/s4d_bot_shutdown.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_bot_shutdown"; 5 | 6 | const blockData = { 7 | "message0": "Shutdown the bot", 8 | "colour": "#4C97FF", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "Litterally shutdowns the bot", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function(){ 22 | const code = `s4d.client.destroy();\n`; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_voice_channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_voice_channel"; 5 | 6 | const blockData = { 7 | "message0": "interaction member voice channel", 8 | "colour": "#D85E47", 9 | "output": "VoiceChannel", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.member.voice.channel", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/Alex/channel.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "tts_channel"; 4 | 5 | const blockData = { 6 | "message0": "Voice Channel", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannel", 10 | "colour": "#5153c2", 11 | "tooltip": "The voice channel ID of the current message member(?)", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function () { 22 | return ['s4dmessage.member.voice.channelId', Blockly.JavaScript.ORDER_NONE]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/ahq/handler/nsfw.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "nsfw_ahq_hndler"; 4 | //block working now working 5 | const blockData = { 6 | "message0": "NSFW Channel Warning message", 7 | "args0": [], 8 | "colour": '#33cc00', 9 | "output": "String", 10 | "tooltip": "???", 11 | "helpUrl": "" 12 | }; 13 | 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = [`(ahqhandler[\`nsfw\`])`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/discord/discord-giveaway/giveaway_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_giveaway_id"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_GIVEAWAY_ID}", 7 | "colour": "#187795", 8 | "output": "String", 9 | "tooltip": "The Message ID of the Giveaway you just created.", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["gData.message.id", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/other_err.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "frost_other_err"; 4 | 5 | const blockData = { 6 | "message0": "error", 7 | "args0": [], 8 | "output": [ "Boolean", "String" ], 9 | "colour": "#D14081", 10 | "tooltip": "Used in the \"if error\" part of the \"try, if error\" block.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ['err', Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | }; -------------------------------------------------------------------------------- /src/blocks/captcha/captcha_image.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "captcha_image"; 4 | 5 | const blockData = { 6 | "message0": "Captcha Image", 7 | "args0": [ 8 | ], 9 | "colour": "#187795", 10 | "output": "Captcha", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = [`new Discord.MessageAttachment(captcha.JPEGStream, "captcha.jpeg") `, Blockly.JavaScript.ORDER_NONE]; 23 | return code; 24 | }; -------------------------------------------------------------------------------- /src/blocks/discord/base/bot_server_count.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_bot_server_count"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_BOT_SERVER_COUNT}", 7 | "colour": "#5b67a5", 8 | "tooltip": "How many server(s) the bot is in.", 9 | "output": "Number", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["s4d.client.guilds.cache.size", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/wmise/newmsg_timestamp.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "newmsg_timestamp"; 5 | 6 | const blockData = { 7 | "message0": "date of message edit", 8 | "colour": "#5BA58C", 9 | "tooltip": "The time that the message was edited at.", 10 | "output": "String", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function () { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function () { 21 | const code = ["newMessage.editedAt", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/ahq/buttons/button_send_embed.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | const blockName = "embed_btn_ahq"; 3 | //block working now working 4 | const blockData = { 5 | "message0": "send Jose/Redo embed", 6 | "colour": '#33cc00', 7 | "output": "ahq", 8 | "tooltip": "Send a Jose or Redo embed, which have no names.", 9 | "helpUrl": "" 10 | }; 11 | 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function () { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | Blockly.JavaScript[blockName] = function () { 19 | const code = ['embeds: [embed]', Blockly.JavaScript.ORDER_NONE]; 20 | return code; 21 | }; -------------------------------------------------------------------------------- /src/blocks/database/dootabase/get_all_data.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_get_all_data2"; 4 | 5 | const blockData = { 6 | "message0": "Get all data from dootabase", 7 | "args0": [ 8 | ], 9 | "output": "JSON", 10 | "colour": "#50a153", 11 | "tooltip": "Gets all data from dootabase\nOutputs a JSON map", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [ 'dootabase.all()', Blockly.JavaScript.ORDER_ATOMIC ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/database/old_database/get_all_data.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_get_all_data"; 4 | 5 | const blockData = { 6 | "message0": "Get all data from database", 7 | "args0": [ 8 | ], 9 | "output": "JSON", 10 | "colour": "#5ba58b", 11 | "tooltip": "Gets all data from database\nOutputs a JSON map", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return [ 's4d.database.all()', Blockly.JavaScript.ORDER_ATOMIC ]; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-button/button-delete.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_button_delete_reply"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_DELETE_REPLY}", 7 | "args0": [ 8 | ], 9 | "colour": "#4C97FF", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `await i.deleteReply()\n` 24 | return code; 25 | }; 26 | 27 | -------------------------------------------------------------------------------- /src/blocks/discord/discord-giveaway/giveaway_data.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_giveaway_data"; 4 | 5 | const blockData = { 6 | "message0": "giveaway data", 7 | "colour": "#187795", 8 | "output": "Object", 9 | "tooltip": "An object containing all of the data about the Giveaway you just created.", 10 | "helpUrl": "" 11 | }; 12 | 13 | Blockly.Blocks[blockName] = { 14 | init: function() { 15 | this.jsonInit(blockData); 16 | } 17 | }; 18 | 19 | Blockly.JavaScript[blockName] = function() { 20 | const code = ["gData", Blockly.JavaScript.ORDER_NONE]; 21 | return code; 22 | }; 23 | -------------------------------------------------------------------------------- /src/blocks/discord/mslash/i_voice_channel_id.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "interaction_voice_channel_id"; 5 | 6 | const blockData = { 7 | "message0": "interaction member voice channel id", 8 | "colour": "#D85E47", 9 | "output": "VoiceChannelId", 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = ["interaction.member.voice.channelId", Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/sendTestconsole.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_testblock"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_JGPRINTTEST}", 7 | "args0": [], 8 | "colour": "#FFAA00", 9 | "previousStatement": null, 10 | "nextStatement": null, 11 | "tooltip": "Sends test text to console, don't use this block.", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | return `console.log('Test block, it worked bro')\n`; 23 | } 24 | -------------------------------------------------------------------------------- /src/blocks/together/together_vc.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "vc_channel"; 4 | 5 | const blockData = { 6 | "message0": "Together voice channel", 7 | "args0": [ 8 | ], 9 | "output": "VoiceChannel", 10 | "colour": "#40BF4A", 11 | "tooltip": "", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function() { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript[blockName] = function() { 22 | const code = ['s4dmessage.member.voice.channel.id', Blockly.JavaScript.ORDER_NONE ]; 23 | return code; 24 | }; 25 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/base/isrunbutton.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_rbs_isRunButton"; 4 | 5 | const blockData = { 6 | "message0": "bot is on run button?", 7 | "args0": [], 8 | "colour": "#4C97FF", 9 | "output": "Boolean", 10 | "tooltip": "Returns true if the bot is being ran on the Run Button.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`S4D_APP_RUN_BUTTON`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | } -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/s4duptime.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_s4duptime"; 4 | const blockData = { 5 | "message0": "bot uptime", 6 | "inputsInline": true, 7 | "colour": "#4C97FF", 8 | "args0": [], 9 | "output": "Number", 10 | "tooltip": "How long the bot has been up for in milliseconds.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`s4d.client.uptime`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/theroblox/groupIcon.js: -------------------------------------------------------------------------------- 1 | // roblox_user_info 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_roblox_group_icon"; 6 | 7 | const blockData = { 8 | "message0": "roblox group icon", 9 | "args0": [], 10 | "colour": 0, 11 | "output": "Number", 12 | "tooltip": "The roblox group's icon by ID.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = [`roblox_group_icon`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/ticket_system/close.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "close_ticket"; 5 | 6 | const blockData = { 7 | "message0": "Close the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.close(s4dmessage.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/ticket_system/slashclose.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "slash_close_ticket"; 5 | 6 | const blockData = { 7 | "message0": "[Slash] Close the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = `ticket.close(interaction.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/theroblox/gaineduserID.js: -------------------------------------------------------------------------------- 1 | // roblox_user_info 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_roblox_user_id"; 6 | 7 | const blockData = { 8 | "message0": "roblox user id", 9 | "args0": [], 10 | "colour": 0, 11 | "output": "Number", 12 | "tooltip": "The roblox player's ID by username.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = [`gained_roblox_user_id`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/webBlocks/amountofkeys.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_keycount"; 4 | 5 | const blockData = { 6 | "message0": "# of keys in data file", 7 | "args0": [], 8 | "output": null, 9 | "colour": 230, 10 | "tooltip": "Gets the amount of keys in the current data file.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`Object.keys(JSONdataS4D).length`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/blocks/jsonrequest/advanced/response_data.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_request_advanced_response_data"; 4 | const blockData = { 5 | "message0": "response data", 6 | "inputsInline": true, 7 | "colour": "#4C97FF", 8 | "args0": [], 9 | "output": null, 10 | "tooltip": "The data the server sent back.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`response.data`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/ticket_system/archive.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "archieve_ticket"; 5 | 6 | const blockData = { 7 | "message0": "Archive the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.archive(s4dmessage.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/examples/abcdef.js: -------------------------------------------------------------------------------- 1 | export default ` 2 | 3 | 4 | 5 | 6 | 7 | Your bot token 8 | 9 | 10 | 11 | 12 | 13 | 14 | This site was created to keep bot on 25/8 15 | 16 | 17 | 18 | 19 | 20 | `; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/bedrock/version.js: -------------------------------------------------------------------------------- 1 | // result_bedrock 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_bedrock_version"; 6 | 7 | const blockData = { 8 | "message0": "bedrock server version", 9 | "args0": [], 10 | "colour": 190, 11 | "output": "String", 12 | "tooltip": "Get the version of the server.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = [`result_bedrock.version`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/dashboard/random_sekret.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "random_sekret"; 4 | 5 | const blockData = { 6 | "type": "random_sekret", 7 | "message0": "Generate a random secret", 8 | "output": null, 9 | "colour": 260, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | } 13 | 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript['random_sekret'] = function () { 22 | var code = `([Math.floor(new Date().getTime() / 1000), 'e', Math.floor(Math.random() * 83490)].join(''))`; 23 | return [code, Blockly.JavaScript.ORDER_NONE]; 24 | }; -------------------------------------------------------------------------------- /src/blocks/ticket_system/unarchive.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "unarchieve_ticket"; 5 | 6 | const blockData = { 7 | "message0": "Unarchive the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.unarchive(s4dmessage.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/javafavicon.js: -------------------------------------------------------------------------------- 1 | //result_java 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_java_favicon"; 6 | 7 | const blockData = { 8 | "message0": "java favicon data URI", 9 | "args0": [], 10 | "colour": 120, 11 | "output": ["ImageDataURI", "String"], 12 | "tooltip": "Get the favicon of the server.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = [`result_java.favicon`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/theroblox/groupUserRankName.js: -------------------------------------------------------------------------------- 1 | // roblox_user_info 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_roblox_user_group_rank"; 6 | 7 | const blockData = { 8 | "message0": "roblox user group rank", 9 | "args0": [], 10 | "colour": 0, 11 | "output": "String", 12 | "tooltip": "The roblox player's rank in the group.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = [`roblox_group_rank`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/webBlocks/getallkeys.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_allkey"; 4 | 5 | const blockData = { 6 | "message0": "Get all keys in data file", 7 | "args0": [], 8 | "output": null, 9 | "colour": 230, 10 | "tooltip": "Gets all the key names in a data file, and seperates them with a comma.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`Object.keys(JSONdataS4D)`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/webBlocks/getallvalues.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_allval"; 4 | 5 | const blockData = { 6 | "message0": "Get all values in data file", 7 | "args0": [], 8 | "output": null, 9 | "colour": 230, 10 | "tooltip": "Gets all the values in a data file, and seperates them with a comma.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`Object.values(JSONdataS4D)`, Blockly.JavaScript.ORDER_NONE ]; 22 | return code; 23 | 24 | 25 | } 26 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/bedrock/edition.js: -------------------------------------------------------------------------------- 1 | // result_bedrock 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_bedrock_edition"; 6 | 7 | const blockData = { 8 | "message0": "bedrock server world name", 9 | "args0": [], 10 | "colour": 190, 11 | "output": "String", 12 | "tooltip": "Checks what the servers world name is.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function () { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function () { 23 | const code = [`result_bedrock.map`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/ticket_system/slasharchive.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "slash_archieve_ticket"; 5 | 6 | const blockData = { 7 | "message0": "[Slash] Archive the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.archive(interaction.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/var/blank.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "blank"; 4 | 5 | const blockData = { 6 | "message0": "⠀ %1 ⠀", 7 | "args0": [{ 8 | "type": "field_input", 9 | "name": "TEXT", 10 | "text": "" 11 | }], 12 | "output": null, 13 | "colour": "#a55b80", 14 | "tooltip": "Insert text" 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | 23 | Blockly.JavaScript[blockName] = function(block) { 24 | var text = block.getFieldValue('TEXT'); 25 | var code = `${text}`; 26 | return [code, Blockly.JavaScript.ORDER_ATOMIC]; 27 | }; -------------------------------------------------------------------------------- /src/blocks/ticket_system/setup.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "ticket_setup"; 5 | 6 | const blockData = { 7 | "message0": "Set ticket channel (mentioned channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.setup(s4dmessage, s4dmessage.mentions.channels.first().id);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/ticket_system/slashunarchive.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "slash_unarchieve_ticket"; 5 | 6 | const blockData = { 7 | "message0": "[Slash] Unarchive the ticket (message channel)", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = `ticket.unarchive(s4dmessage.channel);`; 24 | return code; 25 | }; 26 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/javadata.js: -------------------------------------------------------------------------------- 1 | //result_java 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_java_data"; 6 | 7 | const blockData = { 8 | "message0": "java data", 9 | "args0": [], 10 | "colour": 120, 11 | "output": "JSON", 12 | "tooltip": "All of the data the server has sent back. Can be stringified into a file and read with data blocks.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = [`result_java`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/javaversionname.js: -------------------------------------------------------------------------------- 1 | //result_java 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_java_version"; 6 | 7 | const blockData = { 8 | "message0": "java server version", 9 | "args0": [], 10 | "colour": 120, 11 | "output": "String", 12 | "tooltip": "Get the game version of the server. Sometimes isn't just a version number.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = [`result_java.version.name`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/bedrock/data.js: -------------------------------------------------------------------------------- 1 | // result_bedrock 2 | 3 | import Blockly from "blockly/core"; 4 | 5 | const blockName = "jg_minecraft_bedrock_data"; 6 | 7 | const blockData = { 8 | "message0": "bedrock data", 9 | "args0": [], 10 | "colour": 190, 11 | "output": "JSON", 12 | "tooltip": "All of the data the server has sent back. Can be stringified into a file and read with data blocks.", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = [`result_bedrock`, Blockly.JavaScript.ORDER_NONE]; 24 | return code; 25 | }; -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/rcon/disconnect.js: -------------------------------------------------------------------------------- 1 | //jimp.write('edited.jpg'); 2 | import * as Blockly from "blockly/core"; 3 | 4 | const blockName = "jg_minecraft_rcon_disconnect"; 5 | 6 | const blockData = { 7 | "message0": "disconnect from RCON", 8 | "inputsInline": true, 9 | "args0": [], 10 | "colour": 160, 11 | "previousStatement": null, 12 | "nextStatement": null, 13 | "tooltip": "Close the RCON client.", 14 | "helpUrl": "" 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | 23 | Blockly.JavaScript[blockName] = function() { 24 | const code = `await S4D_APP_MC_RCON_CLIENT.close() 25 | `; 26 | return code; 27 | } -------------------------------------------------------------------------------- /src/blocks/jsonrequest/advanced/response.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_request_advanced_response"; 4 | const blockData = { 5 | "message0": "response json", 6 | "inputsInline": true, 7 | "colour": "#4C97FF", 8 | "args0": [], 9 | "output": ["Object", "JSON"], 10 | "tooltip": "A JSON containing the server's response. Can be saved into a file if stringified and read with Data blocks.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`response`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/jsonrequest/advanced/response_headers.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_web_request_advanced_response_headers"; 4 | const blockData = { 5 | "message0": "response headers", 6 | "inputsInline": true, 7 | "colour": "#4C97FF", 8 | "args0": [], 9 | "output": ["Object", "JSON"], 10 | "tooltip": "A JSON containing the server's headers. Can be saved into a file if stringified.", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function() { 21 | const code = [`response.headers`, Blockly.JavaScript.ORDER_NONE]; 22 | return code; 23 | }; 24 | -------------------------------------------------------------------------------- /src/blocks/Monaco/created.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "monaco_created_guild"; 4 | 5 | const blockData = { 6 | "type": "monaco_created_guild", 7 | "message0": "created server", 8 | "colour": "#4C97FF", 9 | "output": "Server", 10 | "inputsInline": true, 11 | "tooltip": "Get the created guild.", 12 | "helpUrl": "" 13 | }; 14 | 15 | Blockly.Blocks[blockName] = { 16 | init: function () { 17 | this.jsonInit(blockData); 18 | } 19 | }; 20 | 21 | Blockly.JavaScript['monaco_created_guild'] = function() { 22 | // TODO: Assemble JavaScript into code variable. 23 | var code = `newServer`; 24 | // TODO: Change ORDER_NONE to the correct strength. 25 | return [code, Blockly.JavaScript.ORDER_NONE]; 26 | }; 27 | -------------------------------------------------------------------------------- /src/blocks/better_music/setdata.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "queue_setdata"; 4 | 5 | const blockData = { 6 | "message0": "Set track channel", 7 | "colour": "#4C97FF", 8 | "previousStatement": null, 9 | "nextStatement": null, 10 | "tooltip": "", 11 | "helpUrl": "" 12 | }; 13 | 14 | Blockly.Blocks[blockName] = { 15 | init: function() { 16 | this.jsonInit(blockData); 17 | } 18 | }; 19 | 20 | Blockly.JavaScript[blockName] = function(){ 21 | const code = ` 22 | let queue = client.player.createQueue(message.guild.id, {\n 23 | data: {\n 24 | channel: s4dmessage.channel 25 | } 26 | });`; 27 | return code; 28 | }; 29 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/minecraft/rcon/responsemessage.js: -------------------------------------------------------------------------------- 1 | // jg_minecraft_rcon_when_command_response 2 | // S4D_APP_MC_RCON 3 | // response 4 | 5 | import Blockly from "blockly/core"; 6 | 7 | const blockName = "jg_minecraft_rcon_command_response"; 8 | 9 | const blockData = { 10 | "message0": "command response", 11 | "args0": [], 12 | "colour": 160, 13 | "output": "String", 14 | "tooltip": "The response to the command that was ran by the bot.", 15 | "helpUrl": "" 16 | }; 17 | 18 | Blockly.Blocks[blockName] = { 19 | init: function() { 20 | this.jsonInit(blockData); 21 | } 22 | }; 23 | 24 | Blockly.JavaScript[blockName] = function() { 25 | const code = [`response.message`, Blockly.JavaScript.ORDER_NONE]; 26 | return code; 27 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/forms/repond/nahq_embed.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | const blockName = "ahq_ahq_modal"; 3 | 4 | const blockData = { 5 | "message0": "Send embeds %1", 6 | "args0": [ 7 | { 8 | "type": "input_value", 9 | "name": "Label", 10 | "check": "String", 11 | } 12 | ], 13 | "output": "ahq_type", 14 | "colour": '#40BF4A', 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | Blockly.JavaScript[blockName] = function(block) { 23 | const statementsThen = Blockly.JavaScript.valueToCode(block, "Label", Blockly.JavaScript.ORDER_NONE); 24 | const code = [`${statementsThen}`, Blockly.JavaScript.ORDER_NONE]; 25 | return code; 26 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/forms/value/value.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | const blockName = "something_modal"; 3 | 4 | const blockData = { 5 | "message0": "Send forms %1", 6 | "args0": [ 7 | { 8 | "type": "input_value", 9 | "name": "Label", 10 | "check": "String" 11 | } 12 | ], 13 | "output": "ahq_modal_names", 14 | "colour": '#40BF4A', 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | Blockly.JavaScript[blockName] = function(block) { 23 | const statementsThen = Blockly.JavaScript.valueToCode(block, "Label", Blockly.JavaScript.ORDER_NONE); 24 | const code = [`${statementsThen}`, Blockly.JavaScript.ORDER_NONE]; 25 | return code; 26 | }; -------------------------------------------------------------------------------- /src/blocks/games/connect4.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | 4 | const blockName = "s4d_connect4"; 5 | 6 | const blockData = { 7 | "message0": "Play Connect four", 8 | "args0": [], 9 | "colour": "#D14081", 10 | "previousStatement": null, 11 | "nextStatement": null, 12 | "tooltip": "", 13 | "helpUrl": "" 14 | }; 15 | 16 | Blockly.Blocks[blockName] = { 17 | init: function() { 18 | this.jsonInit(blockData); 19 | } 20 | }; 21 | 22 | Blockly.JavaScript[blockName] = function() { 23 | const code = ` 24 | const { ConnectFour } = require(djs-games) 25 | 26 | const game = new ConnectFour({ 27 | message: message, 28 | player1: '🔴', 29 | player2: '🟡', 30 | }) 31 | game.start() 32 | `; 33 | return code; 34 | }; 35 | -------------------------------------------------------------------------------- /src/components/NavigationBar/ToolboxModal.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 23 | -------------------------------------------------------------------------------- /src/blocks/JeremyGamer13/tests/delete_input.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "jg_tests_deleteInput"; 4 | 5 | const blockData = { 6 | "message0": "Remove Input %1", 7 | "args0": [ 8 | { 9 | "type": "input_value", 10 | "name": "A", 11 | "check": null 12 | } 13 | ], 14 | "colour": 0, 15 | "tooltip": "", 16 | "helpUrl": "" 17 | }; 18 | 19 | Blockly.Blocks[blockName] = { 20 | init: function() { 21 | this.jsonInit(blockData); 22 | }, 23 | isHiden: true 24 | }; 25 | 26 | Blockly.JavaScript[blockName] = function(block){ 27 | const A = Blockly.JavaScript.valueToCode(block, "A", Blockly.JavaScript.ORDER_ATOMIC); 28 | const code = `${A}`; 29 | return code; 30 | }; -------------------------------------------------------------------------------- /src/blocks/ahq/forms/repond/button.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | const blockName = "ahq_ahq_ahq_modal"; 3 | 4 | const blockData = { 5 | "message0": "Send buttons (AHQ) %1", 6 | "args0": [ 7 | { 8 | "type": "input_value", 9 | "name": "Label", 10 | "check": "String", 11 | } 12 | ], 13 | "output": "ahq_button", 14 | "colour": '#40BF4A', 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | Blockly.JavaScript[blockName] = function(block) { 23 | const statementsThen = Blockly.JavaScript.valueToCode(block, "Label", Blockly.JavaScript.ORDER_NONE); 24 | const code = [`${statementsThen}`, Blockly.JavaScript.ORDER_NONE]; 25 | return code; 26 | }; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/code_float.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "blank_code_float"; 4 | 5 | const blockData = { 6 | "message0": "insert code⠀ %1 ⠀", 7 | "args0": [{ 8 | "type": "field_multilinetext", 9 | "name": "TEXT", 10 | "text": "code", 11 | "spellcheck": false 12 | }], 13 | "colour": "#d14081", 14 | "tooltip": "Insert code to run without eval" 15 | }; 16 | 17 | Blockly.Blocks[blockName] = { 18 | init: function() { 19 | this.jsonInit(blockData); 20 | } 21 | }; 22 | 23 | Blockly.JavaScript[blockName] = function(block) { 24 | var text = block.getFieldValue('TEXT'); 25 | if ((text == null)||(text == undefined)) return `` 26 | var code = `${text}\n`; 27 | return code; 28 | }; -------------------------------------------------------------------------------- /src/blocks/discord/music/index.js: -------------------------------------------------------------------------------- 1 | import "./bot_voice_channel"; 2 | import "./connect"; 3 | import "./connected"; 4 | import "./create_queue"; 5 | import "./play"; 6 | import "./search"; 7 | import "./voice_channel"; 8 | import "./voice_channel_id"; 9 | import "./track_added"; 10 | import "./track_name"; 11 | import "./track_playing"; 12 | import "./track_channel"; 13 | import "./queue_finished"; 14 | import "./current_track"; 15 | import "./get_queue"; 16 | import "./playing"; 17 | import "./play"; 18 | import "./pause"; 19 | import "./resume"; 20 | import "./back"; 21 | import "./loop"; 22 | import "./skip"; 23 | import "./volume"; 24 | import "./stop"; 25 | import "./track_views"; 26 | import "./track_url"; 27 | import "./track_thumbnail"; 28 | import "./track_duration"; 29 | import "./track_author"; -------------------------------------------------------------------------------- /src/blocks/frostzzone/useful/index.js: -------------------------------------------------------------------------------- 1 | //not impotant enough 2 | import "./poll" 3 | import "./channeltypes" 4 | import "./slowmode" 5 | import "./jsontostring" 6 | import "./crosspost" 7 | import "./listcontains" 8 | import "./get_member" 9 | import "./code" 10 | import "./code_float" 11 | import "./code_output" 12 | import "./color" 13 | import "./await" 14 | 15 | //role 16 | import "./role_info_text" 17 | import "./role_info_bool" 18 | import "./role_info_num" 19 | import "./role_info_color" 20 | 21 | //folders 22 | import "./repl/" 23 | import "./real_reply/" 24 | import "./category/" 25 | import "./time/" 26 | import "./embed/" 27 | import "./fs/" 28 | import "./emoji/" 29 | import "./var/" 30 | import "./slash/" 31 | import "./attachment/" 32 | 33 | //may remove later 34 | import "./translate/" -------------------------------------------------------------------------------- /src/components/NavigationBar/LanguageMenu.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 23 | -------------------------------------------------------------------------------- /src/blocks/Alex/isdm.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "isdm"; 4 | 5 | const blockData = { 6 | "message0": "Channel %1 is DM?", 7 | "args0": [ 8 | { 9 | "type": "input_value", 10 | "check": "Channel", 11 | "name": "channel" 12 | 13 | } 14 | ], 15 | "output": "Boolean", 16 | "colour": "#33a146", 17 | "tooltip": "", 18 | "helpUrl": "" 19 | } 20 | Blockly.Blocks[blockName] = { 21 | init: function() { 22 | this.jsonInit(blockData); 23 | } 24 | }; 25 | 26 | Blockly.JavaScript[blockName] = function(block) { 27 | const chan = Blockly.JavaScript.valueToCode(block, "channel", Blockly.JavaScript.ORDER_ATOMIC); 28 | const code = [`${chan}.type === "DM"`, Blockly.JavaScript.ORDER_NONE]; 29 | return code; 30 | }; 31 | -------------------------------------------------------------------------------- /src/blocks/other/eval2.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly/core"; 2 | 3 | const blockName = "s4d_eval2"; 4 | 5 | const blockData = { 6 | "message0": "run code %1", 7 | "args0": [ 8 | { 9 | "type": "input_value", 10 | "name": "EVAL", 11 | "check": [ "Number", "String" ] 12 | } 13 | ], 14 | "colour": "#D14081", 15 | "output": null, 16 | "tooltip": "", 17 | "helpUrl": "" 18 | }; 19 | Blockly.Blocks[blockName] = { 20 | init: function() { 21 | this.jsonInit(blockData); 22 | } 23 | }; 24 | 25 | Blockly.JavaScript[blockName] = function(block){ 26 | const code = Blockly.JavaScript.valueToCode(block, "EVAL", Blockly.JavaScript.ORDER_ATOMIC); 27 | return [`eval(${code})`, Blockly.JavaScript.ORDER_NONE ]; 28 | }; -------------------------------------------------------------------------------- /src/blocks/better_music/index.js: -------------------------------------------------------------------------------- 1 | import "./startplaying"; 2 | import "./firstsong"; 3 | import "./channelempty"; 4 | import "./queueplay"; 5 | import "./channelempty"; 6 | import "./songadded"; 7 | import "./kicked"; 8 | import "./songimage"; 9 | import "./songurl"; 10 | import "./error"; 11 | import "./musicpause"; 12 | import "./musicresume"; 13 | import "./trackchannel"; 14 | import "./Shuffle"; 15 | import "./newtrackname"; 16 | import "./addedsong"; 17 | import "./betterduration"; 18 | import "./connectto"; 19 | import "./betterstop"; 20 | import "./next"; 21 | import "./songloop"; 22 | import "./queueloop"; 23 | import "./loopstop"; 24 | import "./voicechannel"; 25 | import "./idchannel"; 26 | import "./botvcid"; 27 | import "./setvolume"; 28 | import "./first-song-name"; 29 | -------------------------------------------------------------------------------- /src/blocks/example-t/event_example.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core" 2 | const blockName = "jg_example_event" 3 | const blockData = { 4 | "message0": "example event %1 %2", 5 | "args0": [ 6 | { 7 | "type": "input_dummy" 8 | }, 9 | { 10 | "type": "input_statement", 11 | "name": "BLOCKS" 12 | } 13 | ], 14 | "colour": 300, 15 | "tooltip": "An example event block.", 16 | "helpUrl": "" 17 | } 18 | Blockly.Blocks[blockName] = { 19 | init: function () { 20 | this.jsonInit(blockData); 21 | } 22 | }; 23 | Blockly.JavaScript[blockName] = function (block) { 24 | const blocks = Blockly.JavaScript.statementToCode(block, 'BLOCKS'); 25 | const code = ` 26 | ${blocks} 27 | ` 28 | return code 29 | } 30 | -------------------------------------------------------------------------------- /src/blocks/mongodb/get_data.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "mongo_get_data"; 4 | 5 | const blockData = { 6 | "message0": "%{BKY_GET_DATA}", 7 | "args0": [ 8 | { 9 | "type": "input_value", 10 | "name": "KEY", 11 | "check": [ "String", "Number" ] 12 | } 13 | ], 14 | "output": null, 15 | "colour": "#4fc99e", 16 | "helpUrl": "" 17 | }; 18 | 19 | Blockly.Blocks[blockName] = { 20 | init: function() { 21 | this.jsonInit(blockData); 22 | } 23 | }; 24 | 25 | Blockly.JavaScript[blockName] = function(block) { 26 | const key = Blockly.JavaScript.valueToCode(block, "KEY", Blockly.JavaScript.ORDER_ATOMIC); 27 | return [ `(await(mdb.get(${key})))`, Blockly.JavaScript.ORDER_ATOMIC ]; 28 | }; 29 | -------------------------------------------------------------------------------- /src/blocks/mongodb/mongo_on.js: -------------------------------------------------------------------------------- 1 | import * as Blockly from "blockly"; 2 | 3 | const blockName = "mongo_on"; 4 | 5 | const blockData = { 6 | "message0": "When connected to mongodb %1 %2", 7 | "colour": "#F5AB1A", 8 | "args0": [ 9 | { 10 | "type": "input_dummy" 11 | }, 12 | { 13 | "type": "input_statement", 14 | "name": "STATEMENTS" 15 | } 16 | ] 17 | }; 18 | 19 | Blockly.Blocks[blockName] = { 20 | init: function() { 21 | this.jsonInit(blockData); 22 | } 23 | }; 24 | 25 | Blockly.JavaScript[blockName] = function(block) { 26 | const statements = Blockly.JavaScript.statementToCode(block, "STATEMENTS"); 27 | const code = `mdb.on('ready', async () => {\n${statements}\n});\n 28 | `; 29 | return code; 30 | }; -------------------------------------------------------------------------------- /src/blocks/invention/Other/channel-type.js: -------------------------------------------------------------------------------- 1 | import Blockly from "blockly/core"; 2 | 3 | const blockName = "inv_channel_type"; 4 | 5 | const blockData = { 6 | "message0": "type of channel %1", 7 | "args0": [ 8 | { 9 | "type": "input_value", 10 | "name": "Channel" 11 | } 12 | ], 13 | "output": "String", 14 | "colour": "#D14081", 15 | "tooltip": "Type of channel", 16 | "helpUrl": "" 17 | } 18 | 19 | Blockly.Blocks[blockName] = { 20 | init: function() { 21 | this.jsonInit(blockData); 22 | } 23 | }; 24 | 25 | Blockly.JavaScript[blockName] = function(block) { 26 | var value_channel = Blockly.JavaScript.valueToCode(block, 'Channel', Blockly.JavaScript.ORDER_ATOMIC); 27 | var code = `${value_channel}.type`; 28 | return [code, Blockly.JavaScript.ORDER_NONE]; 29 | }; 30 | --------------------------------------------------------------------------------