diff --git a/js/main.js b/js/main.js index 0b59397b..8c8912b5 100644 --- a/js/main.js +++ b/js/main.js @@ -95,7 +95,7 @@ var Core = /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"minSupportedVersion\", function() { return minSupportedVersion; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bbdVersion\", function() { return bbdVersion; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bbdChangelog\", function() { return bbdChangelog; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"settings\", function() { return settings; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultCookie\", function() { return defaultCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"settingsCookie\", function() { return settingsCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdpluginErrors\", function() { return bdpluginErrors; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdthemeErrors\", function() { return bdthemeErrors; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdConfig\", function() { return bdConfig; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bemotes\", function() { return bemotes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesFfz\", function() { return emotesFfz; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesBTTV\", function() { return emotesBTTV; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesBTTV2\", function() { return emotesBTTV2; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesTwitch\", function() { return emotesTwitch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"subEmotesTwitch\", function() { return subEmotesTwitch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdEmotes\", function() { return bdEmotes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdEmoteSettingIDs\", function() { return bdEmoteSettingIDs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdthemes\", function() { return bdthemes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdplugins\", function() { return bdplugins; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"pluginCookie\", function() { return pluginCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"themeCookie\", function() { return themeCookie; });\n// var settingsPanel, emoteModule, quickEmoteMenu, voiceMode, pluginModule, themeModule, dMode, publicServersModule, mainCore, BDV2;\nconst minSupportedVersion = \"0.3.0\";\nconst bbdVersion = \"0.2.24\";\nconst bbdChangelog = {\n description: \"Mostly behind the scenes changes here.\",\n changes: [{\n title: \"What's New?\",\n items: [\"**Dark Mode is back!** Or rather... it's toggleable again and no longer forced on.\", \"**Changes for developers!** Plugin and theme developers will now have more options to customize their plugin cards in their METAs and also a new META structure.\"]\n }, {\n title: \"Fixes\",\n type: \"fixed\",\n items: [\"**Emote Menu** should now show both Twich Global emotes and your favorites, you should even be able to click on them again!\"]\n }, {\n title: \"Minor Stuff\",\n type: \"improved\",\n items: [\"**Clean Code.** Well not really. But BD's code is starting to be cleaned up to make it easier to maintain and better performing.\"]\n }]\n};\nconst settings = {\n \"Custom css live update\": {\n id: \"bda-css-0\",\n info: \"\",\n implemented: true,\n hidden: true,\n cat: \"core\"\n },\n \"Custom css auto udpate\": {\n id: \"bda-css-1\",\n info: \"\",\n implemented: true,\n hidden: true,\n cat: \"core\"\n },\n \"BetterDiscord Blue\": {\n id: \"bda-gs-b\",\n info: \"Replace Discord blue with BD Blue\",\n implemented: false,\n hidden: false,\n cat: \"core\"\n },\n\n /* Core */\n\n /* ====== */\n \"Public Servers\": {\n id: \"bda-gs-1\",\n info: \"Display public servers button\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Minimal Mode\": {\n id: \"bda-gs-2\",\n info: \"Hide elements and reduce the size of elements.\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Voice Mode\": {\n id: \"bda-gs-4\",\n info: \"Only show voice chat\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Hide Channels\": {\n id: \"bda-gs-3\",\n info: \"Hide channels in minimal mode\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Dark Mode\": {\n id: \"bda-gs-5\",\n info: \"Make certain elements dark by default(wip)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Voice Disconnect\": {\n id: \"bda-dc-0\",\n info: \"Disconnect from voice server when closing Discord\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"24 Hour Timestamps\": {\n id: \"bda-gs-6\",\n info: \"Replace 12hr timestamps with proper ones\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Colored Text\": {\n id: \"bda-gs-7\",\n info: \"Make text color the same as role color\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Normalize Classes\": {\n id: \"fork-ps-4\",\n info: \"Adds stable classes to elements to help themes. (e.g. adds .da-channels to .channels-Ie2l6A)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n\n /* Content */\n \"Content Error Modal\": {\n id: \"fork-ps-1\",\n info: \"Shows a modal with plugin/theme errors\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Show Toasts\": {\n id: \"fork-ps-2\",\n info: \"Shows a small notification for important information\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Scroll To Settings\": {\n id: \"fork-ps-3\",\n info: \"Auto-scrolls to a plugin's settings when the button is clicked (only if out of view)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Automatic Loading\": {\n id: \"fork-ps-5\",\n info: \"Automatically loads, reloads, and unloads plugins and themes\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n\n /* Donors */\n \"BBD Beta\": {\n id: \"fork-beta\",\n info: \"Gives access to BBD beta. (Requires full restart after changing.)\",\n implemented: true,\n hidden: true,\n cat: \"core\",\n category: \"donors\"\n },\n\n /* Developer */\n \"Developer Mode\": {\n id: \"bda-gs-8\",\n info: \"Developer Mode\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"developer settings\"\n },\n \"Copy Selector\": {\n id: \"fork-dm-1\",\n info: \"Adds a \\\"Copy Selector\\\" option to context menus when developer mode is active\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"developer settings\"\n },\n\n /* Window Prefs */\n \"Enable Transparency\": {\n id: \"fork-wp-1\",\n info: \"Enables the main window to be see-through (requires restart)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"window preferences\"\n },\n \"Window Frame\": {\n id: \"fork-wp-2\",\n info: \"Adds the native os window frame to the main window\",\n implemented: false,\n hidden: true,\n cat: \"core\",\n category: \"window preferences\"\n },\n\n /* Emotes */\n\n /* ====== */\n \"Download Emotes\": {\n id: \"fork-es-3\",\n info: \"Download emotes when the cache is expired\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Twitch Emotes\": {\n id: \"bda-es-7\",\n info: \"Show Twitch emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"FrankerFaceZ Emotes\": {\n id: \"bda-es-1\",\n info: \"Show FrankerFaceZ Emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"BetterTTV Emotes\": {\n id: \"bda-es-2\",\n info: \"Show BetterTTV Emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emote Menu\": {\n id: \"bda-es-0\",\n info: \"Show Twitch/Favourite emotes in emote menu\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emoji Menu\": {\n id: \"bda-es-9\",\n info: \"Show Discord emoji menu\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emote Auto Capitalization\": {\n id: \"bda-es-4\",\n info: \"Autocapitalize emote commands\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Show Names\": {\n id: \"bda-es-6\",\n info: \"Show emote names on hover\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Show emote modifiers\": {\n id: \"bda-es-8\",\n info: \"Enable emote mods (flip, spin, pulse, spin2, spin3, 1spin, 2spin, 3spin, tr, bl, br, shake, shake2, shake3, flap)\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Animate On Hover\": {\n id: \"fork-es-2\",\n info: \"Only animate the emote modifiers on hover\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n }\n};\nconst defaultCookie = {\n \"bda-gs-1\": true,\n \"bda-gs-2\": false,\n \"bda-gs-3\": false,\n \"bda-gs-4\": false,\n \"bda-gs-5\": true,\n \"bda-gs-6\": false,\n \"bda-gs-7\": false,\n \"bda-gs-8\": false,\n \"bda-es-0\": true,\n \"bda-es-1\": true,\n \"bda-es-2\": true,\n \"bda-es-4\": false,\n \"bda-es-6\": true,\n \"bda-es-7\": true,\n \"bda-gs-b\": false,\n \"bda-es-8\": true,\n \"bda-dc-0\": false,\n \"bda-css-0\": false,\n \"bda-css-1\": false,\n \"bda-es-9\": true,\n \"fork-dm-1\": false,\n \"fork-ps-1\": true,\n \"fork-ps-2\": true,\n \"fork-ps-3\": true,\n \"fork-ps-4\": true,\n \"fork-ps-5\": true,\n \"fork-es-2\": false,\n \"fork-es-3\": true,\n \"fork-wp-1\": false,\n \"fork-wp-2\": false,\n \"fork-beta\": true\n};\nconst settingsCookie = {};\nconst bdpluginErrors = [];\nconst bdthemeErrors = []; // define for backwards compatibility\n\nconst bdConfig = {};\nconst bemotes = [];\nconst emotesFfz = {};\nconst emotesBTTV = {};\nconst emotesBTTV2 = {};\nconst emotesTwitch = {};\nconst subEmotesTwitch = {};\nconst bdEmotes = {\n TwitchGlobal: {},\n TwitchSubscriber: {},\n BTTV: {},\n FrankerFaceZ: {},\n BTTV2: {}\n};\nconst bdEmoteSettingIDs = {\n TwitchGlobal: \"bda-es-7\",\n TwitchSubscriber: \"bda-es-7\",\n BTTV: \"bda-es-2\",\n FrankerFaceZ: \"bda-es-1\",\n BTTV2: \"bda-es-2\"\n};\nconst bdthemes = {};\nconst bdplugins = {};\nconst pluginCookie = {};\nconst themeCookie = {};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvMGdsb2JhbHMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Db3JlLy4vc3JjLzBnbG9iYWxzLmpzPzAwZDIiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gdmFyIHNldHRpbmdzUGFuZWwsIGVtb3RlTW9kdWxlLCBxdWlja0Vtb3RlTWVudSwgdm9pY2VNb2RlLCBwbHVnaW5Nb2R1bGUsIHRoZW1lTW9kdWxlLCBkTW9kZSwgcHVibGljU2VydmVyc01vZHVsZSwgbWFpbkNvcmUsIEJEVjI7XG5leHBvcnQgY29uc3QgbWluU3VwcG9ydGVkVmVyc2lvbiA9IFwiMC4zLjBcIjtcbmV4cG9ydCBjb25zdCBiYmRWZXJzaW9uID0gXCIwLjIuMjRcIjtcbmV4cG9ydCBjb25zdCBiYmRDaGFuZ2Vsb2cgPSB7XG4gIGRlc2NyaXB0aW9uOiBcIk1vc3RseSBiZWhpbmQgdGhlIHNjZW5lcyBjaGFuZ2VzIGhlcmUuXCIsXG4gIGNoYW5nZXM6IFt7XG4gICAgdGl0bGU6IFwiV2hhdCdzIE5ldz9cIixcbiAgICBpdGVtczogW1wiKipEYXJrIE1vZGUgaXMgYmFjayEqKiBPciByYXRoZXIuLi4gaXQncyB0b2dnbGVhYmxlIGFnYWluIGFuZCBubyBsb25nZXIgZm9yY2VkIG9uLlwiLCBcIioqQ2hhbmdlcyBmb3IgZGV2ZWxvcGVycyEqKiBQbHVnaW4gYW5kIHRoZW1lIGRldmVsb3BlcnMgd2lsbCBub3cgaGF2ZSBtb3JlIG9wdGlvbnMgdG8gY3VzdG9taXplIHRoZWlyIHBsdWdpbiBjYXJkcyBpbiB0aGVpciBNRVRBcyBhbmQgYWxzbyBhIG5ldyBNRVRBIHN0cnVjdHVyZS5cIl1cbiAgfSwge1xuICAgIHRpdGxlOiBcIkZpeGVzXCIsXG4gICAgdHlwZTogXCJmaXhlZFwiLFxuICAgIGl0ZW1zOiBbXCIqKkVtb3RlIE1lbnUqKiBzaG91bGQgbm93IHNob3cgYm90aCBUd2ljaCBHbG9iYWwgZW1vdGVzIGFuZCB5b3VyIGZhdm9yaXRlcywgeW91IHNob3VsZCBldmVuIGJlIGFibGUgdG8gY2xpY2sgb24gdGhlbSBhZ2FpbiFcIl1cbiAgfSwge1xuICAgIHRpdGxlOiBcIk1pbm9yIFN0dWZmXCIsXG4gICAgdHlwZTogXCJpbXByb3ZlZFwiLFxuICAgIGl0ZW1zOiBbXCIqKkNsZWFuIENvZGUuKiogV2VsbCBub3QgcmVhbGx5LiBCdXQgQkQncyBjb2RlIGlzIHN0YXJ0aW5nIHRvIGJlIGNsZWFuZWQgdXAgdG8gbWFrZSBpdCBlYXNpZXIgdG8gbWFpbnRhaW4gYW5kIGJldHRlciBwZXJmb3JtaW5nLlwiXVxuICB9XVxufTtcbmV4cG9ydCBjb25zdCBzZXR0aW5ncyA9IHtcbiAgXCJDdXN0b20gY3NzIGxpdmUgdXBkYXRlXCI6IHtcbiAgICBpZDogXCJiZGEtY3NzLTBcIixcbiAgICBpbmZvOiBcIlwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogdHJ1ZSxcbiAgICBjYXQ6IFwiY29yZVwiXG4gIH0sXG4gIFwiQ3VzdG9tIGNzcyBhdXRvIHVkcGF0ZVwiOiB7XG4gICAgaWQ6IFwiYmRhLWNzcy0xXCIsXG4gICAgaW5mbzogXCJcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IHRydWUsXG4gICAgY2F0OiBcImNvcmVcIlxuICB9LFxuICBcIkJldHRlckRpc2NvcmQgQmx1ZVwiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLWJcIixcbiAgICBpbmZvOiBcIlJlcGxhY2UgRGlzY29yZCBibHVlIHdpdGggQkQgQmx1ZVwiLFxuICAgIGltcGxlbWVudGVkOiBmYWxzZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCJcbiAgfSxcblxuICAvKiBDb3JlICovXG5cbiAgLyogPT09PT09ICovXG4gIFwiUHVibGljIFNlcnZlcnNcIjoge1xuICAgIGlkOiBcImJkYS1ncy0xXCIsXG4gICAgaW5mbzogXCJEaXNwbGF5IHB1YmxpYyBzZXJ2ZXJzIGJ1dHRvblwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJtb2R1bGVzXCJcbiAgfSxcbiAgXCJNaW5pbWFsIE1vZGVcIjoge1xuICAgIGlkOiBcImJkYS1ncy0yXCIsXG4gICAgaW5mbzogXCJIaWRlIGVsZW1lbnRzIGFuZCByZWR1Y2UgdGhlIHNpemUgb2YgZWxlbWVudHMuXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIlZvaWNlIE1vZGVcIjoge1xuICAgIGlkOiBcImJkYS1ncy00XCIsXG4gICAgaW5mbzogXCJPbmx5IHNob3cgdm9pY2UgY2hhdFwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJtb2R1bGVzXCJcbiAgfSxcbiAgXCJIaWRlIENoYW5uZWxzXCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtM1wiLFxuICAgIGluZm86IFwiSGlkZSBjaGFubmVscyBpbiBtaW5pbWFsIG1vZGVcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG4gIFwiRGFyayBNb2RlXCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtNVwiLFxuICAgIGluZm86IFwiTWFrZSBjZXJ0YWluIGVsZW1lbnRzIGRhcmsgYnkgZGVmYXVsdCh3aXApXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIlZvaWNlIERpc2Nvbm5lY3RcIjoge1xuICAgIGlkOiBcImJkYS1kYy0wXCIsXG4gICAgaW5mbzogXCJEaXNjb25uZWN0IGZyb20gdm9pY2Ugc2VydmVyIHdoZW4gY2xvc2luZyBEaXNjb3JkXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIjI0IEhvdXIgVGltZXN0YW1wc1wiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLTZcIixcbiAgICBpbmZvOiBcIlJlcGxhY2UgMTJociB0aW1lc3RhbXBzIHdpdGggcHJvcGVyIG9uZXNcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG4gIFwiQ29sb3JlZCBUZXh0XCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtN1wiLFxuICAgIGluZm86IFwiTWFrZSB0ZXh0IGNvbG9yIHRoZSBzYW1lIGFzIHJvbGUgY29sb3JcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG4gIFwiTm9ybWFsaXplIENsYXNzZXNcIjoge1xuICAgIGlkOiBcImZvcmstcHMtNFwiLFxuICAgIGluZm86IFwiQWRkcyBzdGFibGUgY2xhc3NlcyB0byBlbGVtZW50cyB0byBoZWxwIHRoZW1lcy4gKGUuZy4gYWRkcyAuZGEtY2hhbm5lbHMgdG8gLmNoYW5uZWxzLUllMmw2QSlcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG5cbiAgLyogQ29udGVudCAqL1xuICBcIkNvbnRlbnQgRXJyb3IgTW9kYWxcIjoge1xuICAgIGlkOiBcImZvcmstcHMtMVwiLFxuICAgIGluZm86IFwiU2hvd3MgYSBtb2RhbCB3aXRoIHBsdWdpbi90aGVtZSBlcnJvcnNcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwiY29udGVudCBtYW5hZ2VyXCJcbiAgfSxcbiAgXCJTaG93IFRvYXN0c1wiOiB7XG4gICAgaWQ6IFwiZm9yay1wcy0yXCIsXG4gICAgaW5mbzogXCJTaG93cyBhIHNtYWxsIG5vdGlmaWNhdGlvbiBmb3IgaW1wb3J0YW50IGluZm9ybWF0aW9uXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcImNvbnRlbnQgbWFuYWdlclwiXG4gIH0sXG4gIFwiU2Nyb2xsIFRvIFNldHRpbmdzXCI6IHtcbiAgICBpZDogXCJmb3JrLXBzLTNcIixcbiAgICBpbmZvOiBcIkF1dG8tc2Nyb2xscyB0byBhIHBsdWdpbidzIHNldHRpbmdzIHdoZW4gdGhlIGJ1dHRvbiBpcyBjbGlja2VkIChvbmx5IGlmIG91dCBvZiB2aWV3KVwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJjb250ZW50IG1hbmFnZXJcIlxuICB9LFxuICBcIkF1dG9tYXRpYyBMb2FkaW5nXCI6IHtcbiAgICBpZDogXCJmb3JrLXBzLTVcIixcbiAgICBpbmZvOiBcIkF1dG9tYXRpY2FsbHkgbG9hZHMsIHJlbG9hZHMsIGFuZCB1bmxvYWRzIHBsdWdpbnMgYW5kIHRoZW1lc1wiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJjb250ZW50IG1hbmFnZXJcIlxuICB9LFxuXG4gIC8qIERvbm9ycyAqL1xuICBcIkJCRCBCZXRhXCI6IHtcbiAgICBpZDogXCJmb3JrLWJldGFcIixcbiAgICBpbmZvOiBcIkdpdmVzIGFjY2VzcyB0byBCQkQgYmV0YS4gKFJlcXVpcmVzIGZ1bGwgcmVzdGFydCBhZnRlciBjaGFuZ2luZy4pXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiB0cnVlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwiZG9ub3JzXCJcbiAgfSxcblxuICAvKiBEZXZlbG9wZXIgKi9cbiAgXCJEZXZlbG9wZXIgTW9kZVwiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLThcIixcbiAgICBpbmZvOiBcIkRldmVsb3BlciBNb2RlXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcImRldmVsb3BlciBzZXR0aW5nc1wiXG4gIH0sXG4gIFwiQ29weSBTZWxlY3RvclwiOiB7XG4gICAgaWQ6IFwiZm9yay1kbS0xXCIsXG4gICAgaW5mbzogXCJBZGRzIGEgXFxcIkNvcHkgU2VsZWN0b3JcXFwiIG9wdGlvbiB0byBjb250ZXh0IG1lbnVzIHdoZW4gZGV2ZWxvcGVyIG1vZGUgaXMgYWN0aXZlXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcImRldmVsb3BlciBzZXR0aW5nc1wiXG4gIH0sXG5cbiAgLyogV2luZG93IFByZWZzICovXG4gIFwiRW5hYmxlIFRyYW5zcGFyZW5jeVwiOiB7XG4gICAgaWQ6IFwiZm9yay13cC0xXCIsXG4gICAgaW5mbzogXCJFbmFibGVzIHRoZSBtYWluIHdpbmRvdyB0byBiZSBzZWUtdGhyb3VnaCAocmVxdWlyZXMgcmVzdGFydClcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwid2luZG93IHByZWZlcmVuY2VzXCJcbiAgfSxcbiAgXCJXaW5kb3cgRnJhbWVcIjoge1xuICAgIGlkOiBcImZvcmstd3AtMlwiLFxuICAgIGluZm86IFwiQWRkcyB0aGUgbmF0aXZlIG9zIHdpbmRvdyBmcmFtZSB0byB0aGUgbWFpbiB3aW5kb3dcIixcbiAgICBpbXBsZW1lbnRlZDogZmFsc2UsXG4gICAgaGlkZGVuOiB0cnVlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwid2luZG93IHByZWZlcmVuY2VzXCJcbiAgfSxcblxuICAvKiBFbW90ZXMgKi9cblxuICAvKiA9PT09PT0gKi9cbiAgXCJEb3dubG9hZCBFbW90ZXNcIjoge1xuICAgIGlkOiBcImZvcmstZXMtM1wiLFxuICAgIGluZm86IFwiRG93bmxvYWQgZW1vdGVzIHdoZW4gdGhlIGNhY2hlIGlzIGV4cGlyZWRcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiVHdpdGNoIEVtb3Rlc1wiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLTdcIixcbiAgICBpbmZvOiBcIlNob3cgVHdpdGNoIGVtb3Rlc1wiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfSxcbiAgXCJGcmFua2VyRmFjZVogRW1vdGVzXCI6IHtcbiAgICBpZDogXCJiZGEtZXMtMVwiLFxuICAgIGluZm86IFwiU2hvdyBGcmFua2VyRmFjZVogRW1vdGVzXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIkJldHRlclRUViBFbW90ZXNcIjoge1xuICAgIGlkOiBcImJkYS1lcy0yXCIsXG4gICAgaW5mbzogXCJTaG93IEJldHRlclRUViBFbW90ZXNcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiRW1vdGUgTWVudVwiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLTBcIixcbiAgICBpbmZvOiBcIlNob3cgVHdpdGNoL0Zhdm91cml0ZSBlbW90ZXMgaW4gZW1vdGUgbWVudVwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfSxcbiAgXCJFbW9qaSBNZW51XCI6IHtcbiAgICBpZDogXCJiZGEtZXMtOVwiLFxuICAgIGluZm86IFwiU2hvdyBEaXNjb3JkIGVtb2ppIG1lbnVcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiRW1vdGUgQXV0byBDYXBpdGFsaXphdGlvblwiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLTRcIixcbiAgICBpbmZvOiBcIkF1dG9jYXBpdGFsaXplIGVtb3RlIGNvbW1hbmRzXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIlNob3cgTmFtZXNcIjoge1xuICAgIGlkOiBcImJkYS1lcy02XCIsXG4gICAgaW5mbzogXCJTaG93IGVtb3RlIG5hbWVzIG9uIGhvdmVyXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIlNob3cgZW1vdGUgbW9kaWZpZXJzXCI6IHtcbiAgICBpZDogXCJiZGEtZXMtOFwiLFxuICAgIGluZm86IFwiRW5hYmxlIGVtb3RlIG1vZHMgKGZsaXAsIHNwaW4sIHB1bHNlLCBzcGluMiwgc3BpbjMsIDFzcGluLCAyc3BpbiwgM3NwaW4sIHRyLCBibCwgYnIsIHNoYWtlLCBzaGFrZTIsIHNoYWtlMywgZmxhcClcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiQW5pbWF0ZSBPbiBIb3ZlclwiOiB7XG4gICAgaWQ6IFwiZm9yay1lcy0yXCIsXG4gICAgaW5mbzogXCJPbmx5IGFuaW1hdGUgdGhlIGVtb3RlIG1vZGlmaWVycyBvbiBob3ZlclwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfVxufTtcbmV4cG9ydCBjb25zdCBkZWZhdWx0Q29va2llID0ge1xuICBcImJkYS1ncy0xXCI6IHRydWUsXG4gIFwiYmRhLWdzLTJcIjogZmFsc2UsXG4gIFwiYmRhLWdzLTNcIjogZmFsc2UsXG4gIFwiYmRhLWdzLTRcIjogZmFsc2UsXG4gIFwiYmRhLWdzLTVcIjogdHJ1ZSxcbiAgXCJiZGEtZ3MtNlwiOiBmYWxzZSxcbiAgXCJiZGEtZ3MtN1wiOiBmYWxzZSxcbiAgXCJiZGEtZ3MtOFwiOiBmYWxzZSxcbiAgXCJiZGEtZXMtMFwiOiB0cnVlLFxuICBcImJkYS1lcy0xXCI6IHRydWUsXG4gIFwiYmRhLWVzLTJcIjogdHJ1ZSxcbiAgXCJiZGEtZXMtNFwiOiBmYWxzZSxcbiAgXCJiZGEtZXMtNlwiOiB0cnVlLFxuICBcImJkYS1lcy03XCI6IHRydWUsXG4gIFwiYmRhLWdzLWJcIjogZmFsc2UsXG4gIFwiYmRhLWVzLThcIjogdHJ1ZSxcbiAgXCJiZGEtZGMtMFwiOiBmYWxzZSxcbiAgXCJiZGEtY3NzLTBcIjogZmFsc2UsXG4gIFwiYmRhLWNzcy0xXCI6IGZhbHNlLFxuICBcImJkYS1lcy05XCI6IHRydWUsXG4gIFwiZm9yay1kbS0xXCI6IGZhbHNlLFxuICBcImZvcmstcHMtMVwiOiB0cnVlLFxuICBcImZvcmstcHMtMlwiOiB0cnVlLFxuICBcImZvcmstcHMtM1wiOiB0cnVlLFxuICBcImZvcmstcHMtNFwiOiB0cnVlLFxuICBcImZvcmstcHMtNVwiOiB0cnVlLFxuICBcImZvcmstZXMtMlwiOiBmYWxzZSxcbiAgXCJmb3JrLWVzLTNcIjogdHJ1ZSxcbiAgXCJmb3JrLXdwLTFcIjogZmFsc2UsXG4gIFwiZm9yay13cC0yXCI6IGZhbHNlLFxuICBcImZvcmstYmV0YVwiOiB0cnVlXG59O1xuZXhwb3J0IGNvbnN0IHNldHRpbmdzQ29va2llID0ge307XG5leHBvcnQgY29uc3QgYmRwbHVnaW5FcnJvcnMgPSBbXTtcbmV4cG9ydCBjb25zdCBiZHRoZW1lRXJyb3JzID0gW107IC8vIGRlZmluZSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuZXhwb3J0IGNvbnN0IGJkQ29uZmlnID0ge307XG5leHBvcnQgY29uc3QgYmVtb3RlcyA9IFtdO1xuZXhwb3J0IGNvbnN0IGVtb3Rlc0ZmeiA9IHt9O1xuZXhwb3J0IGNvbnN0IGVtb3Rlc0JUVFYgPSB7fTtcbmV4cG9ydCBjb25zdCBlbW90ZXNCVFRWMiA9IHt9O1xuZXhwb3J0IGNvbnN0IGVtb3Rlc1R3aXRjaCA9IHt9O1xuZXhwb3J0IGNvbnN0IHN1YkVtb3Rlc1R3aXRjaCA9IHt9O1xuZXhwb3J0IGNvbnN0IGJkRW1vdGVzID0ge1xuICBUd2l0Y2hHbG9iYWw6IHt9LFxuICBUd2l0Y2hTdWJzY3JpYmVyOiB7fSxcbiAgQlRUVjoge30sXG4gIEZyYW5rZXJGYWNlWjoge30sXG4gIEJUVFYyOiB7fVxufTtcbmV4cG9ydCBjb25zdCBiZEVtb3RlU2V0dGluZ0lEcyA9IHtcbiAgVHdpdGNoR2xvYmFsOiBcImJkYS1lcy03XCIsXG4gIFR3aXRjaFN1YnNjcmliZXI6IFwiYmRhLWVzLTdcIixcbiAgQlRUVjogXCJiZGEtZXMtMlwiLFxuICBGcmFua2VyRmFjZVo6IFwiYmRhLWVzLTFcIixcbiAgQlRUVjI6IFwiYmRhLWVzLTJcIlxufTtcbmV4cG9ydCBjb25zdCBiZHRoZW1lcyA9IHt9O1xuZXhwb3J0IGNvbnN0IGJkcGx1Z2lucyA9IHt9O1xuZXhwb3J0IGNvbnN0IHBsdWdpbkNvb2tpZSA9IHt9O1xuZXhwb3J0IGNvbnN0IHRoZW1lQ29va2llID0ge307Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/0globals.js\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"minSupportedVersion\", function() { return minSupportedVersion; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bbdVersion\", function() { return bbdVersion; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bbdChangelog\", function() { return bbdChangelog; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"settings\", function() { return settings; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultCookie\", function() { return defaultCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"settingsCookie\", function() { return settingsCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdpluginErrors\", function() { return bdpluginErrors; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdthemeErrors\", function() { return bdthemeErrors; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdConfig\", function() { return bdConfig; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bemotes\", function() { return bemotes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesFfz\", function() { return emotesFfz; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesBTTV\", function() { return emotesBTTV; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesBTTV2\", function() { return emotesBTTV2; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"emotesTwitch\", function() { return emotesTwitch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"subEmotesTwitch\", function() { return subEmotesTwitch; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdEmotes\", function() { return bdEmotes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdEmoteSettingIDs\", function() { return bdEmoteSettingIDs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdthemes\", function() { return bdthemes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bdplugins\", function() { return bdplugins; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"pluginCookie\", function() { return pluginCookie; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"themeCookie\", function() { return themeCookie; });\n// var settingsPanel, emoteModule, quickEmoteMenu, voiceMode, pluginModule, themeModule, dMode, publicServersModule, mainCore, BDV2;\nconst minSupportedVersion = \"0.3.0\";\nconst bbdVersion = \"0.2.25-beta\";\nconst bbdChangelog = {\n description: \"Mostly behind the scenes changes again.\",\n changes: [{\n title: \"What's New?\",\n items: [\"**Changes for plugin developers!** There are some new items in the `BdApi` that you may want to check out.\"]\n }, {\n title: \"Fixes\",\n type: \"fixed\",\n items: [\"**Modal Footers** are no longer blank hopefully!\"]\n }, {\n title: \"Minor Stuff\",\n type: \"improved\",\n items: [\"**Injector Version** is now included in the version list to try and quell the confusion.\"]\n }]\n};\nconst settings = {\n \"Custom css live update\": {\n id: \"bda-css-0\",\n info: \"\",\n implemented: true,\n hidden: true,\n cat: \"core\"\n },\n \"Custom css auto udpate\": {\n id: \"bda-css-1\",\n info: \"\",\n implemented: true,\n hidden: true,\n cat: \"core\"\n },\n \"BetterDiscord Blue\": {\n id: \"bda-gs-b\",\n info: \"Replace Discord blue with BD Blue\",\n implemented: false,\n hidden: false,\n cat: \"core\"\n },\n\n /* Core */\n\n /* ====== */\n \"Public Servers\": {\n id: \"bda-gs-1\",\n info: \"Display public servers button\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Minimal Mode\": {\n id: \"bda-gs-2\",\n info: \"Hide elements and reduce the size of elements.\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Voice Mode\": {\n id: \"bda-gs-4\",\n info: \"Only show voice chat\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Hide Channels\": {\n id: \"bda-gs-3\",\n info: \"Hide channels in minimal mode\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Dark Mode\": {\n id: \"bda-gs-5\",\n info: \"Make certain elements dark by default(wip)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Voice Disconnect\": {\n id: \"bda-dc-0\",\n info: \"Disconnect from voice server when closing Discord\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"24 Hour Timestamps\": {\n id: \"bda-gs-6\",\n info: \"Replace 12hr timestamps with proper ones\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Colored Text\": {\n id: \"bda-gs-7\",\n info: \"Make text color the same as role color\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n \"Normalize Classes\": {\n id: \"fork-ps-4\",\n info: \"Adds stable classes to elements to help themes. (e.g. adds .da-channels to .channels-Ie2l6A)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"modules\"\n },\n\n /* Content */\n \"Content Error Modal\": {\n id: \"fork-ps-1\",\n info: \"Shows a modal with plugin/theme errors\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Show Toasts\": {\n id: \"fork-ps-2\",\n info: \"Shows a small notification for important information\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Scroll To Settings\": {\n id: \"fork-ps-3\",\n info: \"Auto-scrolls to a plugin's settings when the button is clicked (only if out of view)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n \"Automatic Loading\": {\n id: \"fork-ps-5\",\n info: \"Automatically loads, reloads, and unloads plugins and themes\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"content manager\"\n },\n\n /* Beta */\n \"BBD Beta\": {\n id: \"fork-beta\",\n info: \"Gives access to BBD beta. (Requires full restart after changing.)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"beta\"\n },\n\n /* Developer */\n \"Developer Mode\": {\n id: \"bda-gs-8\",\n info: \"Developer Mode\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"developer settings\"\n },\n \"Copy Selector\": {\n id: \"fork-dm-1\",\n info: \"Adds a \\\"Copy Selector\\\" option to context menus when developer mode is active\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"developer settings\"\n },\n\n /* Window Prefs */\n \"Enable Transparency\": {\n id: \"fork-wp-1\",\n info: \"Enables the main window to be see-through (requires restart)\",\n implemented: true,\n hidden: false,\n cat: \"core\",\n category: \"window preferences\"\n },\n \"Window Frame\": {\n id: \"fork-wp-2\",\n info: \"Adds the native os window frame to the main window\",\n implemented: false,\n hidden: true,\n cat: \"core\",\n category: \"window preferences\"\n },\n\n /* Emotes */\n\n /* ====== */\n \"Download Emotes\": {\n id: \"fork-es-3\",\n info: \"Download emotes when the cache is expired\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Twitch Emotes\": {\n id: \"bda-es-7\",\n info: \"Show Twitch emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"FrankerFaceZ Emotes\": {\n id: \"bda-es-1\",\n info: \"Show FrankerFaceZ Emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"BetterTTV Emotes\": {\n id: \"bda-es-2\",\n info: \"Show BetterTTV Emotes\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emote Menu\": {\n id: \"bda-es-0\",\n info: \"Show Twitch/Favourite emotes in emote menu\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emoji Menu\": {\n id: \"bda-es-9\",\n info: \"Show Discord emoji menu\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Emote Auto Capitalization\": {\n id: \"bda-es-4\",\n info: \"Autocapitalize emote commands\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Show Names\": {\n id: \"bda-es-6\",\n info: \"Show emote names on hover\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Show emote modifiers\": {\n id: \"bda-es-8\",\n info: \"Enable emote mods (flip, spin, pulse, spin2, spin3, 1spin, 2spin, 3spin, tr, bl, br, shake, shake2, shake3, flap)\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n },\n \"Animate On Hover\": {\n id: \"fork-es-2\",\n info: \"Only animate the emote modifiers on hover\",\n implemented: true,\n hidden: false,\n cat: \"emote\"\n }\n};\nconst defaultCookie = {\n \"bda-gs-1\": true,\n \"bda-gs-2\": false,\n \"bda-gs-3\": false,\n \"bda-gs-4\": false,\n \"bda-gs-5\": true,\n \"bda-gs-6\": false,\n \"bda-gs-7\": false,\n \"bda-gs-8\": false,\n \"bda-es-0\": true,\n \"bda-es-1\": true,\n \"bda-es-2\": true,\n \"bda-es-4\": false,\n \"bda-es-6\": true,\n \"bda-es-7\": true,\n \"bda-gs-b\": false,\n \"bda-es-8\": true,\n \"bda-dc-0\": false,\n \"bda-css-0\": false,\n \"bda-css-1\": false,\n \"bda-es-9\": true,\n \"fork-dm-1\": false,\n \"fork-ps-1\": true,\n \"fork-ps-2\": true,\n \"fork-ps-3\": true,\n \"fork-ps-4\": true,\n \"fork-ps-5\": true,\n \"fork-es-2\": false,\n \"fork-es-3\": true,\n \"fork-wp-1\": false,\n \"fork-wp-2\": false,\n \"fork-beta\": true\n};\nconst settingsCookie = {};\nconst bdpluginErrors = [];\nconst bdthemeErrors = []; // define for backwards compatibility\n\nconst bdConfig = {};\nconst bemotes = [];\nconst emotesFfz = {};\nconst emotesBTTV = {};\nconst emotesBTTV2 = {};\nconst emotesTwitch = {};\nconst subEmotesTwitch = {};\nconst bdEmotes = {\n TwitchGlobal: {},\n TwitchSubscriber: {},\n BTTV: {},\n FrankerFaceZ: {},\n BTTV2: {}\n};\nconst bdEmoteSettingIDs = {\n TwitchGlobal: \"bda-es-7\",\n TwitchSubscriber: \"bda-es-7\",\n BTTV: \"bda-es-2\",\n FrankerFaceZ: \"bda-es-1\",\n BTTV2: \"bda-es-2\"\n};\nconst bdthemes = {};\nconst bdplugins = {};\nconst pluginCookie = {};\nconst themeCookie = {};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvMGdsb2JhbHMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Db3JlLy4vc3JjLzBnbG9iYWxzLmpzPzAwZDIiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gdmFyIHNldHRpbmdzUGFuZWwsIGVtb3RlTW9kdWxlLCBxdWlja0Vtb3RlTWVudSwgdm9pY2VNb2RlLCBwbHVnaW5Nb2R1bGUsIHRoZW1lTW9kdWxlLCBkTW9kZSwgcHVibGljU2VydmVyc01vZHVsZSwgbWFpbkNvcmUsIEJEVjI7XG5leHBvcnQgY29uc3QgbWluU3VwcG9ydGVkVmVyc2lvbiA9IFwiMC4zLjBcIjtcbmV4cG9ydCBjb25zdCBiYmRWZXJzaW9uID0gXCIwLjIuMjUtYmV0YVwiO1xuZXhwb3J0IGNvbnN0IGJiZENoYW5nZWxvZyA9IHtcbiAgZGVzY3JpcHRpb246IFwiTW9zdGx5IGJlaGluZCB0aGUgc2NlbmVzIGNoYW5nZXMgYWdhaW4uXCIsXG4gIGNoYW5nZXM6IFt7XG4gICAgdGl0bGU6IFwiV2hhdCdzIE5ldz9cIixcbiAgICBpdGVtczogW1wiKipDaGFuZ2VzIGZvciBwbHVnaW4gZGV2ZWxvcGVycyEqKiBUaGVyZSBhcmUgc29tZSBuZXcgaXRlbXMgaW4gdGhlIGBCZEFwaWAgdGhhdCB5b3UgbWF5IHdhbnQgdG8gY2hlY2sgb3V0LlwiXVxuICB9LCB7XG4gICAgdGl0bGU6IFwiRml4ZXNcIixcbiAgICB0eXBlOiBcImZpeGVkXCIsXG4gICAgaXRlbXM6IFtcIioqTW9kYWwgRm9vdGVycyoqIGFyZSBubyBsb25nZXIgYmxhbmsgaG9wZWZ1bGx5IVwiXVxuICB9LCB7XG4gICAgdGl0bGU6IFwiTWlub3IgU3R1ZmZcIixcbiAgICB0eXBlOiBcImltcHJvdmVkXCIsXG4gICAgaXRlbXM6IFtcIioqSW5qZWN0b3IgVmVyc2lvbioqIGlzIG5vdyBpbmNsdWRlZCBpbiB0aGUgdmVyc2lvbiBsaXN0IHRvIHRyeSBhbmQgcXVlbGwgdGhlIGNvbmZ1c2lvbi5cIl1cbiAgfV1cbn07XG5leHBvcnQgY29uc3Qgc2V0dGluZ3MgPSB7XG4gIFwiQ3VzdG9tIGNzcyBsaXZlIHVwZGF0ZVwiOiB7XG4gICAgaWQ6IFwiYmRhLWNzcy0wXCIsXG4gICAgaW5mbzogXCJcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IHRydWUsXG4gICAgY2F0OiBcImNvcmVcIlxuICB9LFxuICBcIkN1c3RvbSBjc3MgYXV0byB1ZHBhdGVcIjoge1xuICAgIGlkOiBcImJkYS1jc3MtMVwiLFxuICAgIGluZm86IFwiXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiB0cnVlLFxuICAgIGNhdDogXCJjb3JlXCJcbiAgfSxcbiAgXCJCZXR0ZXJEaXNjb3JkIEJsdWVcIjoge1xuICAgIGlkOiBcImJkYS1ncy1iXCIsXG4gICAgaW5mbzogXCJSZXBsYWNlIERpc2NvcmQgYmx1ZSB3aXRoIEJEIEJsdWVcIixcbiAgICBpbXBsZW1lbnRlZDogZmFsc2UsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiXG4gIH0sXG5cbiAgLyogQ29yZSAqL1xuXG4gIC8qID09PT09PSAqL1xuICBcIlB1YmxpYyBTZXJ2ZXJzXCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtMVwiLFxuICAgIGluZm86IFwiRGlzcGxheSBwdWJsaWMgc2VydmVycyBidXR0b25cIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG4gIFwiTWluaW1hbCBNb2RlXCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtMlwiLFxuICAgIGluZm86IFwiSGlkZSBlbGVtZW50cyBhbmQgcmVkdWNlIHRoZSBzaXplIG9mIGVsZW1lbnRzLlwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJtb2R1bGVzXCJcbiAgfSxcbiAgXCJWb2ljZSBNb2RlXCI6IHtcbiAgICBpZDogXCJiZGEtZ3MtNFwiLFxuICAgIGluZm86IFwiT25seSBzaG93IHZvaWNlIGNoYXRcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwibW9kdWxlc1wiXG4gIH0sXG4gIFwiSGlkZSBDaGFubmVsc1wiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLTNcIixcbiAgICBpbmZvOiBcIkhpZGUgY2hhbm5lbHMgaW4gbWluaW1hbCBtb2RlXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIkRhcmsgTW9kZVwiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLTVcIixcbiAgICBpbmZvOiBcIk1ha2UgY2VydGFpbiBlbGVtZW50cyBkYXJrIGJ5IGRlZmF1bHQod2lwKVwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJtb2R1bGVzXCJcbiAgfSxcbiAgXCJWb2ljZSBEaXNjb25uZWN0XCI6IHtcbiAgICBpZDogXCJiZGEtZGMtMFwiLFxuICAgIGluZm86IFwiRGlzY29ubmVjdCBmcm9tIHZvaWNlIHNlcnZlciB3aGVuIGNsb3NpbmcgRGlzY29yZFwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJtb2R1bGVzXCJcbiAgfSxcbiAgXCIyNCBIb3VyIFRpbWVzdGFtcHNcIjoge1xuICAgIGlkOiBcImJkYS1ncy02XCIsXG4gICAgaW5mbzogXCJSZXBsYWNlIDEyaHIgdGltZXN0YW1wcyB3aXRoIHByb3BlciBvbmVzXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIkNvbG9yZWQgVGV4dFwiOiB7XG4gICAgaWQ6IFwiYmRhLWdzLTdcIixcbiAgICBpbmZvOiBcIk1ha2UgdGV4dCBjb2xvciB0aGUgc2FtZSBhcyByb2xlIGNvbG9yXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuICBcIk5vcm1hbGl6ZSBDbGFzc2VzXCI6IHtcbiAgICBpZDogXCJmb3JrLXBzLTRcIixcbiAgICBpbmZvOiBcIkFkZHMgc3RhYmxlIGNsYXNzZXMgdG8gZWxlbWVudHMgdG8gaGVscCB0aGVtZXMuIChlLmcuIGFkZHMgLmRhLWNoYW5uZWxzIHRvIC5jaGFubmVscy1JZTJsNkEpXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIm1vZHVsZXNcIlxuICB9LFxuXG4gIC8qIENvbnRlbnQgKi9cbiAgXCJDb250ZW50IEVycm9yIE1vZGFsXCI6IHtcbiAgICBpZDogXCJmb3JrLXBzLTFcIixcbiAgICBpbmZvOiBcIlNob3dzIGEgbW9kYWwgd2l0aCBwbHVnaW4vdGhlbWUgZXJyb3JzXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcImNvbnRlbnQgbWFuYWdlclwiXG4gIH0sXG4gIFwiU2hvdyBUb2FzdHNcIjoge1xuICAgIGlkOiBcImZvcmstcHMtMlwiLFxuICAgIGluZm86IFwiU2hvd3MgYSBzbWFsbCBub3RpZmljYXRpb24gZm9yIGltcG9ydGFudCBpbmZvcm1hdGlvblwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJjb250ZW50IG1hbmFnZXJcIlxuICB9LFxuICBcIlNjcm9sbCBUbyBTZXR0aW5nc1wiOiB7XG4gICAgaWQ6IFwiZm9yay1wcy0zXCIsXG4gICAgaW5mbzogXCJBdXRvLXNjcm9sbHMgdG8gYSBwbHVnaW4ncyBzZXR0aW5ncyB3aGVuIHRoZSBidXR0b24gaXMgY2xpY2tlZCAob25seSBpZiBvdXQgb2YgdmlldylcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwiY29udGVudCBtYW5hZ2VyXCJcbiAgfSxcbiAgXCJBdXRvbWF0aWMgTG9hZGluZ1wiOiB7XG4gICAgaWQ6IFwiZm9yay1wcy01XCIsXG4gICAgaW5mbzogXCJBdXRvbWF0aWNhbGx5IGxvYWRzLCByZWxvYWRzLCBhbmQgdW5sb2FkcyBwbHVnaW5zIGFuZCB0aGVtZXNcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwiY29udGVudCBtYW5hZ2VyXCJcbiAgfSxcblxuICAvKiBCZXRhICovXG4gIFwiQkJEIEJldGFcIjoge1xuICAgIGlkOiBcImZvcmstYmV0YVwiLFxuICAgIGluZm86IFwiR2l2ZXMgYWNjZXNzIHRvIEJCRCBiZXRhLiAoUmVxdWlyZXMgZnVsbCByZXN0YXJ0IGFmdGVyIGNoYW5naW5nLilcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJjb3JlXCIsXG4gICAgY2F0ZWdvcnk6IFwiYmV0YVwiXG4gIH0sXG5cbiAgLyogRGV2ZWxvcGVyICovXG4gIFwiRGV2ZWxvcGVyIE1vZGVcIjoge1xuICAgIGlkOiBcImJkYS1ncy04XCIsXG4gICAgaW5mbzogXCJEZXZlbG9wZXIgTW9kZVwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJkZXZlbG9wZXIgc2V0dGluZ3NcIlxuICB9LFxuICBcIkNvcHkgU2VsZWN0b3JcIjoge1xuICAgIGlkOiBcImZvcmstZG0tMVwiLFxuICAgIGluZm86IFwiQWRkcyBhIFxcXCJDb3B5IFNlbGVjdG9yXFxcIiBvcHRpb24gdG8gY29udGV4dCBtZW51cyB3aGVuIGRldmVsb3BlciBtb2RlIGlzIGFjdGl2ZVwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImNvcmVcIixcbiAgICBjYXRlZ29yeTogXCJkZXZlbG9wZXIgc2V0dGluZ3NcIlxuICB9LFxuXG4gIC8qIFdpbmRvdyBQcmVmcyAqL1xuICBcIkVuYWJsZSBUcmFuc3BhcmVuY3lcIjoge1xuICAgIGlkOiBcImZvcmstd3AtMVwiLFxuICAgIGluZm86IFwiRW5hYmxlcyB0aGUgbWFpbiB3aW5kb3cgdG8gYmUgc2VlLXRocm91Z2ggKHJlcXVpcmVzIHJlc3RhcnQpXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIndpbmRvdyBwcmVmZXJlbmNlc1wiXG4gIH0sXG4gIFwiV2luZG93IEZyYW1lXCI6IHtcbiAgICBpZDogXCJmb3JrLXdwLTJcIixcbiAgICBpbmZvOiBcIkFkZHMgdGhlIG5hdGl2ZSBvcyB3aW5kb3cgZnJhbWUgdG8gdGhlIG1haW4gd2luZG93XCIsXG4gICAgaW1wbGVtZW50ZWQ6IGZhbHNlLFxuICAgIGhpZGRlbjogdHJ1ZSxcbiAgICBjYXQ6IFwiY29yZVwiLFxuICAgIGNhdGVnb3J5OiBcIndpbmRvdyBwcmVmZXJlbmNlc1wiXG4gIH0sXG5cbiAgLyogRW1vdGVzICovXG5cbiAgLyogPT09PT09ICovXG4gIFwiRG93bmxvYWQgRW1vdGVzXCI6IHtcbiAgICBpZDogXCJmb3JrLWVzLTNcIixcbiAgICBpbmZvOiBcIkRvd25sb2FkIGVtb3RlcyB3aGVuIHRoZSBjYWNoZSBpcyBleHBpcmVkXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIlR3aXRjaCBFbW90ZXNcIjoge1xuICAgIGlkOiBcImJkYS1lcy03XCIsXG4gICAgaW5mbzogXCJTaG93IFR3aXRjaCBlbW90ZXNcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiRnJhbmtlckZhY2VaIEVtb3Rlc1wiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLTFcIixcbiAgICBpbmZvOiBcIlNob3cgRnJhbmtlckZhY2VaIEVtb3Rlc1wiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfSxcbiAgXCJCZXR0ZXJUVFYgRW1vdGVzXCI6IHtcbiAgICBpZDogXCJiZGEtZXMtMlwiLFxuICAgIGluZm86IFwiU2hvdyBCZXR0ZXJUVFYgRW1vdGVzXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIkVtb3RlIE1lbnVcIjoge1xuICAgIGlkOiBcImJkYS1lcy0wXCIsXG4gICAgaW5mbzogXCJTaG93IFR3aXRjaC9GYXZvdXJpdGUgZW1vdGVzIGluIGVtb3RlIG1lbnVcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH0sXG4gIFwiRW1vamkgTWVudVwiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLTlcIixcbiAgICBpbmZvOiBcIlNob3cgRGlzY29yZCBlbW9qaSBtZW51XCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIkVtb3RlIEF1dG8gQ2FwaXRhbGl6YXRpb25cIjoge1xuICAgIGlkOiBcImJkYS1lcy00XCIsXG4gICAgaW5mbzogXCJBdXRvY2FwaXRhbGl6ZSBlbW90ZSBjb21tYW5kc1wiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfSxcbiAgXCJTaG93IE5hbWVzXCI6IHtcbiAgICBpZDogXCJiZGEtZXMtNlwiLFxuICAgIGluZm86IFwiU2hvdyBlbW90ZSBuYW1lcyBvbiBob3ZlclwiLFxuICAgIGltcGxlbWVudGVkOiB0cnVlLFxuICAgIGhpZGRlbjogZmFsc2UsXG4gICAgY2F0OiBcImVtb3RlXCJcbiAgfSxcbiAgXCJTaG93IGVtb3RlIG1vZGlmaWVyc1wiOiB7XG4gICAgaWQ6IFwiYmRhLWVzLThcIixcbiAgICBpbmZvOiBcIkVuYWJsZSBlbW90ZSBtb2RzIChmbGlwLCBzcGluLCBwdWxzZSwgc3BpbjIsIHNwaW4zLCAxc3BpbiwgMnNwaW4sIDNzcGluLCB0ciwgYmwsIGJyLCBzaGFrZSwgc2hha2UyLCBzaGFrZTMsIGZsYXApXCIsXG4gICAgaW1wbGVtZW50ZWQ6IHRydWUsXG4gICAgaGlkZGVuOiBmYWxzZSxcbiAgICBjYXQ6IFwiZW1vdGVcIlxuICB9LFxuICBcIkFuaW1hdGUgT24gSG92ZXJcIjoge1xuICAgIGlkOiBcImZvcmstZXMtMlwiLFxuICAgIGluZm86IFwiT25seSBhbmltYXRlIHRoZSBlbW90ZSBtb2RpZmllcnMgb24gaG92ZXJcIixcbiAgICBpbXBsZW1lbnRlZDogdHJ1ZSxcbiAgICBoaWRkZW46IGZhbHNlLFxuICAgIGNhdDogXCJlbW90ZVwiXG4gIH1cbn07XG5leHBvcnQgY29uc3QgZGVmYXVsdENvb2tpZSA9IHtcbiAgXCJiZGEtZ3MtMVwiOiB0cnVlLFxuICBcImJkYS1ncy0yXCI6IGZhbHNlLFxuICBcImJkYS1ncy0zXCI6IGZhbHNlLFxuICBcImJkYS1ncy00XCI6IGZhbHNlLFxuICBcImJkYS1ncy01XCI6IHRydWUsXG4gIFwiYmRhLWdzLTZcIjogZmFsc2UsXG4gIFwiYmRhLWdzLTdcIjogZmFsc2UsXG4gIFwiYmRhLWdzLThcIjogZmFsc2UsXG4gIFwiYmRhLWVzLTBcIjogdHJ1ZSxcbiAgXCJiZGEtZXMtMVwiOiB0cnVlLFxuICBcImJkYS1lcy0yXCI6IHRydWUsXG4gIFwiYmRhLWVzLTRcIjogZmFsc2UsXG4gIFwiYmRhLWVzLTZcIjogdHJ1ZSxcbiAgXCJiZGEtZXMtN1wiOiB0cnVlLFxuICBcImJkYS1ncy1iXCI6IGZhbHNlLFxuICBcImJkYS1lcy04XCI6IHRydWUsXG4gIFwiYmRhLWRjLTBcIjogZmFsc2UsXG4gIFwiYmRhLWNzcy0wXCI6IGZhbHNlLFxuICBcImJkYS1jc3MtMVwiOiBmYWxzZSxcbiAgXCJiZGEtZXMtOVwiOiB0cnVlLFxuICBcImZvcmstZG0tMVwiOiBmYWxzZSxcbiAgXCJmb3JrLXBzLTFcIjogdHJ1ZSxcbiAgXCJmb3JrLXBzLTJcIjogdHJ1ZSxcbiAgXCJmb3JrLXBzLTNcIjogdHJ1ZSxcbiAgXCJmb3JrLXBzLTRcIjogdHJ1ZSxcbiAgXCJmb3JrLXBzLTVcIjogdHJ1ZSxcbiAgXCJmb3JrLWVzLTJcIjogZmFsc2UsXG4gIFwiZm9yay1lcy0zXCI6IHRydWUsXG4gIFwiZm9yay13cC0xXCI6IGZhbHNlLFxuICBcImZvcmstd3AtMlwiOiBmYWxzZSxcbiAgXCJmb3JrLWJldGFcIjogdHJ1ZVxufTtcbmV4cG9ydCBjb25zdCBzZXR0aW5nc0Nvb2tpZSA9IHt9O1xuZXhwb3J0IGNvbnN0IGJkcGx1Z2luRXJyb3JzID0gW107XG5leHBvcnQgY29uc3QgYmR0aGVtZUVycm9ycyA9IFtdOyAvLyBkZWZpbmUgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbmV4cG9ydCBjb25zdCBiZENvbmZpZyA9IHt9O1xuZXhwb3J0IGNvbnN0IGJlbW90ZXMgPSBbXTtcbmV4cG9ydCBjb25zdCBlbW90ZXNGZnogPSB7fTtcbmV4cG9ydCBjb25zdCBlbW90ZXNCVFRWID0ge307XG5leHBvcnQgY29uc3QgZW1vdGVzQlRUVjIgPSB7fTtcbmV4cG9ydCBjb25zdCBlbW90ZXNUd2l0Y2ggPSB7fTtcbmV4cG9ydCBjb25zdCBzdWJFbW90ZXNUd2l0Y2ggPSB7fTtcbmV4cG9ydCBjb25zdCBiZEVtb3RlcyA9IHtcbiAgVHdpdGNoR2xvYmFsOiB7fSxcbiAgVHdpdGNoU3Vic2NyaWJlcjoge30sXG4gIEJUVFY6IHt9LFxuICBGcmFua2VyRmFjZVo6IHt9LFxuICBCVFRWMjoge31cbn07XG5leHBvcnQgY29uc3QgYmRFbW90ZVNldHRpbmdJRHMgPSB7XG4gIFR3aXRjaEdsb2JhbDogXCJiZGEtZXMtN1wiLFxuICBUd2l0Y2hTdWJzY3JpYmVyOiBcImJkYS1lcy03XCIsXG4gIEJUVFY6IFwiYmRhLWVzLTJcIixcbiAgRnJhbmtlckZhY2VaOiBcImJkYS1lcy0xXCIsXG4gIEJUVFYyOiBcImJkYS1lcy0yXCJcbn07XG5leHBvcnQgY29uc3QgYmR0aGVtZXMgPSB7fTtcbmV4cG9ydCBjb25zdCBiZHBsdWdpbnMgPSB7fTtcbmV4cG9ydCBjb25zdCBwbHVnaW5Db29raWUgPSB7fTtcbmV4cG9ydCBjb25zdCB0aGVtZUNvb2tpZSA9IHt9OyJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/0globals.js\n"); /***/ }), @@ -179,7 +179,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _0gl /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _0globals__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./0globals */ \"./src/0globals.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./src/utils.js\");\n/* harmony import */ var _emoteModule__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./emoteModule */ \"./src/emoteModule.js\");\n/* harmony import */ var _quickEmoteMenu__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./quickEmoteMenu */ \"./src/quickEmoteMenu.js\");\n/* harmony import */ var _v2__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./v2 */ \"./src/v2.js\");\n/* harmony import */ var _settingsPanel__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./settingsPanel */ \"./src/settingsPanel.js\");\n/* harmony import */ var _pluginModule__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./pluginModule */ \"./src/pluginModule.js\");\n/* harmony import */ var _themeModule__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./themeModule */ \"./src/themeModule.js\");\n/* harmony import */ var _dataStore__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./dataStore */ \"./src/dataStore.js\");\n/* harmony import */ var _webpackModules__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./webpackModules */ \"./src/webpackModules.js\");\n/* harmony import */ var _react_bdLogo__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./react/bdLogo */ \"./src/react/bdLogo.js\");\n\n\n\n // import publicServersModule from \"./publicServers\";\n// import voiceMode from \"./voiceMode\";\n// import dMode from \"./devMode\";\n\n\n\n\n\n\n\n\n\nfunction Core(config) {\n Object.assign(_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"], config);\n}\n\nCore.prototype.init = async function () {\n if (_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].version < _0globals__WEBPACK_IMPORTED_MODULE_0__[\"minSupportedVersion\"]) {\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].alert(\"Not Supported\", \"BetterDiscord v\" + _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].version + \" (your version)\" + \" is not supported by the latest js (\" + _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bbdVersion\"] + \").

Please download the latest version from GitHub\");\n return;\n }\n\n if (window.ED) {\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].alert(\"Not Supported\", \"BandagedBD does not work with EnhancedDiscord. Please uninstall one of them.\");\n return;\n }\n\n if (window.WebSocket && window.WebSocket.name && window.WebSocket.name.includes(\"Patched\")) {\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].alert(\"Not Supported\", \"BandagedBD does not work with Powercord. Please uninstall one of them.\");\n return;\n }\n\n const latestLocalVersion = _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].updater ? _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].updater.LatestVersion : _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].latestVersion;\n\n if (latestLocalVersion > _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].version) {\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].alert(\"Update Available\", `\n An update for BandagedBD is available (${latestLocalVersion})! Please Reinstall!

\n Download Installer\n `);\n }\n\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Initializing Settings\");\n this.initSettings(); // emoteModule = new EmoteModule();\n // quickEmoteMenu = new QuickEmoteMenu();\n\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Initializing EmoteModule\");\n window.emotePromise = _emoteModule__WEBPACK_IMPORTED_MODULE_2__[\"default\"].init().then(() => {\n _emoteModule__WEBPACK_IMPORTED_MODULE_2__[\"default\"].initialized = true;\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Initializing QuickEmoteMenu\");\n _quickEmoteMenu__WEBPACK_IMPORTED_MODULE_3__[\"default\"].init();\n }); // publicServersModule = new V2_PublicServers();\n // voiceMode = new VoiceMode();\n // dMode = new devMode();\n\n this.injectExternals();\n await this.checkForGuilds();\n _v2__WEBPACK_IMPORTED_MODULE_4__[\"default\"].initialize();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Updating Settings\"); // settingsPanel = new V2_SettingsPanel();\n\n _settingsPanel__WEBPACK_IMPORTED_MODULE_5__[\"default\"].initializeSettings();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Loading Plugins\"); // pluginModule = new PluginModule();\n\n _pluginModule__WEBPACK_IMPORTED_MODULE_6__[\"default\"].loadPlugins();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Loading Themes\"); // themeModule = new ThemeModule();\n\n _themeModule__WEBPACK_IMPORTED_MODULE_7__[\"default\"].loadThemes();\n $(\"#customcss\").detach().appendTo(document.head);\n window.addEventListener(\"beforeunload\", function () {\n if (_0globals__WEBPACK_IMPORTED_MODULE_0__[\"settingsCookie\"][\"bda-dc-0\"]) document.querySelector(\".btn.btn-disconnect\").click();\n });\n _emoteModule__WEBPACK_IMPORTED_MODULE_2__[\"default\"].autoCapitalize();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Removing Loading Icon\");\n if (document.getElementsByClassName(\"bd-loaderv2\").length) document.getElementsByClassName(\"bd-loaderv2\")[0].remove();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Initializing Main Observer\");\n this.initObserver(); // Show loading errors\n\n if (_0globals__WEBPACK_IMPORTED_MODULE_0__[\"settingsCookie\"][\"fork-ps-1\"]) {\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].log(\"Startup\", \"Collecting Startup Errors\");\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].showContentErrors({\n plugins: _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdpluginErrors\"],\n themes: _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdthemeErrors\"]\n });\n }\n\n const previousVersion = _dataStore__WEBPACK_IMPORTED_MODULE_8__[\"default\"].getBDData(\"version\");\n\n if (_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bbdVersion\"] > previousVersion) {\n if (_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bbdChangelog\"]) this.showChangelogModal(_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bbdChangelog\"]);\n _dataStore__WEBPACK_IMPORTED_MODULE_8__[\"default\"].setBDData(\"version\", _0globals__WEBPACK_IMPORTED_MODULE_0__[\"bbdVersion\"]);\n }\n\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].suppressErrors(this.patchSocial.bind(this), \"BD Social Patch\")();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].suppressErrors(this.patchGuildPills.bind(this), \"BD Guild Pills Patch\")();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].suppressErrors(this.patchGuildListItems.bind(this), \"BD Guild List Items Patch\")();\n _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].suppressErrors(this.patchGuildSeparator.bind(this), \"BD Guild Separator Patch\")();\n};\n\nCore.prototype.checkForGuilds = function () {\n let timesChecked = 0;\n return new Promise(resolve => {\n const checkForGuilds = function () {\n const wrapper = _v2__WEBPACK_IMPORTED_MODULE_4__[\"default\"].guildClasses.wrapper.split(\" \")[0];\n if (document.querySelectorAll(`.${wrapper}`).length > 0) timesChecked++;\n const guild = _v2__WEBPACK_IMPORTED_MODULE_4__[\"default\"].guildClasses.listItem.split(\" \")[0];\n const blob = _v2__WEBPACK_IMPORTED_MODULE_4__[\"default\"].guildClasses.blobContainer.split(\" \")[0];\n if (document.querySelectorAll(`.${wrapper} .${guild} .${blob}`).length > 0) return resolve(_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].deferLoaded = true);else if (timesChecked >= 50) return resolve(_0globals__WEBPACK_IMPORTED_MODULE_0__[\"bdConfig\"].deferLoaded = true);\n setTimeout(checkForGuilds, 100);\n };\n\n $(document).ready(function () {\n setTimeout(checkForGuilds, 100);\n });\n });\n};\n\nCore.prototype.injectExternals = async function () {\n await _utils__WEBPACK_IMPORTED_MODULE_1__[\"default\"].injectJs(\"https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.9/ace.js\");\n if (window.require.original) window.require = window.require.original;\n};\n\nCore.prototype.initSettings = function () {\n _dataStore__WEBPACK_IMPORTED_MODULE_8__[\"default\"].initialize();\n\n if (!_dataStore__WEBPACK_IMPORTED_MODULE_8__[\"default\"].getSettingGroup(\"settings\")) {\n Object.assign(_0globals__WEBPACK_IMPORTED_MODULE_0__[\"settingsCookie\"], _0globals__WEBPACK_IMPORTED_MODULE_0__[\"defaultCookie\"]);\n _settingsPanel__WEBPACK_IMPORTED_MODULE_5__[\"default\"].saveSettings();\n } else {\n _settingsPanel__WEBPACK_IMPORTED_MODULE_5__[\"default\"].loadSettings();\n $(\"'),$("#customcss").text(this.editor.session.getValue()).detach().appendTo(document.head)}saveCss(){V.setBDData("bdcustomcss",btoa(this.editor.session.getValue()))}}class Ae extends z.reactComponent{constructor(e){super(e);this.props.lines=0,this.setInitialState(),this.attach=this.attach.bind(this),this.detachedEditor=z.react.createElement(Le,{attach:this.attach}),this.onClick=this.onClick.bind(this),this.updateCss=this.updateCss.bind(this),this.saveCss=this.saveCss.bind(this),this.detach=this.detach.bind(this)}setInitialState(){this.state={detached:this.props.detached||z.editorDetached}}componentDidMount(){this.editor=ace.edit("bd-customcss-editor"),this.editor.setTheme("ace/theme/monokai"),this.editor.session.setMode("ace/mode/css"),this.editor.setShowPrintMargin(!1),this.editor.setFontSize(14),this.editor.on("change",()=>{l["bda-css-0"]&&(this.saveCss(),this.updateCss())})}componentWillUnmount(){this.editor.destroy()}componentDidUpdate(e,t){const n=this;t.detached&&!n.state.detached&&z.reactDom.unmountComponentAtNode(n.detachedRoot)}codeMirror(){}get options(){return{lineNumbers:!0,mode:"css",indentUnit:4,theme:"material",scrollbarStyle:"simple"}}get css(){const e=V.getBDData("bdcustomcss");let t="";return e&&""!==e&&(t=atob(e)),t}updateLineCount(){const e=this.refs.editor.value.split("\n").length;e!=this.props.lines&&(this.refs.lines.textContent=Array.from(new Array(e),(e,t)=>t+1).join(".\n")+".",this.props.lines=e)}render(){const e=this,{detached:t}=e.state;return z.react.createElement("div",{className:"contentColumn-2hrIYH contentColumnDefault-1VQkGM content-column default",style:{padding:"60px 40px 0px"}},t&&z.react.createElement("div",{id:"editor-detached"},z.react.createElement(fe,{text:"Custom CSS Editor"}),z.react.createElement("h3",null,"Editor Detached"),z.react.createElement("button",{className:"btn btn-primary",onClick:()=>{e.attach()}},"Attach")),!t&&z.react.createElement("div",null,z.react.createElement(fe,{text:"Custom CSS Editor"}),z.react.createElement("div",{className:"editor-wrapper"},z.react.createElement("div",{id:"bd-customcss-editor",className:"editor",ref:"editor"},e.css)),z.react.createElement("div",{id:"bd-customcss-attach-controls"},z.react.createElement("ul",{className:"checkbox-group"},z.react.createElement(Fe,{id:"live-update",text:"Live Update",onChange:this.onChange,checked:l["bda-css-0"]})),z.react.createElement("div",{id:"bd-customcss-detach-controls-button"},z.react.createElement("button",{style:{borderRadius:"3px 0 0 3px",borderRight:"1px solid #3f4146"},className:"btn btn-primary",onClick:()=>{e.onClick("update")}},"Update"),z.react.createElement("button",{style:{borderRadius:"0",borderLeft:"1px solid #2d2d2d",borderRight:"1px solid #2d2d2d"},className:"btn btn-primary",onClick:()=>{e.onClick("save")}},"Save"),z.react.createElement("button",{style:{borderRadius:"0 3px 3px 0",borderLeft:"1px solid #3f4146"},className:"btn btn-primary",onClick:()=>{e.onClick("detach")}},"Detach"),z.react.createElement("span",{style:{fontSize:"10px",marginLeft:"5px"}},"Unsaved changes are lost on detach"),z.react.createElement("div",{className:"help-text"},"Press ",z.react.createElement("code",{className:"inline"},"ctrl"),"+",z.react.createElement("span",{className:"inline"},",")," with the editor focused to access the editor's settings.")))))}onClick(e){const t=this;switch(e){case"update":t.updateCss();break;case"save":t.saveCss();break;case"detach":t.detach()}}onChange(e,t){switch(e){case"live-update":l["bda-css-0"]=t,Re.saveSettings()}}updateCss(){0==$("#customcss").length&&$("head").append(''),$("#customcss").text(this.editor.session.getValue()).detach().appendTo(document.head)}saveCss(){V.setBDData("bdcustomcss",btoa(this.editor.session.getValue()))}detach(){this.setState({detached:!0});const e=this.detachedRoot;e?z.reactDom.render(this.detachedEditor,e):console.log("FAILED TO INJECT ROOT: .app")}get detachedRoot(){const e=$("#bd-customcss-detach-container");return e.length?e[0]:this.injectDetachedRoot()?this.detachedRoot:null}injectDetachedRoot(){return!!$(".app, .app-2rEoOp").length&&($("
",{id:"bd-customcss-detach-container"}).insertAfter($(".app, .app-2rEoOp")),!0)}attach(){this.setState({detached:!1})}}class Ie extends z.reactComponent{constructor(e){super(e)}static get displayName(){return"ContentColumn"}render(){return z.react.createElement("div",{className:"contentColumn-2hrIYH contentColumnDefault-1VQkGM content-column default"},z.react.createElement("h2",{className:"ui-form-title h2 margin-reset margin-bottom-20"},this.props.title),this.props.children)}}var Re=new class{constructor(){this.sideBarOnClick=this.sideBarOnClick.bind(this),this.onChange=this.onChange.bind(this),this.updateSettings=this.updateSettings.bind(this),this.sidebar=new ne(this.sideBarOnClick)}get root(){const e=$("#bd-settingspane-container");return e.length?e[0]:this.injectRoot()?this.root:null}injectRoot(){if(!$(".layer-3QrUeG .standardSidebarView-3F1I7i, .layer-3QrUeG .ui-standard-sidebar-view").length)return!1;const e=$("
",{class:"contentRegion-3nDuYy content-region",id:"bd-settingspane-container"});return $(".layer-3QrUeG .standardSidebarView-3F1I7i, .layer-3QrUeG .ui-standard-sidebar-view").append(e),S.onRemoved(e[0],()=>{z.reactDom.unmountComponentAtNode(e[0])}),!0}get coreSettings(){const e=this.getSettings("core");return[...new Set(e.map(e=>e.category))].map(t=>({title:t,settings:e.filter(e=>e.category==t)}))}get emoteSettings(){return this.getSettings("emote")}getSettings(e){return Object.keys(i).reduce((t,n)=>{const s=i[n];return s.cat===e&&s.implemented&&!s.hidden&&(s.text=n,t.push(s)),t},[])}sideBarOnClick(e){const t=this;switch($(".contentRegion-3nDuYy, .content-region").first().hide(),$(t.root).show(),e){case"core":t.renderCoreSettings();break;case"emotes":t.renderEmoteSettings();break;case"customcss":t.renderCustomCssEditor();break;case"plugins":t.renderPluginPane();break;case"themes":t.renderThemePane()}}onClick(){}onChange(e,t){this.updateSettings(e,t)}updateSettings(e,t){if(l[e]=t,"fork-beta"==e)try{const e=n(0),s=n(2).join(DiscordNative.process.remote.resourcesPath,"app","betterdiscord","config.json"),o=require(s);t?(o.branch="modularize",o.minified=!1):(o.branch="master",o.minified=!0),e.writeFileSync(s,JSON.stringify(o,null,4))}catch(e){console.error(e)}"bda-gs-2"==e&&(t?$("body").addClass("bd-minimal"):$("body").removeClass("bd-minimal")),"bda-gs-3"==e&&(t?$("body").addClass("bd-minimal-chan"):$("body").removeClass("bd-minimal-chan")),"bda-gs-1"==e&&(t?ye.addButton():ye.removeButton()),"bda-gs-4"==e&&(t?ke.enable():ke.disable()),"bda-gs-5"==e&&(t?$("#app-mount").addClass("bda-dark"):$("#app-mount").removeClass("bda-dark")),t&&"bda-gs-6"==e&&oe.inject24Hour(),"bda-gs-7"==e&&(t?se.injectColoredText():se.removeColoredText()),"bda-es-4"==e&&(t?Y.autoCapitalize():Y.disableAutoCapitalize()),"fork-ps-4"==e&&(t?Ee.start():Ee.stop()),"fork-ps-5"==e&&(t?(q.watchContent("plugin"),q.watchContent("theme")):(q.unwatchContent("plugin"),q.unwatchContent("theme"))),"bda-gs-8"==e&&(t?Se.enable(l["fork-dm-1"]):Se.disable()),"fork-dm-1"==e&&l["bda-gs-8"]&&Se.enable(t),this.saveSettings()}async initializeSettings(){l["bda-gs-2"]&&$("body").addClass("bd-minimal"),l["bda-gs-3"]&&$("body").addClass("bd-minimal-chan"),l["bda-gs-1"]&&ye.addButton(),l["bda-gs-4"]&&ke.enable(),l["bda-gs-5"]&&$("#app-mount").addClass("bda-dark"),l["bda-gs-6"]&&oe.inject24Hour(),l["bda-gs-7"]&&se.injectColoredText(),l["bda-es-4"]&&Y.autoCapitalize(),l["fork-ps-4"]&&Ee.start(),l["fork-ps-5"]&&(q.watchContent("plugin"),q.watchContent("theme")),l["bda-gs-8"]&&Se.enable(l["fork-dm-1"]),(async()=>{const e=z.WebpackModules.findByUniqueProperties(["getSortedGuilds"]),t=z.WebpackModules.findByUniqueProperties(["getMember"]),n=e.getFlattenedGuildIds().includes("292141134614888448"),s=z.UserStore.getCurrentUser().id,o=t.getMember("292141134614888448",s);!(!n||!o)&&o.roles.includes("452687773678436354")&&(i["BBD Beta"].hidden=!1)})(),this.saveSettings()}saveSettings(){V.setSettingGroup("settings",l)}loadSettings(){Object.assign(l,V.getSettingGroup("settings"))}renderSidebar(){const e=this;$("[class*='side-'] > [class*='item-']").off("click.v2settingspanel").on("click.v2settingspanel",()=>{z.reactDom.unmountComponentAtNode(e.root),$(e.root).hide(),$(".contentRegion-3nDuYy, .content-region").first().show()}),e.sidebar.render()}get coreComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(Oe,{key:"cspanel",onChange:this.onChange,sections:this.coreSettings}),z.react.createElement(he,{key:"tools"})]})}get emoteComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(je,{key:"espanel",title:"Emote Settings",onChange:this.onChange,settings:this.emoteSettings,button:{title:"Clear Emote Cache",onClick:()=>{Y.clearEmoteData(),Y.init(),J.init()}}}),z.react.createElement(he,{key:"tools"})]})}get customCssComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(Ae,{key:"csseditor"}),z.react.createElement(he,{key:"tools"})]})}contentComponent(e){const t="plugins"==e?this.pluginsComponent:this.themesComponent,n=e.replace("s",""),s=this;class o extends z.react.Component{constructor(e){super(e),this.onChange=this.onChange.bind(this)}componentDidMount(){D.on(`${n}-reloaded`,this.onChange),D.on(`${n}-loaded`,this.onChange),D.on(`${n}-unloaded`,this.onChange)}componentWillUnmount(){D.off(`${n}-reloaded`,this.onChange),D.off(`${n}-loaded`,this.onChange),D.off(`${n}-unloaded`,this.onChange)}onChange(){s.sideBarOnClick(e)}render(){return t}}return z.react.createElement(o)}get pluginsComponent(){const e=Object.keys(w).sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase())).reduce((e,t)=>(e.push(z.react.createElement(Ne,{key:t,plugin:w[t].plugin})),e),[]),t=z.react.createElement(De,{key:"plugin-list",className:"bda-slist",children:e}),s=!l["fork-ps-5"]&&z.react.createElement($e(Te,{color:"black",side:"top",text:"Reload Plugin List"}),{className:"bd-reload-header",size:"18px",onClick:async()=>{P.updatePluginList(),this.sideBarOnClick("plugins")}}),o=z.react.createElement("button",{key:"folder-button",className:"bd-pfbtn",onClick:()=>{n(1).shell.openItem(q.pluginsFolder)}},"Open Plugin Folder"),r=z.react.createElement(Ie,{key:"pcolumn",title:"Plugins",children:[s,o,t]});return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[r,z.react.createElement(he,{key:"tools"})]})}get themesComponent(){const e=Object.keys(k).sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase())).reduce((e,t)=>(e.push(z.react.createElement(Pe,{key:t,theme:k[t]})),e),[]),t=z.react.createElement(De,{key:"theme-list",className:"bda-slist",children:e}),s=!l["fork-ps-5"]&&z.react.createElement($e(Te,{color:"black",side:"top",text:"Reload Theme List"}),{className:"bd-reload-header",size:"18px",onClick:async()=>{B.updateThemeList(),this.sideBarOnClick("themes")}}),o=z.react.createElement("button",{key:"folder-button",className:"bd-pfbtn",onClick:()=>{n(1).shell.openItem(q.themesFolder)}},"Open Theme Folder"),r=z.react.createElement(Ie,{key:"tcolumn",title:"Themes",children:[s,o,t]});return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[r,z.react.createElement(he,{key:"tools"})]})}renderCoreSettings(){const e=this.root;e?z.reactDom.render(this.coreComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderEmoteSettings(){const e=this.root;e?z.reactDom.render(this.emoteComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderCustomCssEditor(){const e=this.root;e?z.reactDom.render(this.customCssComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderPluginPane(){const e=this.root;e?z.reactDom.render(this.contentComponent("plugins"),e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderThemePane(){const e=this.root;e?z.reactDom.render(this.contentComponent("themes"),e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}};class _e extends z.reactComponent{render(){return z.react.createElement("svg",{height:"100%",width:this.props.size||"16px",className:"bd-logo "+this.props.className,style:{fillRule:"evenodd",clipRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},viewBox:"0 0 2000 2000"},z.react.createElement("metadata",null),z.react.createElement("defs",null,z.react.createElement("filter",{id:"shadow1"},z.react.createElement("feDropShadow",{dx:"20",dy:"0",stdDeviation:"20","flood-color":"rgba(0,0,0,0.35)"})),z.react.createElement("filter",{id:"shadow2"},z.react.createElement("feDropShadow",{dx:"15",dy:"0",stdDeviation:"20","flood-color":"rgba(255,255,255,0.15)"})),z.react.createElement("filter",{id:"shadow3"},z.react.createElement("feDropShadow",{dx:"10",dy:"0",stdDeviation:"20","flood-color":"rgba(0,0,0,0.35)"}))),z.react.createElement("g",null,z.react.createElement("path",{style:{filter:"url(#shadow3)"},d:"M1195.44+135.442L1195.44+135.442L997.6+136.442C1024.2+149.742+1170.34+163.542+1193.64+179.742C1264.34+228.842+1319.74+291.242+1358.24+365.042C1398.14+441.642+1419.74+530.642+1422.54+629.642L1422.54+630.842L1422.54+632.042C1422.54+773.142+1422.54+1228.14+1422.54+1369.14L1422.54+1370.34L1422.54+1371.54C1419.84+1470.54+1398.24+1559.54+1358.24+1636.14C1319.74+1709.94+1264.44+1772.34+1193.64+1821.44C1171.04+1837.14+1025.7+1850.54+1000+1863.54L1193.54+1864.54C1539.74+1866.44+1864.54+1693.34+1864.54+1296.64L1864.54+716.942C1866.44+312.442+1541.64+135.442+1195.44+135.442Z",fill:"#171717",opacity:"1"}),z.react.createElement("path",{style:{filter:"url(#shadow2)"},d:"M1695.54+631.442C1685.84+278.042+1409.34+135.442+1052.94+135.442L361.74+136.442L803.74+490.442L1060.74+490.442C1335.24+490.442+1335.24+835.342+1060.74+835.342L1060.74+1164.84C1150.22+1164.84+1210.53+1201.48+1241.68+1250.87C1306.07+1353+1245.76+1509.64+1060.74+1509.64L361.74+1863.54L1052.94+1864.54C1409.24+1864.54+1685.74+1721.94+1695.54+1368.54C1695.54+1205.94+1651.04+1084.44+1572.64+999.942C1651.04+915.542+1695.54+794.042+1695.54+631.442Z",fill:"#3E82E5",opacity:"1"}),z.react.createElement("path",{style:{filter:"url(#shadow1)"},d:"M1469.25+631.442C1459.55+278.042+1183.05+135.442+826.65+135.442L135.45+135.442L135.45+1004C135.45+1004+135.427+1255.21+355.626+1255.21C575.825+1255.21+575.848+1004+575.848+1004L577.45+490.442L834.45+490.442C1108.95+490.442+1108.95+835.342+834.45+835.342L664.65+835.342L664.65+1164.84L834.45+1164.84C923.932+1164.84+984.244+1201.48+1015.39+1250.87C1079.78+1353+1019.47+1509.64+834.45+1509.64L135.45+1509.64L135.45+1864.54L826.65+1864.54C1182.95+1864.54+1459.45+1721.94+1469.25+1368.54C1469.25+1205.94+1424.75+1084.44+1346.35+999.942C1424.75+915.542+1469.25+794.042+1469.25+631.442Z",fill:"#FFFFFF",opacity:"1"})))}}function qe(e){Object.assign(h,e)}qe.prototype.init=async function(){if(h.version
Please download the latest version from GitHub");if(window.ED)return void S.alert("Not Supported","BandagedBD does not work with EnhancedDiscord. Please uninstall one of them.");if(window.WebSocket&&window.WebSocket.name&&window.WebSocket.name.includes("Patched"))return void S.alert("Not Supported","BandagedBD does not work with Powercord. Please uninstall one of them.");const e=h.updater?h.updater.LatestVersion:h.latestVersion;e>h.version&&S.alert("Update Available",`\n An update for BandagedBD is available (${e})! Please Reinstall!

\n Download Installer\n `),S.log("Startup","Initializing Settings"),this.initSettings(),S.log("Startup","Initializing EmoteModule"),window.emotePromise=Y.init().then(()=>{Y.initialized=!0,S.log("Startup","Initializing QuickEmoteMenu"),J.init()}),this.injectExternals(),await this.checkForGuilds(),z.initialize(),S.log("Startup","Updating Settings"),Re.initializeSettings(),S.log("Startup","Loading Plugins"),P.loadPlugins(),S.log("Startup","Loading Themes"),B.loadThemes(),$("#customcss").detach().appendTo(document.head),window.addEventListener("beforeunload",(function(){l["bda-dc-0"]&&document.querySelector(".btn.btn-disconnect").click()})),Y.autoCapitalize(),S.log("Startup","Removing Loading Icon"),document.getElementsByClassName("bd-loaderv2").length&&document.getElementsByClassName("bd-loaderv2")[0].remove(),S.log("Startup","Initializing Main Observer"),this.initObserver(),l["fork-ps-1"]&&(S.log("Startup","Collecting Startup Errors"),S.showContentErrors({plugins:d,themes:u}));const t=V.getBDData("version");r>t&&(a&&this.showChangelogModal(a),V.setBDData("version",r)),S.suppressErrors(this.patchSocial.bind(this),"BD Social Patch")(),S.suppressErrors(this.patchGuildPills.bind(this),"BD Guild Pills Patch")(),S.suppressErrors(this.patchGuildListItems.bind(this),"BD Guild List Items Patch")(),S.suppressErrors(this.patchGuildSeparator.bind(this),"BD Guild Separator Patch")()},qe.prototype.checkForGuilds=function(){let e=0;return new Promise(t=>{const n=function(){const s=z.guildClasses.wrapper.split(" ")[0];document.querySelectorAll(`.${s}`).length>0&&e++;const o=z.guildClasses.listItem.split(" ")[0],r=z.guildClasses.blobContainer.split(" ")[0];return document.querySelectorAll(`.${s} .${o} .${r}`).length>0||e>=50?t(h.deferLoaded=!0):void setTimeout(n,100)};$(document).ready((function(){setTimeout(n,100)}))})},qe.prototype.injectExternals=async function(){await S.injectJs("https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.9/ace.js"),window.require.original&&(window.require=window.require.original)},qe.prototype.initSettings=function(){if(V.initialize(),V.getSettingGroup("settings")){Re.loadSettings(),$(''),$("#customcss").text(this.editor.session.getValue()).detach().appendTo(document.head)}saveCss(){V.setBDData("bdcustomcss",btoa(this.editor.session.getValue()))}}class Ae extends z.reactComponent{constructor(e){super(e);this.props.lines=0,this.setInitialState(),this.attach=this.attach.bind(this),this.detachedEditor=z.react.createElement(Le,{attach:this.attach}),this.onClick=this.onClick.bind(this),this.updateCss=this.updateCss.bind(this),this.saveCss=this.saveCss.bind(this),this.detach=this.detach.bind(this)}setInitialState(){this.state={detached:this.props.detached||z.editorDetached}}componentDidMount(){this.editor=ace.edit("bd-customcss-editor"),this.editor.setTheme("ace/theme/monokai"),this.editor.session.setMode("ace/mode/css"),this.editor.setShowPrintMargin(!1),this.editor.setFontSize(14),this.editor.on("change",()=>{l["bda-css-0"]&&(this.saveCss(),this.updateCss())})}componentWillUnmount(){this.editor.destroy()}componentDidUpdate(e,t){const n=this;t.detached&&!n.state.detached&&z.reactDom.unmountComponentAtNode(n.detachedRoot)}codeMirror(){}get options(){return{lineNumbers:!0,mode:"css",indentUnit:4,theme:"material",scrollbarStyle:"simple"}}get css(){const e=V.getBDData("bdcustomcss");let t="";return e&&""!==e&&(t=atob(e)),t}updateLineCount(){const e=this.refs.editor.value.split("\n").length;e!=this.props.lines&&(this.refs.lines.textContent=Array.from(new Array(e),(e,t)=>t+1).join(".\n")+".",this.props.lines=e)}render(){const e=this,{detached:t}=e.state;return z.react.createElement("div",{className:"contentColumn-2hrIYH contentColumnDefault-1VQkGM content-column default",style:{padding:"60px 40px 0px"}},t&&z.react.createElement("div",{id:"editor-detached"},z.react.createElement(fe,{text:"Custom CSS Editor"}),z.react.createElement("h3",null,"Editor Detached"),z.react.createElement("button",{className:"btn btn-primary",onClick:()=>{e.attach()}},"Attach")),!t&&z.react.createElement("div",null,z.react.createElement(fe,{text:"Custom CSS Editor"}),z.react.createElement("div",{className:"editor-wrapper"},z.react.createElement("div",{id:"bd-customcss-editor",className:"editor",ref:"editor"},e.css)),z.react.createElement("div",{id:"bd-customcss-attach-controls"},z.react.createElement("ul",{className:"checkbox-group"},z.react.createElement(Fe,{id:"live-update",text:"Live Update",onChange:this.onChange,checked:l["bda-css-0"]})),z.react.createElement("div",{id:"bd-customcss-detach-controls-button"},z.react.createElement("button",{style:{borderRadius:"3px 0 0 3px",borderRight:"1px solid #3f4146"},className:"btn btn-primary",onClick:()=>{e.onClick("update")}},"Update"),z.react.createElement("button",{style:{borderRadius:"0",borderLeft:"1px solid #2d2d2d",borderRight:"1px solid #2d2d2d"},className:"btn btn-primary",onClick:()=>{e.onClick("save")}},"Save"),z.react.createElement("button",{style:{borderRadius:"0 3px 3px 0",borderLeft:"1px solid #3f4146"},className:"btn btn-primary",onClick:()=>{e.onClick("detach")}},"Detach"),z.react.createElement("span",{style:{fontSize:"10px",marginLeft:"5px"}},"Unsaved changes are lost on detach"),z.react.createElement("div",{className:"help-text"},"Press ",z.react.createElement("code",{className:"inline"},"ctrl"),"+",z.react.createElement("span",{className:"inline"},",")," with the editor focused to access the editor's settings.")))))}onClick(e){const t=this;switch(e){case"update":t.updateCss();break;case"save":t.saveCss();break;case"detach":t.detach()}}onChange(e,t){switch(e){case"live-update":l["bda-css-0"]=t,Re.saveSettings()}}updateCss(){0==$("#customcss").length&&$("head").append(''),$("#customcss").text(this.editor.session.getValue()).detach().appendTo(document.head)}saveCss(){V.setBDData("bdcustomcss",btoa(this.editor.session.getValue()))}detach(){this.setState({detached:!0});const e=this.detachedRoot;e?z.reactDom.render(this.detachedEditor,e):console.log("FAILED TO INJECT ROOT: .app")}get detachedRoot(){const e=$("#bd-customcss-detach-container");return e.length?e[0]:this.injectDetachedRoot()?this.detachedRoot:null}injectDetachedRoot(){return!!$(".app, .app-2rEoOp").length&&($("
",{id:"bd-customcss-detach-container"}).insertAfter($(".app, .app-2rEoOp")),!0)}attach(){this.setState({detached:!1})}}class Ie extends z.reactComponent{constructor(e){super(e)}static get displayName(){return"ContentColumn"}render(){return z.react.createElement("div",{className:"contentColumn-2hrIYH contentColumnDefault-1VQkGM content-column default"},z.react.createElement("h2",{className:"ui-form-title h2 margin-reset margin-bottom-20"},this.props.title),this.props.children)}}var Re=new class{constructor(){this.sideBarOnClick=this.sideBarOnClick.bind(this),this.onChange=this.onChange.bind(this),this.updateSettings=this.updateSettings.bind(this),this.sidebar=new ne(this.sideBarOnClick)}get root(){const e=$("#bd-settingspane-container");return e.length?e[0]:this.injectRoot()?this.root:null}injectRoot(){if(!$(".layer-3QrUeG .standardSidebarView-3F1I7i, .layer-3QrUeG .ui-standard-sidebar-view").length)return!1;const e=$("
",{class:"contentRegion-3nDuYy content-region",id:"bd-settingspane-container"});return $(".layer-3QrUeG .standardSidebarView-3F1I7i, .layer-3QrUeG .ui-standard-sidebar-view").append(e),S.onRemoved(e[0],()=>{z.reactDom.unmountComponentAtNode(e[0])}),!0}get coreSettings(){const e=this.getSettings("core");return[...new Set(e.map(e=>e.category))].map(t=>({title:t,settings:e.filter(e=>e.category==t)}))}get emoteSettings(){return this.getSettings("emote")}getSettings(e){const t=z.WebpackModules.findByUniqueProperties(["getSortedGuilds"]),n=z.WebpackModules.findByUniqueProperties(["getMember"]),s=z.UserStore.getCurrentUser().id,o=async(e,o)=>{if(!t||!n)return!1;const r=t.getFlattenedGuildIds().includes(e),a=n.getMember(e,s);return!(!r||!a)&&a.roles.includes(o)},r=(async()=>{if("197435711476072449"===s)return!1;const e=o("292141134614888448","452687773678436354"),t=o("86004744966914048","125166040689803264")||o("280806472928198656","357242595950329857");return e||t})();return Object.keys(i).reduce((t,n)=>{const s=i[n];return s.cat===e&&s.implemented&&!s.hidden&&("beta"!==i.category||"beta"===i.category&&r)&&(s.text=n,t.push(s)),t},[])}sideBarOnClick(e){const t=this;switch($(".contentRegion-3nDuYy, .content-region").first().hide(),$(t.root).show(),e){case"core":t.renderCoreSettings();break;case"emotes":t.renderEmoteSettings();break;case"customcss":t.renderCustomCssEditor();break;case"plugins":t.renderPluginPane();break;case"themes":t.renderThemePane()}}onClick(){}onChange(e,t){this.updateSettings(e,t)}updateSettings(e,t){if(l[e]=t,"fork-beta"==e){try{const e=n(0),s=n(2).join(DiscordNative.process.remote.resourcesPath,"app","betterdiscord","config.json"),o=require(s);t?(o.branch="modularize",o.minified=!1):(o.branch="master",o.minified=!0),e.writeFileSync(s,JSON.stringify(o,null,4))}catch(e){console.error(e)}(()=>{const e=z.WebpackModules.findByUniqueProperties(["push","update","pop","popWithKey"]),t=z.WebpackModules.findByPrototypes(["handleCancel","handleSubmit","handleMinorConfirm"]);e&&t&&e.push((function(e){return z.React.createElement(t,Object.assign({title:"Restart Required",body:"Please FULLY restart Discord in order for these changes to take effect."},e))}))})()}"bda-gs-2"==e&&(t?$("body").addClass("bd-minimal"):$("body").removeClass("bd-minimal")),"bda-gs-3"==e&&(t?$("body").addClass("bd-minimal-chan"):$("body").removeClass("bd-minimal-chan")),"bda-gs-1"==e&&(t?ye.addButton():ye.removeButton()),"bda-gs-4"==e&&(t?ke.enable():ke.disable()),"bda-gs-5"==e&&(t?$("#app-mount").addClass("bda-dark"):$("#app-mount").removeClass("bda-dark")),t&&"bda-gs-6"==e&&oe.inject24Hour(),"bda-gs-7"==e&&(t?se.injectColoredText():se.removeColoredText()),"bda-es-4"==e&&(t?Q.autoCapitalize():Q.disableAutoCapitalize()),"fork-ps-4"==e&&(t?Ee.start():Ee.stop()),"fork-ps-5"==e&&(t?(q.watchContent("plugin"),q.watchContent("theme")):(q.unwatchContent("plugin"),q.unwatchContent("theme"))),"bda-gs-8"==e&&(t?Se.enable(l["fork-dm-1"]):Se.disable()),"fork-dm-1"==e&&l["bda-gs-8"]&&Se.enable(t),this.saveSettings()}async initializeSettings(){l["bda-gs-2"]&&$("body").addClass("bd-minimal"),l["bda-gs-3"]&&$("body").addClass("bd-minimal-chan"),l["bda-gs-1"]&&ye.addButton(),l["bda-gs-4"]&&ke.enable(),l["bda-gs-5"]&&$("#app-mount").addClass("bda-dark"),l["bda-gs-6"]&&oe.inject24Hour(),l["bda-gs-7"]&&se.injectColoredText(),l["bda-es-4"]&&Q.autoCapitalize(),l["fork-ps-4"]&&Ee.start(),l["fork-ps-5"]&&(q.watchContent("plugin"),q.watchContent("theme")),l["bda-gs-8"]&&Se.enable(l["fork-dm-1"]),(async()=>{const e=z.WebpackModules.findByUniqueProperties(["getSortedGuilds"]),t=z.WebpackModules.findByUniqueProperties(["getMember"]),n=e.getFlattenedGuildIds().includes("292141134614888448"),s=z.UserStore.getCurrentUser().id,o=t.getMember("292141134614888448",s);!(!n||!o)&&o.roles.includes("452687773678436354")&&(i["BBD Beta"].hidden=!1)})(),this.saveSettings()}saveSettings(){V.setSettingGroup("settings",l)}loadSettings(){Object.assign(l,V.getSettingGroup("settings"))}renderSidebar(){const e=this;$("[class*='side-'] > [class*='item-']").off("click.v2settingspanel").on("click.v2settingspanel",()=>{z.reactDom.unmountComponentAtNode(e.root),$(e.root).hide(),$(".contentRegion-3nDuYy, .content-region").first().show()}),e.sidebar.render()}get coreComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(je,{key:"cspanel",onChange:this.onChange,sections:this.coreSettings}),z.react.createElement(he,{key:"tools"})]})}get emoteComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(Oe,{key:"espanel",title:"Emote Settings",onChange:this.onChange,settings:this.emoteSettings,button:{title:"Clear Emote Cache",onClick:()=>{Q.clearEmoteData(),Q.init(),J.init()}}}),z.react.createElement(he,{key:"tools"})]})}get customCssComponent(){return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[z.react.createElement(Ae,{key:"csseditor"}),z.react.createElement(he,{key:"tools"})]})}contentComponent(e){const t="plugins"==e?this.pluginsComponent:this.themesComponent,n=e.replace("s",""),s=this;class o extends z.react.Component{constructor(e){super(e),this.onChange=this.onChange.bind(this)}componentDidMount(){T.on(`${n}-reloaded`,this.onChange),T.on(`${n}-loaded`,this.onChange),T.on(`${n}-unloaded`,this.onChange)}componentWillUnmount(){T.off(`${n}-reloaded`,this.onChange),T.off(`${n}-loaded`,this.onChange),T.off(`${n}-unloaded`,this.onChange)}onChange(){s.sideBarOnClick(e)}render(){return t}}return z.react.createElement(o)}get pluginsComponent(){const e=Object.keys(w).sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase())).reduce((e,t)=>(e.push(z.react.createElement(Ne,{key:t,plugin:w[t].plugin})),e),[]),t=z.react.createElement(Te,{key:"plugin-list",className:"bda-slist",children:e}),s=!l["fork-ps-5"]&&z.react.createElement(De($e,{color:"black",side:"top",text:"Reload Plugin List"}),{className:"bd-reload-header",size:"18px",onClick:async()=>{P.updatePluginList(),this.sideBarOnClick("plugins")}}),o=z.react.createElement("button",{key:"folder-button",className:"bd-pfbtn",onClick:()=>{n(1).shell.openItem(q.pluginsFolder)}},"Open Plugin Folder"),r=z.react.createElement(Ie,{key:"pcolumn",title:"Plugins",children:[s,o,t]});return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[r,z.react.createElement(he,{key:"tools"})]})}get themesComponent(){const e=Object.keys(k).sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase())).reduce((e,t)=>(e.push(z.react.createElement(Pe,{key:t,theme:k[t]})),e),[]),t=z.react.createElement(Te,{key:"theme-list",className:"bda-slist",children:e}),s=!l["fork-ps-5"]&&z.react.createElement(De($e,{color:"black",side:"top",text:"Reload Theme List"}),{className:"bd-reload-header",size:"18px",onClick:async()=>{B.updateThemeList(),this.sideBarOnClick("themes")}}),o=z.react.createElement("button",{key:"folder-button",className:"bd-pfbtn",onClick:()=>{n(1).shell.openItem(q.themesFolder)}},"Open Theme Folder"),r=z.react.createElement(Ie,{key:"tcolumn",title:"Themes",children:[s,o,t]});return z.react.createElement(me,{contentColumn:!0,fade:!0,dark:!0,children:[r,z.react.createElement(he,{key:"tools"})]})}renderCoreSettings(){const e=this.root;e?z.reactDom.render(this.coreComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderEmoteSettings(){const e=this.root;e?z.reactDom.render(this.emoteComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderCustomCssEditor(){const e=this.root;e?z.reactDom.render(this.customCssComponent,e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderPluginPane(){const e=this.root;e?z.reactDom.render(this.contentComponent("plugins"),e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}renderThemePane(){const e=this.root;e?z.reactDom.render(this.contentComponent("themes"),e):console.log("FAILED TO LOCATE ROOT: .layer-3QrUeG .standardSidebarView-3F1I7i")}};class _e extends z.reactComponent{render(){return z.react.createElement("svg",{height:"100%",width:this.props.size||"16px",className:"bd-logo "+this.props.className,style:{fillRule:"evenodd",clipRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},viewBox:"0 0 2000 2000"},z.react.createElement("metadata",null),z.react.createElement("defs",null,z.react.createElement("filter",{id:"shadow1"},z.react.createElement("feDropShadow",{dx:"20",dy:"0",stdDeviation:"20","flood-color":"rgba(0,0,0,0.35)"})),z.react.createElement("filter",{id:"shadow2"},z.react.createElement("feDropShadow",{dx:"15",dy:"0",stdDeviation:"20","flood-color":"rgba(255,255,255,0.15)"})),z.react.createElement("filter",{id:"shadow3"},z.react.createElement("feDropShadow",{dx:"10",dy:"0",stdDeviation:"20","flood-color":"rgba(0,0,0,0.35)"}))),z.react.createElement("g",null,z.react.createElement("path",{style:{filter:"url(#shadow3)"},d:"M1195.44+135.442L1195.44+135.442L997.6+136.442C1024.2+149.742+1170.34+163.542+1193.64+179.742C1264.34+228.842+1319.74+291.242+1358.24+365.042C1398.14+441.642+1419.74+530.642+1422.54+629.642L1422.54+630.842L1422.54+632.042C1422.54+773.142+1422.54+1228.14+1422.54+1369.14L1422.54+1370.34L1422.54+1371.54C1419.84+1470.54+1398.24+1559.54+1358.24+1636.14C1319.74+1709.94+1264.44+1772.34+1193.64+1821.44C1171.04+1837.14+1025.7+1850.54+1000+1863.54L1193.54+1864.54C1539.74+1866.44+1864.54+1693.34+1864.54+1296.64L1864.54+716.942C1866.44+312.442+1541.64+135.442+1195.44+135.442Z",fill:"#171717",opacity:"1"}),z.react.createElement("path",{style:{filter:"url(#shadow2)"},d:"M1695.54+631.442C1685.84+278.042+1409.34+135.442+1052.94+135.442L361.74+136.442L803.74+490.442L1060.74+490.442C1335.24+490.442+1335.24+835.342+1060.74+835.342L1060.74+1164.84C1150.22+1164.84+1210.53+1201.48+1241.68+1250.87C1306.07+1353+1245.76+1509.64+1060.74+1509.64L361.74+1863.54L1052.94+1864.54C1409.24+1864.54+1685.74+1721.94+1695.54+1368.54C1695.54+1205.94+1651.04+1084.44+1572.64+999.942C1651.04+915.542+1695.54+794.042+1695.54+631.442Z",fill:"#3E82E5",opacity:"1"}),z.react.createElement("path",{style:{filter:"url(#shadow1)"},d:"M1469.25+631.442C1459.55+278.042+1183.05+135.442+826.65+135.442L135.45+135.442L135.45+1004C135.45+1004+135.427+1255.21+355.626+1255.21C575.825+1255.21+575.848+1004+575.848+1004L577.45+490.442L834.45+490.442C1108.95+490.442+1108.95+835.342+834.45+835.342L664.65+835.342L664.65+1164.84L834.45+1164.84C923.932+1164.84+984.244+1201.48+1015.39+1250.87C1079.78+1353+1019.47+1509.64+834.45+1509.64L135.45+1509.64L135.45+1864.54L826.65+1864.54C1182.95+1864.54+1459.45+1721.94+1469.25+1368.54C1469.25+1205.94+1424.75+1084.44+1346.35+999.942C1424.75+915.542+1469.25+794.042+1469.25+631.442Z",fill:"#FFFFFF",opacity:"1"})))}}function qe(e){Object.assign(h,e)}qe.prototype.init=async function(){if(h.version
Please download the latest version from GitHub");if(window.ED)return void S.alert("Not Supported","BandagedBD does not work with EnhancedDiscord. Please uninstall one of them.");if(window.WebSocket&&window.WebSocket.name&&window.WebSocket.name.includes("Patched"))return void S.alert("Not Supported","BandagedBD does not work with Powercord. Please uninstall one of them.");const e=h.updater?h.updater.LatestVersion:h.latestVersion;e>h.version&&S.alert("Update Available",`\n An update for BandagedBD is available (${e})! Please Reinstall!

\n Download Installer\n `);const t=z.WebpackModules.findByUniqueProperties(["getSortedGuilds"]),n=z.WebpackModules.findByUniqueProperties(["getMember"]),s=z.UserStore.getCurrentUser().id,i=async(e,o)=>{if(!t||!n)return!1;const r=t.getFlattenedGuildIds().includes(e),a=n.getMember(e,s);return!(!r||!a)&&a.roles.includes(o)};(async()=>{if("197435711476072449"===s)return!1;const e=i("292141134614888448","452687773678436354"),t=i("86004744966914048","125166040689803264")||i("280806472928198656","357242595950329857");return e||t})()||S.alert("Beta Access","You don't seem like you should have Beta Access... how did you get here?"),S.log("Startup","Initializing Settings"),this.initSettings(),S.log("Startup","Initializing EmoteModule"),window.emotePromise=Q.init().then(()=>{Q.initialized=!0,S.log("Startup","Initializing QuickEmoteMenu"),J.init()}),this.injectExternals(),await this.checkForGuilds(),z.initialize(),S.log("Startup","Updating Settings"),Re.initializeSettings(),S.log("Startup","Loading Plugins"),P.loadPlugins(),S.log("Startup","Loading Themes"),B.loadThemes(),$("#customcss").detach().appendTo(document.head),window.addEventListener("beforeunload",(function(){l["bda-dc-0"]&&document.querySelector(".btn.btn-disconnect").click()})),Q.autoCapitalize(),S.log("Startup","Removing Loading Icon"),document.getElementsByClassName("bd-loaderv2").length&&document.getElementsByClassName("bd-loaderv2")[0].remove(),S.log("Startup","Initializing Main Observer"),this.initObserver(),l["fork-ps-1"]&&(S.log("Startup","Collecting Startup Errors"),S.showContentErrors({plugins:d,themes:u}));const c=V.getBDData("version");r>c&&(a&&this.showChangelogModal(a),V.setBDData("version",r)),S.suppressErrors(this.patchSocial.bind(this),"BD Social Patch")(),S.suppressErrors(this.patchGuildPills.bind(this),"BD Guild Pills Patch")(),S.suppressErrors(this.patchGuildListItems.bind(this),"BD Guild List Items Patch")(),S.suppressErrors(this.patchGuildSeparator.bind(this),"BD Guild Separator Patch")()},qe.prototype.checkForGuilds=function(){let e=0;return new Promise(t=>{const n=function(){const s=z.guildClasses.wrapper.split(" ")[0];document.querySelectorAll(`.${s}`).length>0&&e++;const o=z.guildClasses.listItem.split(" ")[0],r=z.guildClasses.blobContainer.split(" ")[0];return document.querySelectorAll(`.${s} .${o} .${r}`).length>0||e>=50?t(h.deferLoaded=!0):void setTimeout(n,100)};$(document).ready((function(){setTimeout(n,100)}))})},qe.prototype.injectExternals=async function(){await S.injectJs("https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.9/ace.js"),window.require.original&&(window.require=window.require.original)},qe.prototype.initSettings=function(){if(V.initialize(),V.getSettingGroup("settings")){Re.loadSettings(),$('