{"code":"(window.webpackJsonpGUI=window.webpackJsonpGUI||[]).push([[47],{1568:function(e,t,o){\"use strict\";o.r(t),o.d(t,\"resources\",(function(){return r}));const r={\"userscript.js\":async function(e){let{addon:t,console:o}=e;const r=Object.assign(Object.create(null),{upload:{index:0,tooltip:\"gui.spriteSelector.addSpriteFromFile\"},surprise:{index:1,tooltip:\"gui.spriteSelector.addSpriteFromSurprise\"},paint:{index:2,tooltip:\"gui.spriteSelector.addSpriteFromPaint\"},library:{index:3,tooltip:\"gui.spriteSelector.addSpriteFromLibrary\"}}),i=Object.assign(Object.create(null),{upload:{index:0,tooltip:\"gui.stageSelector.addBackdropFromFile\"},surprise:{index:1,tooltip:\"gui.stageSelector.addBackdropFromSurprise\"},paint:{index:2,tooltip:\"gui.stageSelector.addBackdropFromPaint\"},library:{index:3,tooltip:\"gui.spriteSelector.addBackdropFromLibrary\"}}),s=Object.assign(Object.create(null),{upload:{index:0,tooltip:\"gui.costumeTab.addFileCostume\"},surprise:{index:1,tooltip:\"gui.costumeTab.addSurpriseCostume\"},paint:{index:2,tooltip:\"gui.costumeTab.addBlankCostume\"},library:{index:3,tooltip:\"gui.costumeTab.addCostumeFromLibrary\"}}),a=Object.assign(Object.create(null),{upload:{index:0,tooltip:\"gui.soundTab.fileUploadSound\"},surprise:{index:1,tooltip:\"gui.soundTab.surpriseSound\"},record:{index:2,tooltip:\"gui.soundTab.recordSound\"},library:{index:3,tooltip:\"gui.soundTab.addSoundFromLibrary\"}}),n=e=>t.self.disabled?\"library\":t.settings.get(e),d=e=>e.closest(\"[class*=asset-panel_wrapper_]\")?2===t.tab.redux.state.scratchGui.editorTab.activeTabIndex?a[n(\"sound\")]||a.library:s[n(\"costume\")]||s.library:e.closest('[class*=\"target-pane_stage-selector-wrapper\"]')?i[n(\"backdrop\")]||i.library:r[n(\"sprite\")]||r.library;document.body.addEventListener(\"click\",(e=>{if(t.self.disabled)return;const o=e.target.closest('[class*=\"action-menu_main-button_\"]');if(!o)return;e.stopPropagation();const r=o.parentElement.querySelector('[class*=\"action-menu_more-buttons_\"]').children,{index:i}=d(o);r[r.length-(4-i)].querySelector(\"button\").click()}),{bubble:!0}),document.body.addEventListener(\"mouseover\",(e=>{const o=e.target.closest('[class*=\"action-menu_main-button_\"]');if(!o)return;const r=o.parentElement.querySelector(\".__react_component_tooltip\"),{tooltip:i}=d(o),s=t.tab.redux.state.locales.messages[i];s&&r.textContent!==s&&(r.textContent=s,setTimeout((()=>{r.textContent=s,o.dispatchEvent(new Event(\"mouseenter\"))})))}),{bubble:!0})}}}}]);","name":"js/pentapod/addon-entry-paint-by-default.e4ac0b6084fd1b4ddd97.js","input":"(window[\"webpackJsonpGUI\"] = window[\"webpackJsonpGUI\"] || []).push([[47],{\n\n/***/ 1568:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, \"resources\", function() { return /* binding */ resources; });\n\n// CONCATENATED MODULE: ./src/addons/addons/paint-by-default/userscript.js\n/* harmony default export */ var userscript = (async function (_ref) {\n let {\n addon,\n console\n } = _ref;\n const spriteMeta = Object.assign(Object.create(null), {\n upload: {\n index: 0,\n tooltip: \"gui.spriteSelector.addSpriteFromFile\"\n },\n surprise: {\n index: 1,\n tooltip: \"gui.spriteSelector.addSpriteFromSurprise\"\n },\n paint: {\n index: 2,\n tooltip: \"gui.spriteSelector.addSpriteFromPaint\"\n },\n library: {\n index: 3,\n tooltip: \"gui.spriteSelector.addSpriteFromLibrary\"\n }\n });\n const backdropMeta = Object.assign(Object.create(null), {\n upload: {\n index: 0,\n tooltip: \"gui.stageSelector.addBackdropFromFile\"\n },\n surprise: {\n index: 1,\n tooltip: \"gui.stageSelector.addBackdropFromSurprise\"\n },\n paint: {\n index: 2,\n tooltip: \"gui.stageSelector.addBackdropFromPaint\"\n },\n library: {\n index: 3,\n tooltip: \"gui.spriteSelector.addBackdropFromLibrary\"\n }\n });\n const costumeMeta = Object.assign(Object.create(null), {\n upload: {\n index: 0,\n tooltip: \"gui.costumeTab.addFileCostume\"\n },\n surprise: {\n index: 1,\n tooltip: \"gui.costumeTab.addSurpriseCostume\"\n },\n paint: {\n index: 2,\n tooltip: \"gui.costumeTab.addBlankCostume\"\n },\n library: {\n index: 3,\n tooltip: \"gui.costumeTab.addCostumeFromLibrary\"\n }\n });\n const soundMeta = Object.assign(Object.create(null), {\n upload: {\n index: 0,\n tooltip: \"gui.soundTab.fileUploadSound\"\n },\n surprise: {\n index: 1,\n tooltip: \"gui.soundTab.surpriseSound\"\n },\n record: {\n index: 2,\n tooltip: \"gui.soundTab.recordSound\"\n },\n library: {\n index: 3,\n tooltip: \"gui.soundTab.addSoundFromLibrary\"\n }\n });\n const getSetting = id => {\n if (addon.self.disabled) {\n return \"library\";\n }\n return addon.settings.get(id);\n };\n const getButtonToClick = mainButton => {\n const assetPanelWrapper = mainButton.closest(\"[class*=asset-panel_wrapper_]\");\n if (assetPanelWrapper) {\n if (addon.tab.redux.state.scratchGui.editorTab.activeTabIndex === 2) {\n return soundMeta[getSetting(\"sound\")] || soundMeta.library;\n } else {\n return costumeMeta[getSetting(\"costume\")] || costumeMeta.library;\n }\n } else if (mainButton.closest('[class*=\"target-pane_stage-selector-wrapper\"]')) {\n return backdropMeta[getSetting(\"backdrop\")] || backdropMeta.library;\n } else {\n return spriteMeta[getSetting(\"sprite\")] || spriteMeta.library;\n }\n };\n document.body.addEventListener(\"click\", e => {\n if (addon.self.disabled) {\n return;\n }\n const mainButton = e.target.closest('[class*=\"action-menu_main-button_\"]');\n if (!mainButton) {\n return;\n }\n e.stopPropagation();\n const moreButtonsElement = mainButton.parentElement.querySelector('[class*=\"action-menu_more-buttons_\"]');\n const moreButtons = moreButtonsElement.children;\n const {\n index\n } = getButtonToClick(mainButton);\n // better-img-uploads can add a button at the start, so search \"from the end\" for compatibility\n const buttonToClick = moreButtons[moreButtons.length - (4 - index)];\n const elementToClick = buttonToClick.querySelector(\"button\");\n elementToClick.click();\n }, {\n bubble: true\n });\n document.body.addEventListener(\"mouseover\", e => {\n const mainButton = e.target.closest('[class*=\"action-menu_main-button_\"]');\n if (!mainButton) {\n return;\n }\n const tooltipElement = mainButton.parentElement.querySelector(\".__react_component_tooltip\");\n const {\n tooltip\n } = getButtonToClick(mainButton);\n const translatedTooltip = addon.tab.redux.state.locales.messages[tooltip];\n const needToFixTooltipText = translatedTooltip && tooltipElement.textContent !== translatedTooltip;\n if (needToFixTooltipText) {\n tooltipElement.textContent = translatedTooltip;\n setTimeout(() => {\n tooltipElement.textContent = translatedTooltip;\n mainButton.dispatchEvent(new Event(\"mouseenter\"));\n });\n }\n }, {\n bubble: true\n });\n});\n// CONCATENATED MODULE: ./src/addons/addons/paint-by-default/_runtime_entry.js\n/* generated by pull.js */\n\nconst resources = {\n \"userscript.js\": userscript\n};\n\n/***/ })\n\n}]);","inputSourceMap":null}