From 587714d094679dca412f18da224ce43c4ff147ba Mon Sep 17 00:00:00 2001 From: Thomas Weber Date: Sun, 9 May 2021 20:24:47 -0500 Subject: [PATCH] I don't know how to feel about this --- .eslintignore | 4 +- src/addons/addons/2d-color-picker/addon.json | 19 +- src/addons/addons/2d-color-picker/l10n.js | 18 ++ .../2d-color-picker/l10n/de.json} | 0 .../2d-color-picker/l10n/en.json} | 0 .../2d-color-picker/l10n/es.json} | 0 .../2d-color-picker/l10n/fr.json} | 0 .../2d-color-picker/l10n/it.json} | 0 .../2d-color-picker/l10n/ja.json} | 0 .../2d-color-picker/l10n/ko.json} | 0 .../2d-color-picker/l10n/nl.json} | 0 .../2d-color-picker/l10n/pl.json} | 0 .../2d-color-picker/l10n/pt-br.json} | 0 .../2d-color-picker/l10n/ro.json} | 0 .../2d-color-picker/l10n/ru.json} | 0 .../2d-color-picker/l10n/sl.json} | 0 .../2d-color-picker/l10n/sv.json} | 0 .../2d-color-picker/l10n/tr.json} | 0 src/addons/addons/2d-color-picker/run.js | 9 + src/addons/addons/bitmap-copy/addon.json | 20 ++- src/addons/addons/bitmap-copy/l10n.js | 13 ++ .../bitmap-copy/l10n/de.json} | 0 .../bitmap-copy/l10n/es.json} | 0 .../bitmap-copy/l10n/fr.json} | 0 .../bitmap-copy/l10n/it.json} | 0 .../bitmap-copy/l10n/ja.json} | 0 .../bitmap-copy/l10n/pl.json} | 0 .../bitmap-copy/l10n/pt-br.json} | 0 .../bitmap-copy/l10n/ro.json} | 0 .../bitmap-copy/l10n/sl.json} | 0 .../bitmap-copy/l10n/tr.json} | 0 src/addons/addons/bitmap-copy/run.js | 8 + .../addons/block-palette-icons/addon.json | 25 ++- src/addons/addons/block-palette-icons/l10n.js | 17 ++ .../block-palette-icons/l10n/ar.json} | 0 .../block-palette-icons/l10n/de.json} | 0 .../block-palette-icons/l10n/es.json} | 0 .../block-palette-icons/l10n/fr.json} | 0 .../block-palette-icons/l10n/it.json} | 0 .../block-palette-icons/l10n/ja.json} | 0 .../block-palette-icons/l10n/ko.json} | 0 .../block-palette-icons/l10n/pl.json} | 0 .../block-palette-icons/l10n/pt-br.json} | 0 .../block-palette-icons/l10n/ro.json} | 0 .../block-palette-icons/l10n/ru.json} | 0 .../block-palette-icons/l10n/sl.json} | 0 .../block-palette-icons/l10n/sv.json} | 0 .../block-palette-icons/l10n/tr.json} | 0 src/addons/addons/block-palette-icons/run.js | 8 + src/addons/addons/block-switching/addon.json | 16 +- src/addons/addons/block-switching/l10n.js | 17 ++ .../block-switching/l10n/de.json} | 0 .../block-switching/l10n/en.json} | 0 .../block-switching/l10n/es.json} | 0 .../block-switching/l10n/fr.json} | 0 .../block-switching/l10n/it.json} | 0 .../block-switching/l10n/ja.json} | 0 .../block-switching/l10n/ko.json} | 0 .../block-switching/l10n/nl.json} | 0 .../block-switching/l10n/pl.json} | 0 .../block-switching/l10n/pt-br.json} | 0 .../block-switching/l10n/ro.json} | 0 .../block-switching/l10n/ru.json} | 0 .../block-switching/l10n/sl.json} | 0 .../block-switching/l10n/tr.json} | 0 src/addons/addons/block-switching/run.js | 8 + src/addons/addons/blocks2image/addon.json | 14 +- src/addons/addons/blocks2image/l10n.js | 17 ++ .../blocks2image/l10n/de.json} | 0 .../blocks2image/l10n/en.json} | 0 .../blocks2image/l10n/es.json} | 0 .../blocks2image/l10n/fr.json} | 0 .../blocks2image/l10n/it.json} | 0 .../blocks2image/l10n/ja.json} | 0 .../blocks2image/l10n/ko.json} | 0 .../blocks2image/l10n/pl.json} | 0 .../blocks2image/l10n/pt-br.json} | 0 .../blocks2image/l10n/ro.json} | 0 .../blocks2image/l10n/ru.json} | 0 .../blocks2image/l10n/sl.json} | 0 .../blocks2image/l10n/sv.json} | 0 .../blocks2image/l10n/tr.json} | 0 src/addons/addons/blocks2image/run.js | 8 + src/addons/addons/cat-blocks/addon.json | 16 +- src/addons/addons/cat-blocks/l10n.js | 14 ++ .../cat-blocks/l10n/de.json} | 0 .../cat-blocks/l10n/es.json} | 0 .../cat-blocks/l10n/fr.json} | 0 .../cat-blocks/l10n/it.json} | 0 .../cat-blocks/l10n/ja.json} | 0 .../cat-blocks/l10n/ko.json} | 0 .../cat-blocks/l10n/pl.json} | 0 .../cat-blocks/l10n/pt-br.json} | 0 .../cat-blocks/l10n/ro.json} | 0 .../cat-blocks/l10n/sl.json} | 0 .../cat-blocks/l10n/tr.json} | 0 src/addons/addons/cat-blocks/run.js | 8 + src/addons/addons/clones/addon.json | 20 ++- src/addons/addons/clones/l10n.js | 17 ++ .../clones/l10n/de.json} | 0 .../clones/l10n/en.json} | 0 .../clones/l10n/es.json} | 0 .../clones/l10n/fr.json} | 0 .../clones/l10n/it.json} | 0 .../clones/l10n/ja.json} | 0 .../clones/l10n/ko.json} | 0 .../clones/l10n/pl.json} | 0 .../clones/l10n/pt-br.json} | 0 .../clones/l10n/ro.json} | 0 .../clones/l10n/ru.json} | 0 .../clones/l10n/sl.json} | 0 .../clones/l10n/th.json} | 0 .../clones/l10n/tr.json} | 0 src/addons/addons/clones/run.js | 9 + src/addons/addons/color-picker/addon.json | 20 ++- src/addons/addons/color-picker/l10n.js | 16 ++ .../color-picker/l10n/de.json} | 0 .../color-picker/l10n/en.json} | 0 .../color-picker/l10n/es.json} | 0 .../color-picker/l10n/fr.json} | 0 .../color-picker/l10n/it.json} | 0 .../color-picker/l10n/ja.json} | 0 .../color-picker/l10n/ko.json} | 0 .../color-picker/l10n/pl.json} | 0 .../color-picker/l10n/pt-br.json} | 0 .../color-picker/l10n/ro.json} | 0 .../color-picker/l10n/ru.json} | 0 .../color-picker/l10n/sl.json} | 0 .../color-picker/l10n/tr.json} | 0 src/addons/addons/color-picker/run.js | 9 + .../addons/custom-block-shape/addon.json | 16 +- src/addons/addons/custom-block-shape/l10n.js | 17 ++ .../custom-block-shape/l10n/de.json} | 0 .../custom-block-shape/l10n/es.json} | 0 .../custom-block-shape/l10n/fr.json} | 0 .../custom-block-shape/l10n/it.json} | 0 .../custom-block-shape/l10n/ja.json} | 0 .../custom-block-shape/l10n/ko.json} | 0 .../custom-block-shape/l10n/nl.json} | 0 .../custom-block-shape/l10n/pl.json} | 0 .../custom-block-shape/l10n/pt-br.json} | 0 .../custom-block-shape/l10n/ro.json} | 0 .../custom-block-shape/l10n/ru.json} | 0 .../custom-block-shape/l10n/sl.json} | 0 .../custom-block-shape/l10n/sv.json} | 0 .../custom-block-shape/l10n/tr.json} | 0 src/addons/addons/custom-block-shape/run.js | 8 + src/addons/addons/custom-zoom/addon.json | 18 +- src/addons/addons/custom-zoom/l10n.js | 15 ++ .../custom-zoom/l10n/de.json} | 0 .../custom-zoom/l10n/es.json} | 0 .../custom-zoom/l10n/fr.json} | 0 .../custom-zoom/l10n/it.json} | 0 .../custom-zoom/l10n/ja.json} | 0 .../custom-zoom/l10n/ko.json} | 0 .../custom-zoom/l10n/pl.json} | 0 .../custom-zoom/l10n/pt-br.json} | 0 .../custom-zoom/l10n/ro.json} | 0 .../custom-zoom/l10n/ru.json} | 0 .../custom-zoom/l10n/sl.json} | 0 .../custom-zoom/l10n/sv.json} | 0 src/addons/addons/custom-zoom/run.js | 9 + .../addons/data-category-tweaks-v2/addon.json | 15 +- .../addons/data-category-tweaks-v2/l10n.js | 18 ++ .../data-category-tweaks-v2/l10n/ar.json} | 0 .../data-category-tweaks-v2/l10n/de.json} | 0 .../data-category-tweaks-v2/l10n/en.json} | 0 .../data-category-tweaks-v2/l10n/es.json} | 0 .../data-category-tweaks-v2/l10n/fr.json} | 0 .../data-category-tweaks-v2/l10n/it.json} | 0 .../data-category-tweaks-v2/l10n/ja.json} | 0 .../data-category-tweaks-v2/l10n/ko.json} | 0 .../data-category-tweaks-v2/l10n/nl.json} | 0 .../data-category-tweaks-v2/l10n/pl.json} | 0 .../data-category-tweaks-v2/l10n/pt-br.json} | 0 .../data-category-tweaks-v2/l10n/ro.json} | 0 .../data-category-tweaks-v2/l10n/ru.json} | 0 .../data-category-tweaks-v2/l10n/sl.json} | 0 .../data-category-tweaks-v2/l10n/tr.json} | 0 .../addons/data-category-tweaks-v2/run.js | 8 + src/addons/addons/drag-drop/addon.json | 18 +- src/addons/addons/drag-drop/l10n.js | 16 ++ .../drag-drop/l10n/de.json} | 0 .../drag-drop/l10n/es.json} | 0 .../drag-drop/l10n/fr.json} | 0 .../drag-drop/l10n/it.json} | 0 .../drag-drop/l10n/ja.json} | 0 .../drag-drop/l10n/ko.json} | 0 .../drag-drop/l10n/pl.json} | 0 .../drag-drop/l10n/pt-br.json} | 0 .../drag-drop/l10n/ro.json} | 0 .../drag-drop/l10n/ru.json} | 0 .../drag-drop/l10n/sl.json} | 0 .../drag-drop/l10n/sv.json} | 0 .../drag-drop/l10n/tr.json} | 0 src/addons/addons/drag-drop/run.js | 9 + .../editor-colored-context-menus/addon.json | 22 ++- .../editor-colored-context-menus/l10n.js | 16 ++ .../l10n/de.json} | 0 .../l10n/es.json} | 0 .../l10n/fr.json} | 0 .../l10n/it.json} | 0 .../l10n/ja.json} | 0 .../l10n/ko.json} | 0 .../l10n/pl.json} | 0 .../l10n/pt-br.json} | 0 .../l10n/ro.json} | 0 .../l10n/ru.json} | 0 .../l10n/sl.json} | 0 .../l10n/sv.json} | 0 .../l10n/tr.json} | 0 .../editor-colored-context-menus/run.js | 9 + src/addons/addons/editor-devtools/addon.json | 20 ++- src/addons/addons/editor-devtools/l10n.js | 18 ++ .../editor-devtools/l10n/ar.json} | 0 .../editor-devtools/l10n/de.json} | 0 .../editor-devtools/l10n/en.json} | 0 .../editor-devtools/l10n/es.json} | 0 .../editor-devtools/l10n/fr.json} | 0 .../editor-devtools/l10n/it.json} | 0 .../editor-devtools/l10n/ja.json} | 0 .../editor-devtools/l10n/nl.json} | 0 .../editor-devtools/l10n/pl.json} | 0 .../editor-devtools/l10n/pt-br.json} | 0 .../editor-devtools/l10n/ro.json} | 0 .../editor-devtools/l10n/ru.json} | 0 .../editor-devtools/l10n/sl.json} | 0 .../editor-devtools/l10n/th.json} | 0 .../editor-devtools/l10n/tr.json} | 0 src/addons/addons/editor-devtools/run.js | 9 + .../editor-searchable-dropdowns/addon.json | 21 ++- .../editor-searchable-dropdowns/l10n.js | 15 ++ .../editor-searchable-dropdowns/l10n/de.json} | 0 .../editor-searchable-dropdowns/l10n/es.json} | 0 .../editor-searchable-dropdowns/l10n/fr.json} | 0 .../editor-searchable-dropdowns/l10n/it.json} | 0 .../editor-searchable-dropdowns/l10n/ja.json} | 0 .../editor-searchable-dropdowns/l10n/nl.json} | 0 .../editor-searchable-dropdowns/l10n/pl.json} | 0 .../l10n/pt-br.json} | 0 .../editor-searchable-dropdowns/l10n/ro.json} | 0 .../editor-searchable-dropdowns/l10n/ru.json} | 0 .../editor-searchable-dropdowns/l10n/sl.json} | 0 .../editor-searchable-dropdowns/l10n/tr.json} | 0 .../addons/editor-searchable-dropdowns/run.js | 9 + src/addons/addons/editor-sounds/addon.json | 15 +- src/addons/addons/editor-sounds/l10n.js | 15 ++ .../editor-sounds/l10n/de.json} | 0 .../editor-sounds/l10n/es.json} | 0 .../editor-sounds/l10n/fr.json} | 0 .../editor-sounds/l10n/it.json} | 0 .../editor-sounds/l10n/ja.json} | 0 .../editor-sounds/l10n/ko.json} | 0 .../editor-sounds/l10n/pl.json} | 0 .../editor-sounds/l10n/pt-br.json} | 0 .../editor-sounds/l10n/ro.json} | 0 .../editor-sounds/l10n/ru.json} | 0 .../editor-sounds/l10n/sl.json} | 0 .../editor-sounds/l10n/tr.json} | 0 src/addons/addons/editor-sounds/run.js | 8 + .../addons/editor-stage-left/addon.json | 22 ++- src/addons/addons/editor-stage-left/l10n.js | 16 ++ .../editor-stage-left/l10n/de.json} | 0 .../editor-stage-left/l10n/es.json} | 0 .../editor-stage-left/l10n/fr.json} | 0 .../editor-stage-left/l10n/it.json} | 0 .../editor-stage-left/l10n/ja.json} | 0 .../editor-stage-left/l10n/ko.json} | 0 .../editor-stage-left/l10n/pl.json} | 0 .../editor-stage-left/l10n/pt-br.json} | 0 .../editor-stage-left/l10n/ro.json} | 0 .../editor-stage-left/l10n/ru.json} | 0 .../editor-stage-left/l10n/sl.json} | 0 .../editor-stage-left/l10n/sv.json} | 0 .../editor-stage-left/l10n/tr.json} | 0 src/addons/addons/editor-stage-left/run.js | 9 + src/addons/addons/editor-theme3/addon.json | 24 +-- src/addons/addons/editor-theme3/l10n.js | 18 ++ .../editor-theme3/l10n/ar.json} | 0 .../editor-theme3/l10n/de.json} | 0 .../editor-theme3/l10n/es.json} | 0 .../editor-theme3/l10n/fr.json} | 0 .../editor-theme3/l10n/it.json} | 0 .../editor-theme3/l10n/ja.json} | 0 .../editor-theme3/l10n/ko.json} | 0 .../editor-theme3/l10n/nl.json} | 0 .../editor-theme3/l10n/pl.json} | 0 .../editor-theme3/l10n/pt-br.json} | 0 .../editor-theme3/l10n/ro.json} | 0 .../editor-theme3/l10n/ru.json} | 0 .../editor-theme3/l10n/sl.json} | 0 .../editor-theme3/l10n/sv.json} | 0 .../editor-theme3/l10n/tr.json} | 0 src/addons/addons/editor-theme3/run.js | 9 + src/addons/addons/folders/addon.json | 18 +- src/addons/addons/folders/l10n.js | 19 ++ .../folders/l10n/ar.json} | 0 .../folders/l10n/de.json} | 0 .../folders/l10n/en.json} | 0 .../folders/l10n/es.json} | 0 .../folders/l10n/fr.json} | 0 .../folders/l10n/it.json} | 0 .../folders/l10n/ja.json} | 0 .../folders/l10n/ko.json} | 0 .../folders/l10n/nl.json} | 0 .../folders/l10n/pl.json} | 0 .../folders/l10n/pt-br.json} | 0 .../folders/l10n/ro.json} | 0 .../folders/l10n/ru.json} | 0 .../folders/l10n/sl.json} | 0 .../folders/l10n/sv.json} | 0 .../folders/l10n/tr.json} | 0 src/addons/addons/folders/run.js | 9 + src/addons/addons/gamepad/addon.json | 23 ++- src/addons/addons/gamepad/l10n.js | 16 ++ .../gamepad/l10n/de.json} | 0 .../gamepad/l10n/en.json} | 0 .../gamepad/l10n/es.json} | 0 .../gamepad/l10n/fr.json} | 0 .../gamepad/l10n/it.json} | 0 .../gamepad/l10n/ja.json} | 0 .../gamepad/l10n/ko.json} | 0 .../gamepad/l10n/pl.json} | 0 .../gamepad/l10n/pt-br.json} | 0 .../gamepad/l10n/ro.json} | 0 .../gamepad/l10n/ru.json} | 0 .../gamepad/l10n/sl.json} | 0 .../gamepad/l10n/tr.json} | 0 src/addons/addons/gamepad/run.js | 10 ++ src/addons/addons/hide-flyout/addon.json | 17 +- src/addons/addons/hide-flyout/l10n.js | 16 ++ .../hide-flyout/l10n/ar.json} | 0 .../hide-flyout/l10n/de.json} | 0 .../hide-flyout/l10n/es.json} | 0 .../hide-flyout/l10n/fr.json} | 0 .../hide-flyout/l10n/it.json} | 0 .../hide-flyout/l10n/ja.json} | 0 .../hide-flyout/l10n/ko.json} | 0 .../hide-flyout/l10n/pl.json} | 0 .../hide-flyout/l10n/pt-br.json} | 0 .../hide-flyout/l10n/ro.json} | 0 .../hide-flyout/l10n/ru.json} | 0 .../hide-flyout/l10n/sl.json} | 0 .../hide-flyout/l10n/tr.json} | 0 src/addons/addons/hide-flyout/run.js | 9 + .../initialise-sprite-position/addon.json | 13 +- .../addons/initialise-sprite-position/l10n.js | 14 ++ .../initialise-sprite-position/l10n/de.json} | 0 .../initialise-sprite-position/l10n/es.json} | 0 .../initialise-sprite-position/l10n/fr.json} | 0 .../initialise-sprite-position/l10n/it.json} | 0 .../initialise-sprite-position/l10n/ja.json} | 0 .../initialise-sprite-position/l10n/ko.json} | 0 .../initialise-sprite-position/l10n/pl.json} | 0 .../l10n/pt-br.json} | 0 .../initialise-sprite-position/l10n/ru.json} | 0 .../initialise-sprite-position/l10n/sl.json} | 0 .../initialise-sprite-position/l10n/sv.json} | 0 .../addons/initialise-sprite-position/run.js | 8 + src/addons/addons/load-extensions/addon.json | 12 +- src/addons/addons/load-extensions/l10n.js | 19 ++ .../load-extensions/l10n/ar.json} | 0 .../load-extensions/l10n/de.json} | 0 .../load-extensions/l10n/es.json} | 0 .../load-extensions/l10n/fr.json} | 0 .../load-extensions/l10n/id.json} | 0 .../load-extensions/l10n/it.json} | 0 .../load-extensions/l10n/ja.json} | 0 .../load-extensions/l10n/ko.json} | 0 .../load-extensions/l10n/nl.json} | 0 .../load-extensions/l10n/pl.json} | 0 .../load-extensions/l10n/pt-br.json} | 0 .../load-extensions/l10n/ro.json} | 0 .../load-extensions/l10n/ru.json} | 0 .../load-extensions/l10n/sl.json} | 0 .../load-extensions/l10n/th.json} | 0 .../load-extensions/l10n/tr.json} | 0 src/addons/addons/load-extensions/run.js | 8 + src/addons/addons/mediarecorder/addon.json | 23 ++- src/addons/addons/mediarecorder/l10n.js | 16 ++ .../mediarecorder/l10n/de.json} | 0 .../mediarecorder/l10n/en.json} | 0 .../mediarecorder/l10n/es.json} | 0 .../mediarecorder/l10n/fr.json} | 0 .../mediarecorder/l10n/it.json} | 0 .../mediarecorder/l10n/ja.json} | 0 .../mediarecorder/l10n/ko.json} | 0 .../mediarecorder/l10n/pl.json} | 0 .../mediarecorder/l10n/pt-br.json} | 0 .../mediarecorder/l10n/ro.json} | 0 .../mediarecorder/l10n/ru.json} | 0 .../mediarecorder/l10n/sl.json} | 0 .../mediarecorder/l10n/tr.json} | 0 src/addons/addons/mediarecorder/run.js | 9 + src/addons/addons/mouse-pos/addon.json | 21 ++- src/addons/addons/mouse-pos/l10n.js | 15 ++ .../mouse-pos/l10n/de.json} | 0 .../mouse-pos/l10n/es.json} | 0 .../mouse-pos/l10n/fr.json} | 0 .../mouse-pos/l10n/it.json} | 0 .../mouse-pos/l10n/ja.json} | 0 .../mouse-pos/l10n/ko.json} | 0 .../mouse-pos/l10n/pl.json} | 0 .../mouse-pos/l10n/pt-br.json} | 0 .../mouse-pos/l10n/ro.json} | 0 .../mouse-pos/l10n/ru.json} | 0 .../mouse-pos/l10n/sl.json} | 0 .../mouse-pos/l10n/tr.json} | 0 src/addons/addons/mouse-pos/run.js | 9 + src/addons/addons/mute-project/addon.json | 15 +- src/addons/addons/mute-project/l10n.js | 17 ++ .../mute-project/l10n/ar.json} | 0 .../mute-project/l10n/de.json} | 0 .../mute-project/l10n/es.json} | 0 .../mute-project/l10n/fr.json} | 0 .../mute-project/l10n/it.json} | 0 .../mute-project/l10n/ja.json} | 0 .../mute-project/l10n/ko.json} | 0 .../mute-project/l10n/nl.json} | 0 .../mute-project/l10n/pl.json} | 0 .../mute-project/l10n/pt-br.json} | 0 .../mute-project/l10n/ro.json} | 0 .../mute-project/l10n/ru.json} | 0 .../mute-project/l10n/sl.json} | 0 .../mute-project/l10n/tr.json} | 0 src/addons/addons/mute-project/run.js | 8 + src/addons/addons/onion-skinning/addon.json | 19 +- src/addons/addons/onion-skinning/l10n.js | 18 ++ .../onion-skinning/l10n/ar.json} | 0 .../onion-skinning/l10n/de.json} | 0 .../onion-skinning/l10n/en.json} | 0 .../onion-skinning/l10n/es.json} | 0 .../onion-skinning/l10n/fr.json} | 0 .../onion-skinning/l10n/it.json} | 0 .../onion-skinning/l10n/ja.json} | 0 .../onion-skinning/l10n/ko.json} | 0 .../onion-skinning/l10n/nl.json} | 0 .../onion-skinning/l10n/pl.json} | 0 .../onion-skinning/l10n/pt-br.json} | 0 .../onion-skinning/l10n/ro.json} | 0 .../onion-skinning/l10n/ru.json} | 0 .../onion-skinning/l10n/sl.json} | 0 .../onion-skinning/l10n/tr.json} | 0 src/addons/addons/onion-skinning/run.js | 9 + src/addons/addons/pause/addon.json | 21 ++- src/addons/addons/pause/l10n.js | 17 ++ .../pause.json => addons/pause/l10n/de.json} | 0 .../pause.json => addons/pause/l10n/en.json} | 0 .../pause.json => addons/pause/l10n/es.json} | 0 .../pause.json => addons/pause/l10n/fr.json} | 0 .../pause.json => addons/pause/l10n/it.json} | 0 .../pause.json => addons/pause/l10n/ja.json} | 0 .../pause.json => addons/pause/l10n/ko.json} | 0 .../pause.json => addons/pause/l10n/pl.json} | 0 .../pause/l10n/pt-br.json} | 0 .../pause.json => addons/pause/l10n/ro.json} | 0 .../pause.json => addons/pause/l10n/ru.json} | 0 .../pause.json => addons/pause/l10n/sl.json} | 0 .../pause.json => addons/pause/l10n/th.json} | 0 .../pause.json => addons/pause/l10n/tr.json} | 0 src/addons/addons/pause/run.js | 9 + .../remove-curved-stage-border/addon.json | 18 +- .../addons/remove-curved-stage-border/l10n.js | 13 ++ .../remove-curved-stage-border/l10n/de.json} | 0 .../remove-curved-stage-border/l10n/es.json} | 0 .../remove-curved-stage-border/l10n/fr.json} | 0 .../remove-curved-stage-border/l10n/it.json} | 0 .../remove-curved-stage-border/l10n/ja.json} | 0 .../remove-curved-stage-border/l10n/ko.json} | 0 .../l10n/pt-br.json} | 0 .../remove-curved-stage-border/l10n/ro.json} | 0 .../remove-curved-stage-border/l10n/ru.json} | 0 .../remove-curved-stage-border/l10n/sl.json} | 0 .../addons/remove-curved-stage-border/run.js | 8 + .../addons/remove-sprite-confirm/addon.json | 14 +- .../addons/remove-sprite-confirm/l10n.js | 15 ++ .../remove-sprite-confirm/l10n/de.json} | 0 .../remove-sprite-confirm/l10n/en.json} | 0 .../remove-sprite-confirm/l10n/es.json} | 0 .../remove-sprite-confirm/l10n/fr.json} | 0 .../remove-sprite-confirm/l10n/it.json} | 0 .../remove-sprite-confirm/l10n/ja.json} | 0 .../remove-sprite-confirm/l10n/pl.json} | 0 .../remove-sprite-confirm/l10n/pt-br.json} | 0 .../remove-sprite-confirm/l10n/ro.json} | 0 .../remove-sprite-confirm/l10n/ru.json} | 0 .../remove-sprite-confirm/l10n/sl.json} | 0 .../remove-sprite-confirm/l10n/tr.json} | 0 .../addons/remove-sprite-confirm/run.js | 8 + .../tw-interface-customization/addon.json | 21 ++- .../addons/tw-interface-customization/l10n.js | 3 + .../addons/tw-interface-customization/run.js | 10 ++ src/addons/addons/tw-project-info/addon.json | 13 +- src/addons/addons/tw-project-info/l10n.js | 4 + .../tw-project-info/l10n/en.json} | 0 src/addons/addons/tw-project-info/run.js | 8 + src/addons/addons/variable-manager/addon.json | 18 +- src/addons/addons/variable-manager/l10n.js | 18 ++ .../variable-manager/l10n/ar.json} | 0 .../variable-manager/l10n/de.json} | 0 .../variable-manager/l10n/en.json} | 0 .../variable-manager/l10n/es.json} | 0 .../variable-manager/l10n/fr.json} | 0 .../variable-manager/l10n/it.json} | 0 .../variable-manager/l10n/ja.json} | 0 .../variable-manager/l10n/ko.json} | 0 .../variable-manager/l10n/nl.json} | 0 .../variable-manager/l10n/pl.json} | 0 .../variable-manager/l10n/pt-br.json} | 0 .../variable-manager/l10n/ro.json} | 0 .../variable-manager/l10n/ru.json} | 0 .../variable-manager/l10n/sl.json} | 0 .../variable-manager/l10n/tr.json} | 0 src/addons/addons/variable-manager/run.js | 9 + src/addons/api.js | 46 ++--- src/addons/entry.js | 12 +- src/addons/generated/addon-id-to-entry.js | 36 ++++ src/addons/generated/addon-id-to-l10n.js | 36 ++++ src/addons/get-addon-translations.js | 22 +-- src/addons/pull.js | 164 ++++++++++++------ src/addons/upstream-meta.json | 2 +- 521 files changed, 1410 insertions(+), 317 deletions(-) create mode 100644 src/addons/addons/2d-color-picker/l10n.js rename src/addons/{addons-l10n/de/2d-color-picker.json => addons/2d-color-picker/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/2d-color-picker.json => addons/2d-color-picker/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/2d-color-picker.json => addons/2d-color-picker/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/2d-color-picker.json => addons/2d-color-picker/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/2d-color-picker.json => addons/2d-color-picker/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/2d-color-picker.json => addons/2d-color-picker/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/2d-color-picker.json => addons/2d-color-picker/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/2d-color-picker.json => addons/2d-color-picker/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/2d-color-picker.json => addons/2d-color-picker/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/2d-color-picker.json => addons/2d-color-picker/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/2d-color-picker.json => addons/2d-color-picker/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/2d-color-picker.json => addons/2d-color-picker/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/2d-color-picker.json => addons/2d-color-picker/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/2d-color-picker.json => addons/2d-color-picker/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/2d-color-picker.json => addons/2d-color-picker/l10n/tr.json} (100%) create mode 100644 src/addons/addons/2d-color-picker/run.js create mode 100644 src/addons/addons/bitmap-copy/l10n.js rename src/addons/{addons-l10n/de/bitmap-copy.json => addons/bitmap-copy/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/bitmap-copy.json => addons/bitmap-copy/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/bitmap-copy.json => addons/bitmap-copy/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/bitmap-copy.json => addons/bitmap-copy/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/bitmap-copy.json => addons/bitmap-copy/l10n/ja.json} (100%) rename src/addons/{addons-l10n/pl/bitmap-copy.json => addons/bitmap-copy/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/bitmap-copy.json => addons/bitmap-copy/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/bitmap-copy.json => addons/bitmap-copy/l10n/ro.json} (100%) rename src/addons/{addons-l10n/sl/bitmap-copy.json => addons/bitmap-copy/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/bitmap-copy.json => addons/bitmap-copy/l10n/tr.json} (100%) create mode 100644 src/addons/addons/bitmap-copy/run.js create mode 100644 src/addons/addons/block-palette-icons/l10n.js rename src/addons/{addons-l10n/ar/block-palette-icons.json => addons/block-palette-icons/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/block-palette-icons.json => addons/block-palette-icons/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/block-palette-icons.json => addons/block-palette-icons/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/block-palette-icons.json => addons/block-palette-icons/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/block-palette-icons.json => addons/block-palette-icons/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/block-palette-icons.json => addons/block-palette-icons/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/block-palette-icons.json => addons/block-palette-icons/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/block-palette-icons.json => addons/block-palette-icons/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/block-palette-icons.json => addons/block-palette-icons/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/block-palette-icons.json => addons/block-palette-icons/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/block-palette-icons.json => addons/block-palette-icons/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/block-palette-icons.json => addons/block-palette-icons/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/block-palette-icons.json => addons/block-palette-icons/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/block-palette-icons.json => addons/block-palette-icons/l10n/tr.json} (100%) create mode 100644 src/addons/addons/block-palette-icons/run.js create mode 100644 src/addons/addons/block-switching/l10n.js rename src/addons/{addons-l10n/de/block-switching.json => addons/block-switching/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/block-switching.json => addons/block-switching/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/block-switching.json => addons/block-switching/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/block-switching.json => addons/block-switching/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/block-switching.json => addons/block-switching/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/block-switching.json => addons/block-switching/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/block-switching.json => addons/block-switching/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/block-switching.json => addons/block-switching/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/block-switching.json => addons/block-switching/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/block-switching.json => addons/block-switching/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/block-switching.json => addons/block-switching/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/block-switching.json => addons/block-switching/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/block-switching.json => addons/block-switching/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/block-switching.json => addons/block-switching/l10n/tr.json} (100%) create mode 100644 src/addons/addons/block-switching/run.js create mode 100644 src/addons/addons/blocks2image/l10n.js rename src/addons/{addons-l10n/de/blocks2image.json => addons/blocks2image/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/blocks2image.json => addons/blocks2image/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/blocks2image.json => addons/blocks2image/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/blocks2image.json => addons/blocks2image/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/blocks2image.json => addons/blocks2image/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/blocks2image.json => addons/blocks2image/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/blocks2image.json => addons/blocks2image/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/blocks2image.json => addons/blocks2image/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/blocks2image.json => addons/blocks2image/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/blocks2image.json => addons/blocks2image/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/blocks2image.json => addons/blocks2image/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/blocks2image.json => addons/blocks2image/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/blocks2image.json => addons/blocks2image/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/blocks2image.json => addons/blocks2image/l10n/tr.json} (100%) create mode 100644 src/addons/addons/blocks2image/run.js create mode 100644 src/addons/addons/cat-blocks/l10n.js rename src/addons/{addons-l10n/de/cat-blocks.json => addons/cat-blocks/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/cat-blocks.json => addons/cat-blocks/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/cat-blocks.json => addons/cat-blocks/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/cat-blocks.json => addons/cat-blocks/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/cat-blocks.json => addons/cat-blocks/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/cat-blocks.json => addons/cat-blocks/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/cat-blocks.json => addons/cat-blocks/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/cat-blocks.json => addons/cat-blocks/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/cat-blocks.json => addons/cat-blocks/l10n/ro.json} (100%) rename src/addons/{addons-l10n/sl/cat-blocks.json => addons/cat-blocks/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/cat-blocks.json => addons/cat-blocks/l10n/tr.json} (100%) create mode 100644 src/addons/addons/cat-blocks/run.js create mode 100644 src/addons/addons/clones/l10n.js rename src/addons/{addons-l10n/de/clones.json => addons/clones/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/clones.json => addons/clones/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/clones.json => addons/clones/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/clones.json => addons/clones/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/clones.json => addons/clones/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/clones.json => addons/clones/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/clones.json => addons/clones/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/clones.json => addons/clones/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/clones.json => addons/clones/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/clones.json => addons/clones/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/clones.json => addons/clones/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/clones.json => addons/clones/l10n/sl.json} (100%) rename src/addons/{addons-l10n/th/clones.json => addons/clones/l10n/th.json} (100%) rename src/addons/{addons-l10n/tr/clones.json => addons/clones/l10n/tr.json} (100%) create mode 100644 src/addons/addons/clones/run.js create mode 100644 src/addons/addons/color-picker/l10n.js rename src/addons/{addons-l10n/de/color-picker.json => addons/color-picker/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/color-picker.json => addons/color-picker/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/color-picker.json => addons/color-picker/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/color-picker.json => addons/color-picker/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/color-picker.json => addons/color-picker/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/color-picker.json => addons/color-picker/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/color-picker.json => addons/color-picker/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/color-picker.json => addons/color-picker/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/color-picker.json => addons/color-picker/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/color-picker.json => addons/color-picker/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/color-picker.json => addons/color-picker/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/color-picker.json => addons/color-picker/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/color-picker.json => addons/color-picker/l10n/tr.json} (100%) create mode 100644 src/addons/addons/color-picker/run.js create mode 100644 src/addons/addons/custom-block-shape/l10n.js rename src/addons/{addons-l10n/de/custom-block-shape.json => addons/custom-block-shape/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/custom-block-shape.json => addons/custom-block-shape/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/custom-block-shape.json => addons/custom-block-shape/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/custom-block-shape.json => addons/custom-block-shape/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/custom-block-shape.json => addons/custom-block-shape/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/custom-block-shape.json => addons/custom-block-shape/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/custom-block-shape.json => addons/custom-block-shape/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/custom-block-shape.json => addons/custom-block-shape/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/custom-block-shape.json => addons/custom-block-shape/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/custom-block-shape.json => addons/custom-block-shape/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/custom-block-shape.json => addons/custom-block-shape/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/custom-block-shape.json => addons/custom-block-shape/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/custom-block-shape.json => addons/custom-block-shape/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/custom-block-shape.json => addons/custom-block-shape/l10n/tr.json} (100%) create mode 100644 src/addons/addons/custom-block-shape/run.js create mode 100644 src/addons/addons/custom-zoom/l10n.js rename src/addons/{addons-l10n/de/custom-zoom.json => addons/custom-zoom/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/custom-zoom.json => addons/custom-zoom/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/custom-zoom.json => addons/custom-zoom/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/custom-zoom.json => addons/custom-zoom/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/custom-zoom.json => addons/custom-zoom/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/custom-zoom.json => addons/custom-zoom/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/custom-zoom.json => addons/custom-zoom/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/custom-zoom.json => addons/custom-zoom/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/custom-zoom.json => addons/custom-zoom/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/custom-zoom.json => addons/custom-zoom/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/custom-zoom.json => addons/custom-zoom/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/custom-zoom.json => addons/custom-zoom/l10n/sv.json} (100%) create mode 100644 src/addons/addons/custom-zoom/run.js create mode 100644 src/addons/addons/data-category-tweaks-v2/l10n.js rename src/addons/{addons-l10n/ar/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/data-category-tweaks-v2.json => addons/data-category-tweaks-v2/l10n/tr.json} (100%) create mode 100644 src/addons/addons/data-category-tweaks-v2/run.js create mode 100644 src/addons/addons/drag-drop/l10n.js rename src/addons/{addons-l10n/de/drag-drop.json => addons/drag-drop/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/drag-drop.json => addons/drag-drop/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/drag-drop.json => addons/drag-drop/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/drag-drop.json => addons/drag-drop/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/drag-drop.json => addons/drag-drop/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/drag-drop.json => addons/drag-drop/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/drag-drop.json => addons/drag-drop/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/drag-drop.json => addons/drag-drop/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/drag-drop.json => addons/drag-drop/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/drag-drop.json => addons/drag-drop/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/drag-drop.json => addons/drag-drop/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/drag-drop.json => addons/drag-drop/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/drag-drop.json => addons/drag-drop/l10n/tr.json} (100%) create mode 100644 src/addons/addons/drag-drop/run.js create mode 100644 src/addons/addons/editor-colored-context-menus/l10n.js rename src/addons/{addons-l10n/de/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/editor-colored-context-menus.json => addons/editor-colored-context-menus/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-colored-context-menus/run.js create mode 100644 src/addons/addons/editor-devtools/l10n.js rename src/addons/{addons-l10n/ar/editor-devtools.json => addons/editor-devtools/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/editor-devtools.json => addons/editor-devtools/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/editor-devtools.json => addons/editor-devtools/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/editor-devtools.json => addons/editor-devtools/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-devtools.json => addons/editor-devtools/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-devtools.json => addons/editor-devtools/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-devtools.json => addons/editor-devtools/l10n/ja.json} (100%) rename src/addons/{addons-l10n/nl/editor-devtools.json => addons/editor-devtools/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/editor-devtools.json => addons/editor-devtools/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-devtools.json => addons/editor-devtools/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-devtools.json => addons/editor-devtools/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-devtools.json => addons/editor-devtools/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-devtools.json => addons/editor-devtools/l10n/sl.json} (100%) rename src/addons/{addons-l10n/th/editor-devtools.json => addons/editor-devtools/l10n/th.json} (100%) rename src/addons/{addons-l10n/tr/editor-devtools.json => addons/editor-devtools/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-devtools/run.js create mode 100644 src/addons/addons/editor-searchable-dropdowns/l10n.js rename src/addons/{addons-l10n/de/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/ja.json} (100%) rename src/addons/{addons-l10n/nl/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/editor-searchable-dropdowns.json => addons/editor-searchable-dropdowns/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-searchable-dropdowns/run.js create mode 100644 src/addons/addons/editor-sounds/l10n.js rename src/addons/{addons-l10n/de/editor-sounds.json => addons/editor-sounds/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/editor-sounds.json => addons/editor-sounds/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-sounds.json => addons/editor-sounds/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-sounds.json => addons/editor-sounds/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-sounds.json => addons/editor-sounds/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/editor-sounds.json => addons/editor-sounds/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/editor-sounds.json => addons/editor-sounds/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-sounds.json => addons/editor-sounds/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-sounds.json => addons/editor-sounds/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-sounds.json => addons/editor-sounds/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-sounds.json => addons/editor-sounds/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/editor-sounds.json => addons/editor-sounds/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-sounds/run.js create mode 100644 src/addons/addons/editor-stage-left/l10n.js rename src/addons/{addons-l10n/de/editor-stage-left.json => addons/editor-stage-left/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/editor-stage-left.json => addons/editor-stage-left/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-stage-left.json => addons/editor-stage-left/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-stage-left.json => addons/editor-stage-left/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-stage-left.json => addons/editor-stage-left/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/editor-stage-left.json => addons/editor-stage-left/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/editor-stage-left.json => addons/editor-stage-left/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-stage-left.json => addons/editor-stage-left/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-stage-left.json => addons/editor-stage-left/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-stage-left.json => addons/editor-stage-left/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-stage-left.json => addons/editor-stage-left/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/editor-stage-left.json => addons/editor-stage-left/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/editor-stage-left.json => addons/editor-stage-left/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-stage-left/run.js create mode 100644 src/addons/addons/editor-theme3/l10n.js rename src/addons/{addons-l10n/ar/editor-theme3.json => addons/editor-theme3/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/editor-theme3.json => addons/editor-theme3/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/editor-theme3.json => addons/editor-theme3/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/editor-theme3.json => addons/editor-theme3/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/editor-theme3.json => addons/editor-theme3/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/editor-theme3.json => addons/editor-theme3/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/editor-theme3.json => addons/editor-theme3/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/editor-theme3.json => addons/editor-theme3/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/editor-theme3.json => addons/editor-theme3/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/editor-theme3.json => addons/editor-theme3/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/editor-theme3.json => addons/editor-theme3/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/editor-theme3.json => addons/editor-theme3/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/editor-theme3.json => addons/editor-theme3/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/editor-theme3.json => addons/editor-theme3/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/editor-theme3.json => addons/editor-theme3/l10n/tr.json} (100%) create mode 100644 src/addons/addons/editor-theme3/run.js create mode 100644 src/addons/addons/folders/l10n.js rename src/addons/{addons-l10n/ar/folders.json => addons/folders/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/folders.json => addons/folders/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/folders.json => addons/folders/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/folders.json => addons/folders/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/folders.json => addons/folders/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/folders.json => addons/folders/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/folders.json => addons/folders/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/folders.json => addons/folders/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/folders.json => addons/folders/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/folders.json => addons/folders/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/folders.json => addons/folders/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/folders.json => addons/folders/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/folders.json => addons/folders/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/folders.json => addons/folders/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/folders.json => addons/folders/l10n/sv.json} (100%) rename src/addons/{addons-l10n/tr/folders.json => addons/folders/l10n/tr.json} (100%) create mode 100644 src/addons/addons/folders/run.js create mode 100644 src/addons/addons/gamepad/l10n.js rename src/addons/{addons-l10n/de/gamepad.json => addons/gamepad/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/gamepad.json => addons/gamepad/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/gamepad.json => addons/gamepad/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/gamepad.json => addons/gamepad/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/gamepad.json => addons/gamepad/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/gamepad.json => addons/gamepad/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/gamepad.json => addons/gamepad/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/gamepad.json => addons/gamepad/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/gamepad.json => addons/gamepad/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/gamepad.json => addons/gamepad/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/gamepad.json => addons/gamepad/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/gamepad.json => addons/gamepad/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/gamepad.json => addons/gamepad/l10n/tr.json} (100%) create mode 100644 src/addons/addons/gamepad/run.js create mode 100644 src/addons/addons/hide-flyout/l10n.js rename src/addons/{addons-l10n/ar/hide-flyout.json => addons/hide-flyout/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/hide-flyout.json => addons/hide-flyout/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/hide-flyout.json => addons/hide-flyout/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/hide-flyout.json => addons/hide-flyout/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/hide-flyout.json => addons/hide-flyout/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/hide-flyout.json => addons/hide-flyout/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/hide-flyout.json => addons/hide-flyout/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/hide-flyout.json => addons/hide-flyout/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/hide-flyout.json => addons/hide-flyout/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/hide-flyout.json => addons/hide-flyout/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/hide-flyout.json => addons/hide-flyout/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/hide-flyout.json => addons/hide-flyout/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/hide-flyout.json => addons/hide-flyout/l10n/tr.json} (100%) create mode 100644 src/addons/addons/hide-flyout/run.js create mode 100644 src/addons/addons/initialise-sprite-position/l10n.js rename src/addons/{addons-l10n/de/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ru/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/sl.json} (100%) rename src/addons/{addons-l10n/sv/initialise-sprite-position.json => addons/initialise-sprite-position/l10n/sv.json} (100%) create mode 100644 src/addons/addons/initialise-sprite-position/run.js create mode 100644 src/addons/addons/load-extensions/l10n.js rename src/addons/{addons-l10n/ar/load-extensions.json => addons/load-extensions/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/load-extensions.json => addons/load-extensions/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/load-extensions.json => addons/load-extensions/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/load-extensions.json => addons/load-extensions/l10n/fr.json} (100%) rename src/addons/{addons-l10n/id/load-extensions.json => addons/load-extensions/l10n/id.json} (100%) rename src/addons/{addons-l10n/it/load-extensions.json => addons/load-extensions/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/load-extensions.json => addons/load-extensions/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/load-extensions.json => addons/load-extensions/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/load-extensions.json => addons/load-extensions/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/load-extensions.json => addons/load-extensions/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/load-extensions.json => addons/load-extensions/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/load-extensions.json => addons/load-extensions/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/load-extensions.json => addons/load-extensions/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/load-extensions.json => addons/load-extensions/l10n/sl.json} (100%) rename src/addons/{addons-l10n/th/load-extensions.json => addons/load-extensions/l10n/th.json} (100%) rename src/addons/{addons-l10n/tr/load-extensions.json => addons/load-extensions/l10n/tr.json} (100%) create mode 100644 src/addons/addons/load-extensions/run.js create mode 100644 src/addons/addons/mediarecorder/l10n.js rename src/addons/{addons-l10n/de/mediarecorder.json => addons/mediarecorder/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/mediarecorder.json => addons/mediarecorder/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/mediarecorder.json => addons/mediarecorder/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/mediarecorder.json => addons/mediarecorder/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/mediarecorder.json => addons/mediarecorder/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/mediarecorder.json => addons/mediarecorder/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/mediarecorder.json => addons/mediarecorder/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/mediarecorder.json => addons/mediarecorder/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/mediarecorder.json => addons/mediarecorder/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/mediarecorder.json => addons/mediarecorder/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/mediarecorder.json => addons/mediarecorder/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/mediarecorder.json => addons/mediarecorder/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/mediarecorder.json => addons/mediarecorder/l10n/tr.json} (100%) create mode 100644 src/addons/addons/mediarecorder/run.js create mode 100644 src/addons/addons/mouse-pos/l10n.js rename src/addons/{addons-l10n/de/mouse-pos.json => addons/mouse-pos/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/mouse-pos.json => addons/mouse-pos/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/mouse-pos.json => addons/mouse-pos/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/mouse-pos.json => addons/mouse-pos/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/mouse-pos.json => addons/mouse-pos/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/mouse-pos.json => addons/mouse-pos/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/mouse-pos.json => addons/mouse-pos/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/mouse-pos.json => addons/mouse-pos/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/mouse-pos.json => addons/mouse-pos/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/mouse-pos.json => addons/mouse-pos/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/mouse-pos.json => addons/mouse-pos/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/mouse-pos.json => addons/mouse-pos/l10n/tr.json} (100%) create mode 100644 src/addons/addons/mouse-pos/run.js create mode 100644 src/addons/addons/mute-project/l10n.js rename src/addons/{addons-l10n/ar/mute-project.json => addons/mute-project/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/mute-project.json => addons/mute-project/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/mute-project.json => addons/mute-project/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/mute-project.json => addons/mute-project/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/mute-project.json => addons/mute-project/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/mute-project.json => addons/mute-project/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/mute-project.json => addons/mute-project/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/mute-project.json => addons/mute-project/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/mute-project.json => addons/mute-project/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/mute-project.json => addons/mute-project/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/mute-project.json => addons/mute-project/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/mute-project.json => addons/mute-project/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/mute-project.json => addons/mute-project/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/mute-project.json => addons/mute-project/l10n/tr.json} (100%) create mode 100644 src/addons/addons/mute-project/run.js create mode 100644 src/addons/addons/onion-skinning/l10n.js rename src/addons/{addons-l10n/ar/onion-skinning.json => addons/onion-skinning/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/onion-skinning.json => addons/onion-skinning/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/onion-skinning.json => addons/onion-skinning/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/onion-skinning.json => addons/onion-skinning/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/onion-skinning.json => addons/onion-skinning/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/onion-skinning.json => addons/onion-skinning/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/onion-skinning.json => addons/onion-skinning/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/onion-skinning.json => addons/onion-skinning/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/onion-skinning.json => addons/onion-skinning/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/onion-skinning.json => addons/onion-skinning/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/onion-skinning.json => addons/onion-skinning/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/onion-skinning.json => addons/onion-skinning/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/onion-skinning.json => addons/onion-skinning/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/onion-skinning.json => addons/onion-skinning/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/onion-skinning.json => addons/onion-skinning/l10n/tr.json} (100%) create mode 100644 src/addons/addons/onion-skinning/run.js create mode 100644 src/addons/addons/pause/l10n.js rename src/addons/{addons-l10n/de/pause.json => addons/pause/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/pause.json => addons/pause/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/pause.json => addons/pause/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/pause.json => addons/pause/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/pause.json => addons/pause/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/pause.json => addons/pause/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/pause.json => addons/pause/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pl/pause.json => addons/pause/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/pause.json => addons/pause/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/pause.json => addons/pause/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/pause.json => addons/pause/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/pause.json => addons/pause/l10n/sl.json} (100%) rename src/addons/{addons-l10n/th/pause.json => addons/pause/l10n/th.json} (100%) rename src/addons/{addons-l10n/tr/pause.json => addons/pause/l10n/tr.json} (100%) create mode 100644 src/addons/addons/pause/run.js create mode 100644 src/addons/addons/remove-curved-stage-border/l10n.js rename src/addons/{addons-l10n/de/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/de.json} (100%) rename src/addons/{addons-l10n/es/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/ko.json} (100%) rename src/addons/{addons-l10n/pt-br/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/remove-curved-stage-border.json => addons/remove-curved-stage-border/l10n/sl.json} (100%) create mode 100644 src/addons/addons/remove-curved-stage-border/run.js create mode 100644 src/addons/addons/remove-sprite-confirm/l10n.js rename src/addons/{addons-l10n/de/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/ja.json} (100%) rename src/addons/{addons-l10n/pl/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/remove-sprite-confirm.json => addons/remove-sprite-confirm/l10n/tr.json} (100%) create mode 100644 src/addons/addons/remove-sprite-confirm/run.js create mode 100644 src/addons/addons/tw-interface-customization/l10n.js create mode 100644 src/addons/addons/tw-interface-customization/run.js create mode 100644 src/addons/addons/tw-project-info/l10n.js rename src/addons/{addons-l10n/en/tw-project-info.json => addons/tw-project-info/l10n/en.json} (100%) create mode 100644 src/addons/addons/tw-project-info/run.js create mode 100644 src/addons/addons/variable-manager/l10n.js rename src/addons/{addons-l10n/ar/variable-manager.json => addons/variable-manager/l10n/ar.json} (100%) rename src/addons/{addons-l10n/de/variable-manager.json => addons/variable-manager/l10n/de.json} (100%) rename src/addons/{addons-l10n/en/variable-manager.json => addons/variable-manager/l10n/en.json} (100%) rename src/addons/{addons-l10n/es/variable-manager.json => addons/variable-manager/l10n/es.json} (100%) rename src/addons/{addons-l10n/fr/variable-manager.json => addons/variable-manager/l10n/fr.json} (100%) rename src/addons/{addons-l10n/it/variable-manager.json => addons/variable-manager/l10n/it.json} (100%) rename src/addons/{addons-l10n/ja/variable-manager.json => addons/variable-manager/l10n/ja.json} (100%) rename src/addons/{addons-l10n/ko/variable-manager.json => addons/variable-manager/l10n/ko.json} (100%) rename src/addons/{addons-l10n/nl/variable-manager.json => addons/variable-manager/l10n/nl.json} (100%) rename src/addons/{addons-l10n/pl/variable-manager.json => addons/variable-manager/l10n/pl.json} (100%) rename src/addons/{addons-l10n/pt-br/variable-manager.json => addons/variable-manager/l10n/pt-br.json} (100%) rename src/addons/{addons-l10n/ro/variable-manager.json => addons/variable-manager/l10n/ro.json} (100%) rename src/addons/{addons-l10n/ru/variable-manager.json => addons/variable-manager/l10n/ru.json} (100%) rename src/addons/{addons-l10n/sl/variable-manager.json => addons/variable-manager/l10n/sl.json} (100%) rename src/addons/{addons-l10n/tr/variable-manager.json => addons/variable-manager/l10n/tr.json} (100%) create mode 100644 src/addons/addons/variable-manager/run.js create mode 100644 src/addons/generated/addon-id-to-entry.js create mode 100644 src/addons/generated/addon-id-to-l10n.js diff --git a/.eslintignore b/.eslintignore index 38eaa9aa0..91753c1e3 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,7 +1,7 @@ node_modules/* build/* dist/* -# Files imported from upstream +# Files imported from upstream or generated by scripts src/addons/addons src/addons/libraries -src/addons/api-libraries +src/addons/generated \ No newline at end of file diff --git a/src/addons/addons/2d-color-picker/addon.json b/src/addons/addons/2d-color-picker/addon.json index b16b45652..d738f57a1 100644 --- a/src/addons/addons/2d-color-picker/addon.json +++ b/src/addons/addons/2d-color-picker/addon.json @@ -1,7 +1,10 @@ { "name": "2D color picker", "description": "Replaces saturation and brightness sliders with a 2D color picker. Hold Shift while dragging the cursor to change the values on a single axis.", - "tags": ["editor", "costumeEditor"], + "tags": [ + "editor", + "costumeEditor" + ], "credits": [ { "name": "Ucrash" @@ -10,16 +13,18 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "libraries": ["tinycolor2"], - "enabledByDefault": false, - "l10n": true -} + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/2d-color-picker/l10n.js b/src/addons/addons/2d-color-picker/l10n.js new file mode 100644 index 000000000..9eb667530 --- /dev/null +++ b/src/addons/addons/2d-color-picker/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/de.json diff --git a/src/addons/addons-l10n/en/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/en.json diff --git a/src/addons/addons-l10n/es/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/es.json diff --git a/src/addons/addons-l10n/fr/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/fr.json diff --git a/src/addons/addons-l10n/it/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/it.json diff --git a/src/addons/addons-l10n/ja/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/2d-color-picker.json b/src/addons/addons/2d-color-picker/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/2d-color-picker.json rename to src/addons/addons/2d-color-picker/l10n/tr.json diff --git a/src/addons/addons/2d-color-picker/run.js b/src/addons/addons/2d-color-picker/run.js new file mode 100644 index 000000000..3c3935458 --- /dev/null +++ b/src/addons/addons/2d-color-picker/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("2d-color-picker", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/bitmap-copy/addon.json b/src/addons/addons/bitmap-copy/addon.json index 5311442de..ead0cf079 100644 --- a/src/addons/addons/bitmap-copy/addon.json +++ b/src/addons/addons/bitmap-copy/addon.json @@ -4,18 +4,24 @@ "info": [ { "type": "notice", - "text": "\"Right click \u2192 copy\" is not supported. You must press Ctrl+C while a bitmap image is selected.", + "text": "\"Right click → copy\" is not supported. You must press Ctrl+C while a bitmap image is selected.", "id": "norightclick" } ], "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "costumeEditor"], - "permissions": ["clipboardWrite"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "costumeEditor" + ], + "permissions": [ + "clipboardWrite" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/bitmap-copy/l10n.js b/src/addons/addons/bitmap-copy/l10n.js new file mode 100644 index 000000000..b22de6d33 --- /dev/null +++ b/src/addons/addons/bitmap-copy/l10n.js @@ -0,0 +1,13 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/de.json diff --git a/src/addons/addons-l10n/es/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/es.json diff --git a/src/addons/addons-l10n/fr/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/fr.json diff --git a/src/addons/addons-l10n/it/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/it.json diff --git a/src/addons/addons-l10n/ja/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/ja.json diff --git a/src/addons/addons-l10n/pl/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/ro.json diff --git a/src/addons/addons-l10n/sl/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/bitmap-copy.json b/src/addons/addons/bitmap-copy/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/bitmap-copy.json rename to src/addons/addons/bitmap-copy/l10n/tr.json diff --git a/src/addons/addons/bitmap-copy/run.js b/src/addons/addons/bitmap-copy/run.js new file mode 100644 index 000000000..81f226d33 --- /dev/null +++ b/src/addons/addons/bitmap-copy/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("bitmap-copy", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/block-palette-icons/addon.json b/src/addons/addons/block-palette-icons/addon.json index 76223166b..ed2a4a472 100644 --- a/src/addons/addons/block-palette-icons/addon.json +++ b/src/addons/addons/block-palette-icons/addon.json @@ -1,19 +1,28 @@ { "name": "Block palette category icons", "description": "Adds icons inside the colored circles that identify block categories.", - "tags": ["editor", "codeEditor", "theme"], + "tags": [ + "editor", + "codeEditor", + "theme" + ], "enabledByDefault": false, - "dynamicEnable": true, - "dynamicDisable": true, "userstyles": [ { "url": "userstyle.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "l10n": true, "credits": [ - { "name": "--Explosion--", "link": "https://scratch.mit.edu/users/--Explosion--/" }, - { "name": "RedGuy7", "link": "https://scratch.mit.edu/users/RedGuy7/" } + { + "name": "--Explosion--", + "link": "https://scratch.mit.edu/users/--Explosion--/" + }, + { + "name": "RedGuy7", + "link": "https://scratch.mit.edu/users/RedGuy7/" + } ] -} +} \ No newline at end of file diff --git a/src/addons/addons/block-palette-icons/l10n.js b/src/addons/addons/block-palette-icons/l10n.js new file mode 100644 index 000000000..03e7a7a27 --- /dev/null +++ b/src/addons/addons/block-palette-icons/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/ar.json diff --git a/src/addons/addons-l10n/de/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/de.json diff --git a/src/addons/addons-l10n/es/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/es.json diff --git a/src/addons/addons-l10n/fr/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/fr.json diff --git a/src/addons/addons-l10n/it/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/it.json diff --git a/src/addons/addons-l10n/ja/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/block-palette-icons.json b/src/addons/addons/block-palette-icons/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/block-palette-icons.json rename to src/addons/addons/block-palette-icons/l10n/tr.json diff --git a/src/addons/addons/block-palette-icons/run.js b/src/addons/addons/block-palette-icons/run.js new file mode 100644 index 000000000..5687c5487 --- /dev/null +++ b/src/addons/addons/block-palette-icons/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("block-palette-icons", manifest); +runner.l10n(l10n); +runner.userstyle("userstyle.css", () => require("!!raw-loader!./userstyle.css")); +runner.run(); diff --git a/src/addons/addons/block-switching/addon.json b/src/addons/addons/block-switching/addon.json index 78825b8cf..8b420db02 100644 --- a/src/addons/addons/block-switching/addon.json +++ b/src/addons/addons/block-switching/addon.json @@ -6,15 +6,19 @@ "name": "GarboMuffin" } ], - "dynamicEnable": true, - "dynamicDisable": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "codeEditor", "recommended"], + "tags": [ + "editor", + "codeEditor", + "recommended" + ], "settings": [ { "name": "Show option to change block to self", @@ -83,7 +87,5 @@ "default": true } ], - "libraries": ["scratch-blocks"], - "l10n": true, "enabledByDefault": true -} +} \ No newline at end of file diff --git a/src/addons/addons/block-switching/l10n.js b/src/addons/addons/block-switching/l10n.js new file mode 100644 index 000000000..e2089b2b5 --- /dev/null +++ b/src/addons/addons/block-switching/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/block-switching.json b/src/addons/addons/block-switching/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/block-switching.json rename to src/addons/addons/block-switching/l10n/de.json diff --git a/src/addons/addons-l10n/en/block-switching.json b/src/addons/addons/block-switching/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/block-switching.json rename to src/addons/addons/block-switching/l10n/en.json diff --git a/src/addons/addons-l10n/es/block-switching.json b/src/addons/addons/block-switching/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/block-switching.json rename to src/addons/addons/block-switching/l10n/es.json diff --git a/src/addons/addons-l10n/fr/block-switching.json b/src/addons/addons/block-switching/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/block-switching.json rename to src/addons/addons/block-switching/l10n/fr.json diff --git a/src/addons/addons-l10n/it/block-switching.json b/src/addons/addons/block-switching/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/block-switching.json rename to src/addons/addons/block-switching/l10n/it.json diff --git a/src/addons/addons-l10n/ja/block-switching.json b/src/addons/addons/block-switching/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/block-switching.json rename to src/addons/addons/block-switching/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/block-switching.json b/src/addons/addons/block-switching/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/block-switching.json rename to src/addons/addons/block-switching/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/block-switching.json b/src/addons/addons/block-switching/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/block-switching.json rename to src/addons/addons/block-switching/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/block-switching.json b/src/addons/addons/block-switching/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/block-switching.json rename to src/addons/addons/block-switching/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/block-switching.json b/src/addons/addons/block-switching/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/block-switching.json rename to src/addons/addons/block-switching/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/block-switching.json b/src/addons/addons/block-switching/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/block-switching.json rename to src/addons/addons/block-switching/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/block-switching.json b/src/addons/addons/block-switching/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/block-switching.json rename to src/addons/addons/block-switching/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/block-switching.json b/src/addons/addons/block-switching/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/block-switching.json rename to src/addons/addons/block-switching/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/block-switching.json b/src/addons/addons/block-switching/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/block-switching.json rename to src/addons/addons/block-switching/l10n/tr.json diff --git a/src/addons/addons/block-switching/run.js b/src/addons/addons/block-switching/run.js new file mode 100644 index 000000000..0386dc0fc --- /dev/null +++ b/src/addons/addons/block-switching/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("block-switching", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/blocks2image/addon.json b/src/addons/addons/blocks2image/addon.json index cd7e4d1d3..be2cdca26 100644 --- a/src/addons/addons/blocks2image/addon.json +++ b/src/addons/addons/blocks2image/addon.json @@ -1,7 +1,10 @@ { "name": "Save blocks as image", "description": "Right click the editor workspace to export blocks as SVG/PNG images.", - "tags": ["editor", "codeEditor"], + "tags": [ + "editor", + "codeEditor" + ], "credits": [ { "name": "summerscar" @@ -10,9 +13,10 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "enabledByDefault": false, - "l10n": true -} + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/blocks2image/l10n.js b/src/addons/addons/blocks2image/l10n.js new file mode 100644 index 000000000..8f520c97f --- /dev/null +++ b/src/addons/addons/blocks2image/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/blocks2image.json b/src/addons/addons/blocks2image/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/blocks2image.json rename to src/addons/addons/blocks2image/l10n/de.json diff --git a/src/addons/addons-l10n/en/blocks2image.json b/src/addons/addons/blocks2image/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/blocks2image.json rename to src/addons/addons/blocks2image/l10n/en.json diff --git a/src/addons/addons-l10n/es/blocks2image.json b/src/addons/addons/blocks2image/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/blocks2image.json rename to src/addons/addons/blocks2image/l10n/es.json diff --git a/src/addons/addons-l10n/fr/blocks2image.json b/src/addons/addons/blocks2image/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/blocks2image.json rename to src/addons/addons/blocks2image/l10n/fr.json diff --git a/src/addons/addons-l10n/it/blocks2image.json b/src/addons/addons/blocks2image/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/blocks2image.json rename to src/addons/addons/blocks2image/l10n/it.json diff --git a/src/addons/addons-l10n/ja/blocks2image.json b/src/addons/addons/blocks2image/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/blocks2image.json rename to src/addons/addons/blocks2image/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/blocks2image.json b/src/addons/addons/blocks2image/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/blocks2image.json rename to src/addons/addons/blocks2image/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/blocks2image.json b/src/addons/addons/blocks2image/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/blocks2image.json rename to src/addons/addons/blocks2image/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/blocks2image.json b/src/addons/addons/blocks2image/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/blocks2image.json rename to src/addons/addons/blocks2image/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/blocks2image.json b/src/addons/addons/blocks2image/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/blocks2image.json rename to src/addons/addons/blocks2image/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/blocks2image.json b/src/addons/addons/blocks2image/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/blocks2image.json rename to src/addons/addons/blocks2image/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/blocks2image.json b/src/addons/addons/blocks2image/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/blocks2image.json rename to src/addons/addons/blocks2image/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/blocks2image.json b/src/addons/addons/blocks2image/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/blocks2image.json rename to src/addons/addons/blocks2image/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/blocks2image.json b/src/addons/addons/blocks2image/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/blocks2image.json rename to src/addons/addons/blocks2image/l10n/tr.json diff --git a/src/addons/addons/blocks2image/run.js b/src/addons/addons/blocks2image/run.js new file mode 100644 index 000000000..02af3517a --- /dev/null +++ b/src/addons/addons/blocks2image/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("blocks2image", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/cat-blocks/addon.json b/src/addons/addons/cat-blocks/addon.json index 46e9a445d..99c9369ac 100644 --- a/src/addons/addons/cat-blocks/addon.json +++ b/src/addons/addons/cat-blocks/addon.json @@ -13,7 +13,9 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "info": [ @@ -31,9 +33,9 @@ "type": "boolean" } ], - "tags": ["editor", "codeEditor"], - "versionAdded": "1.14.0", - "enabledByDefault": false, - "libraries": ["scratch-blocks"], - "l10n": true -} + "tags": [ + "editor", + "codeEditor" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/cat-blocks/l10n.js b/src/addons/addons/cat-blocks/l10n.js new file mode 100644 index 000000000..951840650 --- /dev/null +++ b/src/addons/addons/cat-blocks/l10n.js @@ -0,0 +1,14 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/de.json diff --git a/src/addons/addons-l10n/es/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/es.json diff --git a/src/addons/addons-l10n/fr/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/fr.json diff --git a/src/addons/addons-l10n/it/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/it.json diff --git a/src/addons/addons-l10n/ja/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/ro.json diff --git a/src/addons/addons-l10n/sl/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/cat-blocks.json b/src/addons/addons/cat-blocks/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/cat-blocks.json rename to src/addons/addons/cat-blocks/l10n/tr.json diff --git a/src/addons/addons/cat-blocks/run.js b/src/addons/addons/cat-blocks/run.js new file mode 100644 index 000000000..894a2f7eb --- /dev/null +++ b/src/addons/addons/cat-blocks/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("cat-blocks", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/clones/addon.json b/src/addons/addons/clones/addon.json index dbc45247a..3706a7834 100644 --- a/src/addons/addons/clones/addon.json +++ b/src/addons/addons/clones/addon.json @@ -6,21 +6,25 @@ "name": "Jeffalo" } ], - "dynamicEnable": true, - "dynamicDisable": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "projectPlayer"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "projectPlayer" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/clones/l10n.js b/src/addons/addons/clones/l10n.js new file mode 100644 index 000000000..b1a2ae5d6 --- /dev/null +++ b/src/addons/addons/clones/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "th": () => require("./l10n/th.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/clones.json b/src/addons/addons/clones/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/clones.json rename to src/addons/addons/clones/l10n/de.json diff --git a/src/addons/addons-l10n/en/clones.json b/src/addons/addons/clones/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/clones.json rename to src/addons/addons/clones/l10n/en.json diff --git a/src/addons/addons-l10n/es/clones.json b/src/addons/addons/clones/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/clones.json rename to src/addons/addons/clones/l10n/es.json diff --git a/src/addons/addons-l10n/fr/clones.json b/src/addons/addons/clones/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/clones.json rename to src/addons/addons/clones/l10n/fr.json diff --git a/src/addons/addons-l10n/it/clones.json b/src/addons/addons/clones/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/clones.json rename to src/addons/addons/clones/l10n/it.json diff --git a/src/addons/addons-l10n/ja/clones.json b/src/addons/addons/clones/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/clones.json rename to src/addons/addons/clones/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/clones.json b/src/addons/addons/clones/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/clones.json rename to src/addons/addons/clones/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/clones.json b/src/addons/addons/clones/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/clones.json rename to src/addons/addons/clones/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/clones.json b/src/addons/addons/clones/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/clones.json rename to src/addons/addons/clones/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/clones.json b/src/addons/addons/clones/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/clones.json rename to src/addons/addons/clones/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/clones.json b/src/addons/addons/clones/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/clones.json rename to src/addons/addons/clones/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/clones.json b/src/addons/addons/clones/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/clones.json rename to src/addons/addons/clones/l10n/sl.json diff --git a/src/addons/addons-l10n/th/clones.json b/src/addons/addons/clones/l10n/th.json similarity index 100% rename from src/addons/addons-l10n/th/clones.json rename to src/addons/addons/clones/l10n/th.json diff --git a/src/addons/addons-l10n/tr/clones.json b/src/addons/addons/clones/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/clones.json rename to src/addons/addons/clones/l10n/tr.json diff --git a/src/addons/addons/clones/run.js b/src/addons/addons/clones/run.js new file mode 100644 index 000000000..3217f406c --- /dev/null +++ b/src/addons/addons/clones/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("clones", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/color-picker/addon.json b/src/addons/addons/color-picker/addon.json index 4955d599b..cafe9c2d9 100644 --- a/src/addons/addons/color-picker/addon.json +++ b/src/addons/addons/color-picker/addon.json @@ -1,7 +1,11 @@ { "name": "Hex color picker", "description": "Adds hex code inputs to color pickers.", - "tags": ["editor", "costumeEditor", "recommended"], + "tags": [ + "editor", + "costumeEditor", + "recommended" + ], "credits": [ { "name": "Richie Bendall" @@ -13,16 +17,18 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "libraries": ["tinycolor2"], - "enabledByDefault": true, - "l10n": true -} + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/color-picker/l10n.js b/src/addons/addons/color-picker/l10n.js new file mode 100644 index 000000000..05dc192b0 --- /dev/null +++ b/src/addons/addons/color-picker/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/color-picker.json b/src/addons/addons/color-picker/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/color-picker.json rename to src/addons/addons/color-picker/l10n/de.json diff --git a/src/addons/addons-l10n/en/color-picker.json b/src/addons/addons/color-picker/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/color-picker.json rename to src/addons/addons/color-picker/l10n/en.json diff --git a/src/addons/addons-l10n/es/color-picker.json b/src/addons/addons/color-picker/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/color-picker.json rename to src/addons/addons/color-picker/l10n/es.json diff --git a/src/addons/addons-l10n/fr/color-picker.json b/src/addons/addons/color-picker/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/color-picker.json rename to src/addons/addons/color-picker/l10n/fr.json diff --git a/src/addons/addons-l10n/it/color-picker.json b/src/addons/addons/color-picker/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/color-picker.json rename to src/addons/addons/color-picker/l10n/it.json diff --git a/src/addons/addons-l10n/ja/color-picker.json b/src/addons/addons/color-picker/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/color-picker.json rename to src/addons/addons/color-picker/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/color-picker.json b/src/addons/addons/color-picker/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/color-picker.json rename to src/addons/addons/color-picker/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/color-picker.json b/src/addons/addons/color-picker/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/color-picker.json rename to src/addons/addons/color-picker/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/color-picker.json b/src/addons/addons/color-picker/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/color-picker.json rename to src/addons/addons/color-picker/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/color-picker.json b/src/addons/addons/color-picker/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/color-picker.json rename to src/addons/addons/color-picker/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/color-picker.json b/src/addons/addons/color-picker/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/color-picker.json rename to src/addons/addons/color-picker/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/color-picker.json b/src/addons/addons/color-picker/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/color-picker.json rename to src/addons/addons/color-picker/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/color-picker.json b/src/addons/addons/color-picker/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/color-picker.json rename to src/addons/addons/color-picker/l10n/tr.json diff --git a/src/addons/addons/color-picker/run.js b/src/addons/addons/color-picker/run.js new file mode 100644 index 000000000..3c284f8ef --- /dev/null +++ b/src/addons/addons/color-picker/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("color-picker", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/custom-block-shape/addon.json b/src/addons/addons/custom-block-shape/addon.json index a07005a5b..380131122 100644 --- a/src/addons/addons/custom-block-shape/addon.json +++ b/src/addons/addons/custom-block-shape/addon.json @@ -1,7 +1,12 @@ { "name": "Custom block shape", "description": "Adjust the padding, corner radius, and notch height of Scratch blocks.", - "tags": ["editor", "codeEditor", "theme", "recommended"], + "tags": [ + "editor", + "codeEditor", + "theme", + "recommended" + ], "credits": [ { "name": "SheepTester", @@ -20,7 +25,9 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "info": [ @@ -100,6 +107,5 @@ "notchSize": 0 } } - ], - "l10n": true -} + ] +} \ No newline at end of file diff --git a/src/addons/addons/custom-block-shape/l10n.js b/src/addons/addons/custom-block-shape/l10n.js new file mode 100644 index 000000000..7591241bd --- /dev/null +++ b/src/addons/addons/custom-block-shape/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/de.json diff --git a/src/addons/addons-l10n/es/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/es.json diff --git a/src/addons/addons-l10n/fr/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/fr.json diff --git a/src/addons/addons-l10n/it/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/it.json diff --git a/src/addons/addons-l10n/ja/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/custom-block-shape.json b/src/addons/addons/custom-block-shape/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/custom-block-shape.json rename to src/addons/addons/custom-block-shape/l10n/tr.json diff --git a/src/addons/addons/custom-block-shape/run.js b/src/addons/addons/custom-block-shape/run.js new file mode 100644 index 000000000..892ca8ff3 --- /dev/null +++ b/src/addons/addons/custom-block-shape/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("custom-block-shape", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/custom-zoom/addon.json b/src/addons/addons/custom-zoom/addon.json index 0f64d0172..d750cfc06 100644 --- a/src/addons/addons/custom-zoom/addon.json +++ b/src/addons/addons/custom-zoom/addon.json @@ -1,7 +1,10 @@ { "name": "Custom scripts area zoom settings", "description": "Adjust the minimum, maximum, speed, and start size of the zoom in the project code editor, and autohide the controls.", - "tags": ["editor", "codeEditor"], + "tags": [ + "editor", + "codeEditor" + ], "credits": [ { "name": "ErrorGamer2000", @@ -12,13 +15,17 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -89,6 +96,5 @@ "default": "default", "reloadRequired": false } - ], - "l10n": true -} + ] +} \ No newline at end of file diff --git a/src/addons/addons/custom-zoom/l10n.js b/src/addons/addons/custom-zoom/l10n.js new file mode 100644 index 000000000..312990305 --- /dev/null +++ b/src/addons/addons/custom-zoom/l10n.js @@ -0,0 +1,15 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), +}; diff --git a/src/addons/addons-l10n/de/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/de.json diff --git a/src/addons/addons-l10n/es/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/es.json diff --git a/src/addons/addons-l10n/fr/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/fr.json diff --git a/src/addons/addons-l10n/it/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/it.json diff --git a/src/addons/addons-l10n/ja/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/custom-zoom.json b/src/addons/addons/custom-zoom/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/custom-zoom.json rename to src/addons/addons/custom-zoom/l10n/sv.json diff --git a/src/addons/addons/custom-zoom/run.js b/src/addons/addons/custom-zoom/run.js new file mode 100644 index 000000000..f2c024647 --- /dev/null +++ b/src/addons/addons/custom-zoom/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("custom-zoom", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/data-category-tweaks-v2/addon.json b/src/addons/addons/data-category-tweaks-v2/addon.json index bb065747b..c2eb5da93 100644 --- a/src/addons/addons/data-category-tweaks-v2/addon.json +++ b/src/addons/addons/data-category-tweaks-v2/addon.json @@ -9,7 +9,9 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "runAtComplete": false } ], @@ -36,7 +38,10 @@ "reloadRequired": false } ], - "tags": ["editor", "codeEditor", "recommended"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "codeEditor", + "recommended" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/data-category-tweaks-v2/l10n.js b/src/addons/addons/data-category-tweaks-v2/l10n.js new file mode 100644 index 000000000..6d74e0f1f --- /dev/null +++ b/src/addons/addons/data-category-tweaks-v2/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/ar.json diff --git a/src/addons/addons-l10n/de/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/de.json diff --git a/src/addons/addons-l10n/en/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/en.json diff --git a/src/addons/addons-l10n/es/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/es.json diff --git a/src/addons/addons-l10n/fr/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/fr.json diff --git a/src/addons/addons-l10n/it/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/it.json diff --git a/src/addons/addons-l10n/ja/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/data-category-tweaks-v2.json b/src/addons/addons/data-category-tweaks-v2/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/data-category-tweaks-v2.json rename to src/addons/addons/data-category-tweaks-v2/l10n/tr.json diff --git a/src/addons/addons/data-category-tweaks-v2/run.js b/src/addons/addons/data-category-tweaks-v2/run.js new file mode 100644 index 000000000..1b93c941a --- /dev/null +++ b/src/addons/addons/data-category-tweaks-v2/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("data-category-tweaks-v2", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/drag-drop/addon.json b/src/addons/addons/drag-drop/addon.json index 5aed876b3..3e0343201 100644 --- a/src/addons/addons/drag-drop/addon.json +++ b/src/addons/addons/drag-drop/addon.json @@ -9,16 +9,22 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "dragged-over.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/drag-drop/l10n.js b/src/addons/addons/drag-drop/l10n.js new file mode 100644 index 000000000..defeaa76b --- /dev/null +++ b/src/addons/addons/drag-drop/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/drag-drop.json b/src/addons/addons/drag-drop/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/drag-drop.json rename to src/addons/addons/drag-drop/l10n/de.json diff --git a/src/addons/addons-l10n/es/drag-drop.json b/src/addons/addons/drag-drop/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/drag-drop.json rename to src/addons/addons/drag-drop/l10n/es.json diff --git a/src/addons/addons-l10n/fr/drag-drop.json b/src/addons/addons/drag-drop/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/drag-drop.json rename to src/addons/addons/drag-drop/l10n/fr.json diff --git a/src/addons/addons-l10n/it/drag-drop.json b/src/addons/addons/drag-drop/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/drag-drop.json rename to src/addons/addons/drag-drop/l10n/it.json diff --git a/src/addons/addons-l10n/ja/drag-drop.json b/src/addons/addons/drag-drop/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/drag-drop.json rename to src/addons/addons/drag-drop/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/drag-drop.json b/src/addons/addons/drag-drop/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/drag-drop.json rename to src/addons/addons/drag-drop/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/drag-drop.json b/src/addons/addons/drag-drop/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/drag-drop.json rename to src/addons/addons/drag-drop/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/drag-drop.json b/src/addons/addons/drag-drop/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/drag-drop.json rename to src/addons/addons/drag-drop/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/drag-drop.json b/src/addons/addons/drag-drop/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/drag-drop.json rename to src/addons/addons/drag-drop/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/drag-drop.json b/src/addons/addons/drag-drop/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/drag-drop.json rename to src/addons/addons/drag-drop/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/drag-drop.json b/src/addons/addons/drag-drop/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/drag-drop.json rename to src/addons/addons/drag-drop/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/drag-drop.json b/src/addons/addons/drag-drop/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/drag-drop.json rename to src/addons/addons/drag-drop/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/drag-drop.json b/src/addons/addons/drag-drop/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/drag-drop.json rename to src/addons/addons/drag-drop/l10n/tr.json diff --git a/src/addons/addons/drag-drop/run.js b/src/addons/addons/drag-drop/run.js new file mode 100644 index 000000000..1f94521c9 --- /dev/null +++ b/src/addons/addons/drag-drop/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("drag-drop", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("dragged-over.css", () => require("!!raw-loader!./dragged-over.css")); +runner.run(); diff --git a/src/addons/addons/editor-colored-context-menus/addon.json b/src/addons/addons/editor-colored-context-menus/addon.json index 4a958a734..19d1f0390 100644 --- a/src/addons/addons/editor-colored-context-menus/addon.json +++ b/src/addons/addons/editor-colored-context-menus/addon.json @@ -6,22 +6,26 @@ "name": "GarboMuffin" } ], - "dynamicEnable": true, - "dynamicDisable": true, - "injectAsStyleElt": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "userscript.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "codeEditor", "theme"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "codeEditor", + "theme" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/editor-colored-context-menus/l10n.js b/src/addons/addons/editor-colored-context-menus/l10n.js new file mode 100644 index 000000000..defeaa76b --- /dev/null +++ b/src/addons/addons/editor-colored-context-menus/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/de.json diff --git a/src/addons/addons-l10n/es/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/editor-colored-context-menus.json b/src/addons/addons/editor-colored-context-menus/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-colored-context-menus.json rename to src/addons/addons/editor-colored-context-menus/l10n/tr.json diff --git a/src/addons/addons/editor-colored-context-menus/run.js b/src/addons/addons/editor-colored-context-menus/run.js new file mode 100644 index 000000000..b00c3184b --- /dev/null +++ b/src/addons/addons/editor-colored-context-menus/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-colored-context-menus", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("userscript.css", () => require("!!raw-loader!./userscript.css")); +runner.run(); diff --git a/src/addons/addons/editor-devtools/addon.json b/src/addons/addons/editor-devtools/addon.json index e48582b43..97f2002c7 100644 --- a/src/addons/addons/editor-devtools/addon.json +++ b/src/addons/addons/editor-devtools/addon.json @@ -36,16 +36,24 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "userscript.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "codeEditor", "costumeEditor", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "codeEditor", + "costumeEditor", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/editor-devtools/l10n.js b/src/addons/addons/editor-devtools/l10n.js new file mode 100644 index 000000000..5a37b63e6 --- /dev/null +++ b/src/addons/addons/editor-devtools/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "th": () => require("./l10n/th.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/ar.json diff --git a/src/addons/addons-l10n/de/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/de.json diff --git a/src/addons/addons-l10n/en/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/en.json diff --git a/src/addons/addons-l10n/es/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/ja.json diff --git a/src/addons/addons-l10n/nl/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/sl.json diff --git a/src/addons/addons-l10n/th/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/th.json similarity index 100% rename from src/addons/addons-l10n/th/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/th.json diff --git a/src/addons/addons-l10n/tr/editor-devtools.json b/src/addons/addons/editor-devtools/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-devtools.json rename to src/addons/addons/editor-devtools/l10n/tr.json diff --git a/src/addons/addons/editor-devtools/run.js b/src/addons/addons/editor-devtools/run.js new file mode 100644 index 000000000..334e17898 --- /dev/null +++ b/src/addons/addons/editor-devtools/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-devtools", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("userscript.css", () => require("!!raw-loader!./userscript.css")); +runner.run(); diff --git a/src/addons/addons/editor-searchable-dropdowns/addon.json b/src/addons/addons/editor-searchable-dropdowns/addon.json index 22208c821..069dcc084 100644 --- a/src/addons/addons/editor-searchable-dropdowns/addon.json +++ b/src/addons/addons/editor-searchable-dropdowns/addon.json @@ -6,21 +6,26 @@ "name": "GarboMuffin" } ], - "dynamicEnable": true, - "dynamicDisable": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "userscript.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "codeEditor", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "codeEditor", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/editor-searchable-dropdowns/l10n.js b/src/addons/addons/editor-searchable-dropdowns/l10n.js new file mode 100644 index 000000000..7be679ab7 --- /dev/null +++ b/src/addons/addons/editor-searchable-dropdowns/l10n.js @@ -0,0 +1,15 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/de.json diff --git a/src/addons/addons-l10n/es/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/ja.json diff --git a/src/addons/addons-l10n/nl/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/editor-searchable-dropdowns.json b/src/addons/addons/editor-searchable-dropdowns/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-searchable-dropdowns.json rename to src/addons/addons/editor-searchable-dropdowns/l10n/tr.json diff --git a/src/addons/addons/editor-searchable-dropdowns/run.js b/src/addons/addons/editor-searchable-dropdowns/run.js new file mode 100644 index 000000000..281525767 --- /dev/null +++ b/src/addons/addons/editor-searchable-dropdowns/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-searchable-dropdowns", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("userscript.css", () => require("!!raw-loader!./userscript.css")); +runner.run(); diff --git a/src/addons/addons/editor-sounds/addon.json b/src/addons/addons/editor-sounds/addon.json index 7cf6d4888..48d8ef024 100644 --- a/src/addons/addons/editor-sounds/addon.json +++ b/src/addons/addons/editor-sounds/addon.json @@ -9,11 +9,14 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "codeEditor"], - "versionAdded": "1.14.0", - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "codeEditor" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/editor-sounds/l10n.js b/src/addons/addons/editor-sounds/l10n.js new file mode 100644 index 000000000..9c2455bf4 --- /dev/null +++ b/src/addons/addons/editor-sounds/l10n.js @@ -0,0 +1,15 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/de.json diff --git a/src/addons/addons-l10n/es/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/editor-sounds.json b/src/addons/addons/editor-sounds/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-sounds.json rename to src/addons/addons/editor-sounds/l10n/tr.json diff --git a/src/addons/addons/editor-sounds/run.js b/src/addons/addons/editor-sounds/run.js new file mode 100644 index 000000000..a10776411 --- /dev/null +++ b/src/addons/addons/editor-sounds/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-sounds", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/editor-stage-left/addon.json b/src/addons/addons/editor-stage-left/addon.json index f05275585..91dfcb6f8 100644 --- a/src/addons/addons/editor-stage-left/addon.json +++ b/src/addons/addons/editor-stage-left/addon.json @@ -9,19 +9,23 @@ "userscripts": [ { "url": "fix-share-the-love.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "dynamicEnable": true, - "dynamicDisable": true, - "injectAsStyleElt": true, "userstyles": [ { "url": "stageleft.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "theme", "recommended"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "theme", + "recommended" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/editor-stage-left/l10n.js b/src/addons/addons/editor-stage-left/l10n.js new file mode 100644 index 000000000..defeaa76b --- /dev/null +++ b/src/addons/addons/editor-stage-left/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/de.json diff --git a/src/addons/addons-l10n/es/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/editor-stage-left.json b/src/addons/addons/editor-stage-left/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-stage-left.json rename to src/addons/addons/editor-stage-left/l10n/tr.json diff --git a/src/addons/addons/editor-stage-left/run.js b/src/addons/addons/editor-stage-left/run.js new file mode 100644 index 000000000..c5f8741e7 --- /dev/null +++ b/src/addons/addons/editor-stage-left/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-stage-left", manifest); +runner.l10n(l10n); +runner.userscript("fix-share-the-love.js", () => require("./fix-share-the-love.js")); +runner.userstyle("stageleft.css", () => require("!!raw-loader!./stageleft.css")); +runner.run(); diff --git a/src/addons/addons/editor-theme3/addon.json b/src/addons/addons/editor-theme3/addon.json index b03db7c73..e6614dd03 100644 --- a/src/addons/addons/editor-theme3/addon.json +++ b/src/addons/addons/editor-theme3/addon.json @@ -17,20 +17,20 @@ "link": "https://scratch.mit.edu/users/TheColaber" } ], - "dynamicEnable": true, - "dynamicDisable": true, - "injectAsStyleElt": true, - "userscripts": [ { "url": "theme3.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "theme3.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -163,7 +163,12 @@ "reloadRequired": false } ], - "tags": ["editor", "theme", "codeEditor", "recommended"], + "tags": [ + "editor", + "theme", + "codeEditor", + "recommended" + ], "enabledByDefault": false, "presets": [ { @@ -246,6 +251,5 @@ "text": "colorOnBlack" } } - ], - "l10n": true -} + ] +} \ No newline at end of file diff --git a/src/addons/addons/editor-theme3/l10n.js b/src/addons/addons/editor-theme3/l10n.js new file mode 100644 index 000000000..637effc71 --- /dev/null +++ b/src/addons/addons/editor-theme3/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/ar.json diff --git a/src/addons/addons-l10n/de/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/de.json diff --git a/src/addons/addons-l10n/es/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/es.json diff --git a/src/addons/addons-l10n/fr/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/fr.json diff --git a/src/addons/addons-l10n/it/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/it.json diff --git a/src/addons/addons-l10n/ja/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/editor-theme3.json b/src/addons/addons/editor-theme3/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/editor-theme3.json rename to src/addons/addons/editor-theme3/l10n/tr.json diff --git a/src/addons/addons/editor-theme3/run.js b/src/addons/addons/editor-theme3/run.js new file mode 100644 index 000000000..12965f8a5 --- /dev/null +++ b/src/addons/addons/editor-theme3/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("editor-theme3", manifest); +runner.l10n(l10n); +runner.userscript("theme3.js", () => require("./theme3.js")); +runner.userstyle("theme3.css", () => require("!!raw-loader!./theme3.css")); +runner.run(); diff --git a/src/addons/addons/folders/addon.json b/src/addons/addons/folders/addon.json index cddb606d0..d81fd39ab 100644 --- a/src/addons/addons/folders/addon.json +++ b/src/addons/addons/folders/addon.json @@ -21,17 +21,23 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "runAtComplete": false } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/folders/l10n.js b/src/addons/addons/folders/l10n.js new file mode 100644 index 000000000..caa311f43 --- /dev/null +++ b/src/addons/addons/folders/l10n.js @@ -0,0 +1,19 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/folders.json b/src/addons/addons/folders/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/folders.json rename to src/addons/addons/folders/l10n/ar.json diff --git a/src/addons/addons-l10n/de/folders.json b/src/addons/addons/folders/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/folders.json rename to src/addons/addons/folders/l10n/de.json diff --git a/src/addons/addons-l10n/en/folders.json b/src/addons/addons/folders/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/folders.json rename to src/addons/addons/folders/l10n/en.json diff --git a/src/addons/addons-l10n/es/folders.json b/src/addons/addons/folders/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/folders.json rename to src/addons/addons/folders/l10n/es.json diff --git a/src/addons/addons-l10n/fr/folders.json b/src/addons/addons/folders/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/folders.json rename to src/addons/addons/folders/l10n/fr.json diff --git a/src/addons/addons-l10n/it/folders.json b/src/addons/addons/folders/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/folders.json rename to src/addons/addons/folders/l10n/it.json diff --git a/src/addons/addons-l10n/ja/folders.json b/src/addons/addons/folders/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/folders.json rename to src/addons/addons/folders/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/folders.json b/src/addons/addons/folders/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/folders.json rename to src/addons/addons/folders/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/folders.json b/src/addons/addons/folders/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/folders.json rename to src/addons/addons/folders/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/folders.json b/src/addons/addons/folders/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/folders.json rename to src/addons/addons/folders/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/folders.json b/src/addons/addons/folders/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/folders.json rename to src/addons/addons/folders/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/folders.json b/src/addons/addons/folders/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/folders.json rename to src/addons/addons/folders/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/folders.json b/src/addons/addons/folders/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/folders.json rename to src/addons/addons/folders/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/folders.json b/src/addons/addons/folders/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/folders.json rename to src/addons/addons/folders/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/folders.json b/src/addons/addons/folders/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/folders.json rename to src/addons/addons/folders/l10n/sv.json diff --git a/src/addons/addons-l10n/tr/folders.json b/src/addons/addons/folders/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/folders.json rename to src/addons/addons/folders/l10n/tr.json diff --git a/src/addons/addons/folders/run.js b/src/addons/addons/folders/run.js new file mode 100644 index 000000000..d81ff106f --- /dev/null +++ b/src/addons/addons/folders/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("folders", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/gamepad/addon.json b/src/addons/addons/gamepad/addon.json index dba0aae5c..70acb10e6 100644 --- a/src/addons/addons/gamepad/addon.json +++ b/src/addons/addons/gamepad/addon.json @@ -16,21 +16,28 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] }, { "url": "gamepadlib.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "beta"], - "versionAdded": "1.14.0", - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "beta" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/gamepad/l10n.js b/src/addons/addons/gamepad/l10n.js new file mode 100644 index 000000000..05dc192b0 --- /dev/null +++ b/src/addons/addons/gamepad/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/gamepad.json b/src/addons/addons/gamepad/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/gamepad.json rename to src/addons/addons/gamepad/l10n/de.json diff --git a/src/addons/addons-l10n/en/gamepad.json b/src/addons/addons/gamepad/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/gamepad.json rename to src/addons/addons/gamepad/l10n/en.json diff --git a/src/addons/addons-l10n/es/gamepad.json b/src/addons/addons/gamepad/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/gamepad.json rename to src/addons/addons/gamepad/l10n/es.json diff --git a/src/addons/addons-l10n/fr/gamepad.json b/src/addons/addons/gamepad/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/gamepad.json rename to src/addons/addons/gamepad/l10n/fr.json diff --git a/src/addons/addons-l10n/it/gamepad.json b/src/addons/addons/gamepad/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/gamepad.json rename to src/addons/addons/gamepad/l10n/it.json diff --git a/src/addons/addons-l10n/ja/gamepad.json b/src/addons/addons/gamepad/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/gamepad.json rename to src/addons/addons/gamepad/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/gamepad.json b/src/addons/addons/gamepad/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/gamepad.json rename to src/addons/addons/gamepad/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/gamepad.json b/src/addons/addons/gamepad/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/gamepad.json rename to src/addons/addons/gamepad/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/gamepad.json b/src/addons/addons/gamepad/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/gamepad.json rename to src/addons/addons/gamepad/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/gamepad.json b/src/addons/addons/gamepad/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/gamepad.json rename to src/addons/addons/gamepad/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/gamepad.json b/src/addons/addons/gamepad/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/gamepad.json rename to src/addons/addons/gamepad/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/gamepad.json b/src/addons/addons/gamepad/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/gamepad.json rename to src/addons/addons/gamepad/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/gamepad.json b/src/addons/addons/gamepad/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/gamepad.json rename to src/addons/addons/gamepad/l10n/tr.json diff --git a/src/addons/addons/gamepad/run.js b/src/addons/addons/gamepad/run.js new file mode 100644 index 000000000..b93bdce06 --- /dev/null +++ b/src/addons/addons/gamepad/run.js @@ -0,0 +1,10 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("gamepad", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.userstyle("gamepadlib.css", () => require("!!raw-loader!./gamepadlib.css")); +runner.run(); diff --git a/src/addons/addons/hide-flyout/addon.json b/src/addons/addons/hide-flyout/addon.json index 3d40f83cb..5c5a80848 100644 --- a/src/addons/addons/hide-flyout/addon.json +++ b/src/addons/addons/hide-flyout/addon.json @@ -17,13 +17,17 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -73,6 +77,9 @@ "default": "default" } ], - "tags": ["editor", "codeEditor", "recommended"], - "l10n": true -} + "tags": [ + "editor", + "codeEditor", + "recommended" + ] +} \ No newline at end of file diff --git a/src/addons/addons/hide-flyout/l10n.js b/src/addons/addons/hide-flyout/l10n.js new file mode 100644 index 000000000..220825c68 --- /dev/null +++ b/src/addons/addons/hide-flyout/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/ar.json diff --git a/src/addons/addons-l10n/de/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/de.json diff --git a/src/addons/addons-l10n/es/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/es.json diff --git a/src/addons/addons-l10n/fr/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/fr.json diff --git a/src/addons/addons-l10n/it/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/it.json diff --git a/src/addons/addons-l10n/ja/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/hide-flyout.json b/src/addons/addons/hide-flyout/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/hide-flyout.json rename to src/addons/addons/hide-flyout/l10n/tr.json diff --git a/src/addons/addons/hide-flyout/run.js b/src/addons/addons/hide-flyout/run.js new file mode 100644 index 000000000..fcecc8315 --- /dev/null +++ b/src/addons/addons/hide-flyout/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("hide-flyout", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/initialise-sprite-position/addon.json b/src/addons/addons/initialise-sprite-position/addon.json index 8c0730a50..9f0f2e60c 100644 --- a/src/addons/addons/initialise-sprite-position/addon.json +++ b/src/addons/addons/initialise-sprite-position/addon.json @@ -10,7 +10,9 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -40,7 +42,8 @@ "reloadRequired": false } ], - "tags": ["editor"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/initialise-sprite-position/l10n.js b/src/addons/addons/initialise-sprite-position/l10n.js new file mode 100644 index 000000000..e3a268f7f --- /dev/null +++ b/src/addons/addons/initialise-sprite-position/l10n.js @@ -0,0 +1,14 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "sv": () => require("./l10n/sv.json"), +}; diff --git a/src/addons/addons-l10n/de/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/de.json diff --git a/src/addons/addons-l10n/es/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/es.json diff --git a/src/addons/addons-l10n/fr/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/fr.json diff --git a/src/addons/addons-l10n/it/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/it.json diff --git a/src/addons/addons-l10n/ja/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ru/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/sl.json diff --git a/src/addons/addons-l10n/sv/initialise-sprite-position.json b/src/addons/addons/initialise-sprite-position/l10n/sv.json similarity index 100% rename from src/addons/addons-l10n/sv/initialise-sprite-position.json rename to src/addons/addons/initialise-sprite-position/l10n/sv.json diff --git a/src/addons/addons/initialise-sprite-position/run.js b/src/addons/addons/initialise-sprite-position/run.js new file mode 100644 index 000000000..2fccd128e --- /dev/null +++ b/src/addons/addons/initialise-sprite-position/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("initialise-sprite-position", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/load-extensions/addon.json b/src/addons/addons/load-extensions/addon.json index 5be6a7aa7..a6fe70427 100644 --- a/src/addons/addons/load-extensions/addon.json +++ b/src/addons/addons/load-extensions/addon.json @@ -4,7 +4,9 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -33,6 +35,8 @@ "default": false } ], - "tags": ["editor", "codeEditor"], - "l10n": true -} + "tags": [ + "editor", + "codeEditor" + ] +} \ No newline at end of file diff --git a/src/addons/addons/load-extensions/l10n.js b/src/addons/addons/load-extensions/l10n.js new file mode 100644 index 000000000..fc6bc0c20 --- /dev/null +++ b/src/addons/addons/load-extensions/l10n.js @@ -0,0 +1,19 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "id": () => require("./l10n/id.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "th": () => require("./l10n/th.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/load-extensions.json b/src/addons/addons/load-extensions/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/load-extensions.json rename to src/addons/addons/load-extensions/l10n/ar.json diff --git a/src/addons/addons-l10n/de/load-extensions.json b/src/addons/addons/load-extensions/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/load-extensions.json rename to src/addons/addons/load-extensions/l10n/de.json diff --git a/src/addons/addons-l10n/es/load-extensions.json b/src/addons/addons/load-extensions/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/load-extensions.json rename to src/addons/addons/load-extensions/l10n/es.json diff --git a/src/addons/addons-l10n/fr/load-extensions.json b/src/addons/addons/load-extensions/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/load-extensions.json rename to src/addons/addons/load-extensions/l10n/fr.json diff --git a/src/addons/addons-l10n/id/load-extensions.json b/src/addons/addons/load-extensions/l10n/id.json similarity index 100% rename from src/addons/addons-l10n/id/load-extensions.json rename to src/addons/addons/load-extensions/l10n/id.json diff --git a/src/addons/addons-l10n/it/load-extensions.json b/src/addons/addons/load-extensions/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/load-extensions.json rename to src/addons/addons/load-extensions/l10n/it.json diff --git a/src/addons/addons-l10n/ja/load-extensions.json b/src/addons/addons/load-extensions/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/load-extensions.json rename to src/addons/addons/load-extensions/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/load-extensions.json b/src/addons/addons/load-extensions/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/load-extensions.json rename to src/addons/addons/load-extensions/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/load-extensions.json b/src/addons/addons/load-extensions/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/load-extensions.json rename to src/addons/addons/load-extensions/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/load-extensions.json b/src/addons/addons/load-extensions/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/load-extensions.json rename to src/addons/addons/load-extensions/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/load-extensions.json b/src/addons/addons/load-extensions/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/load-extensions.json rename to src/addons/addons/load-extensions/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/load-extensions.json b/src/addons/addons/load-extensions/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/load-extensions.json rename to src/addons/addons/load-extensions/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/load-extensions.json b/src/addons/addons/load-extensions/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/load-extensions.json rename to src/addons/addons/load-extensions/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/load-extensions.json b/src/addons/addons/load-extensions/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/load-extensions.json rename to src/addons/addons/load-extensions/l10n/sl.json diff --git a/src/addons/addons-l10n/th/load-extensions.json b/src/addons/addons/load-extensions/l10n/th.json similarity index 100% rename from src/addons/addons-l10n/th/load-extensions.json rename to src/addons/addons/load-extensions/l10n/th.json diff --git a/src/addons/addons-l10n/tr/load-extensions.json b/src/addons/addons/load-extensions/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/load-extensions.json rename to src/addons/addons/load-extensions/l10n/tr.json diff --git a/src/addons/addons/load-extensions/run.js b/src/addons/addons/load-extensions/run.js new file mode 100644 index 000000000..42c243e02 --- /dev/null +++ b/src/addons/addons/load-extensions/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("load-extensions", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/mediarecorder/addon.json b/src/addons/addons/mediarecorder/addon.json index 1cfa87396..cf2eb178b 100644 --- a/src/addons/addons/mediarecorder/addon.json +++ b/src/addons/addons/mediarecorder/addon.json @@ -1,20 +1,29 @@ { "name": "Record project video", "description": "Adds a \"start recording\" button to the editor that allows you to record the project's stage.", - "tags": ["editor", "editorMenuBar", "recommended"], + "tags": [ + "editor", + "editorMenuBar", + "recommended" + ], "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "permissions": ["mediaRecorder"], - "enabledByDefault": false, - "l10n": true -} + "permissions": [ + "mediaRecorder" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/mediarecorder/l10n.js b/src/addons/addons/mediarecorder/l10n.js new file mode 100644 index 000000000..05dc192b0 --- /dev/null +++ b/src/addons/addons/mediarecorder/l10n.js @@ -0,0 +1,16 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/de.json diff --git a/src/addons/addons-l10n/en/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/en.json diff --git a/src/addons/addons-l10n/es/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/es.json diff --git a/src/addons/addons-l10n/fr/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/fr.json diff --git a/src/addons/addons-l10n/it/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/it.json diff --git a/src/addons/addons-l10n/ja/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/mediarecorder.json b/src/addons/addons/mediarecorder/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/mediarecorder.json rename to src/addons/addons/mediarecorder/l10n/tr.json diff --git a/src/addons/addons/mediarecorder/run.js b/src/addons/addons/mediarecorder/run.js new file mode 100644 index 000000000..d18b8fda3 --- /dev/null +++ b/src/addons/addons/mediarecorder/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("mediarecorder", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/mouse-pos/addon.json b/src/addons/addons/mouse-pos/addon.json index af8352317..d26dbf5d0 100644 --- a/src/addons/addons/mouse-pos/addon.json +++ b/src/addons/addons/mouse-pos/addon.json @@ -6,21 +6,26 @@ "name": "Jeffalo" } ], - "dynamicEnable": true, - "dynamicDisable": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "projectPlayer", "recommended"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "projectPlayer", + "recommended" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/mouse-pos/l10n.js b/src/addons/addons/mouse-pos/l10n.js new file mode 100644 index 000000000..9c2455bf4 --- /dev/null +++ b/src/addons/addons/mouse-pos/l10n.js @@ -0,0 +1,15 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/de.json diff --git a/src/addons/addons-l10n/es/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/es.json diff --git a/src/addons/addons-l10n/fr/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/fr.json diff --git a/src/addons/addons-l10n/it/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/it.json diff --git a/src/addons/addons-l10n/ja/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/mouse-pos.json b/src/addons/addons/mouse-pos/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/mouse-pos.json rename to src/addons/addons/mouse-pos/l10n/tr.json diff --git a/src/addons/addons/mouse-pos/run.js b/src/addons/addons/mouse-pos/run.js new file mode 100644 index 000000000..0074ef28f --- /dev/null +++ b/src/addons/addons/mouse-pos/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("mouse-pos", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/mute-project/addon.json b/src/addons/addons/mute-project/addon.json index 680319380..f41459d52 100644 --- a/src/addons/addons/mute-project/addon.json +++ b/src/addons/addons/mute-project/addon.json @@ -10,10 +10,15 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "projectPlayer", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "projectPlayer", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/mute-project/l10n.js b/src/addons/addons/mute-project/l10n.js new file mode 100644 index 000000000..71f43be3b --- /dev/null +++ b/src/addons/addons/mute-project/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/mute-project.json b/src/addons/addons/mute-project/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/mute-project.json rename to src/addons/addons/mute-project/l10n/ar.json diff --git a/src/addons/addons-l10n/de/mute-project.json b/src/addons/addons/mute-project/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/mute-project.json rename to src/addons/addons/mute-project/l10n/de.json diff --git a/src/addons/addons-l10n/es/mute-project.json b/src/addons/addons/mute-project/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/mute-project.json rename to src/addons/addons/mute-project/l10n/es.json diff --git a/src/addons/addons-l10n/fr/mute-project.json b/src/addons/addons/mute-project/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/mute-project.json rename to src/addons/addons/mute-project/l10n/fr.json diff --git a/src/addons/addons-l10n/it/mute-project.json b/src/addons/addons/mute-project/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/mute-project.json rename to src/addons/addons/mute-project/l10n/it.json diff --git a/src/addons/addons-l10n/ja/mute-project.json b/src/addons/addons/mute-project/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/mute-project.json rename to src/addons/addons/mute-project/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/mute-project.json b/src/addons/addons/mute-project/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/mute-project.json rename to src/addons/addons/mute-project/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/mute-project.json b/src/addons/addons/mute-project/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/mute-project.json rename to src/addons/addons/mute-project/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/mute-project.json b/src/addons/addons/mute-project/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/mute-project.json rename to src/addons/addons/mute-project/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/mute-project.json b/src/addons/addons/mute-project/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/mute-project.json rename to src/addons/addons/mute-project/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/mute-project.json b/src/addons/addons/mute-project/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/mute-project.json rename to src/addons/addons/mute-project/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/mute-project.json b/src/addons/addons/mute-project/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/mute-project.json rename to src/addons/addons/mute-project/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/mute-project.json b/src/addons/addons/mute-project/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/mute-project.json rename to src/addons/addons/mute-project/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/mute-project.json b/src/addons/addons/mute-project/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/mute-project.json rename to src/addons/addons/mute-project/l10n/tr.json diff --git a/src/addons/addons/mute-project/run.js b/src/addons/addons/mute-project/run.js new file mode 100644 index 000000000..990a31f13 --- /dev/null +++ b/src/addons/addons/mute-project/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("mute-project", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/onion-skinning/addon.json b/src/addons/addons/onion-skinning/addon.json index fec013b45..7984982c1 100644 --- a/src/addons/addons/onion-skinning/addon.json +++ b/src/addons/addons/onion-skinning/addon.json @@ -9,14 +9,18 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "runAtComplete": false } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "settings": [ @@ -103,7 +107,10 @@ "default": "#0000FF" } ], - "tags": ["editor", "costumeEditor", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "costumeEditor", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/onion-skinning/l10n.js b/src/addons/addons/onion-skinning/l10n.js new file mode 100644 index 000000000..6d74e0f1f --- /dev/null +++ b/src/addons/addons/onion-skinning/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/ar.json diff --git a/src/addons/addons-l10n/de/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/de.json diff --git a/src/addons/addons-l10n/en/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/en.json diff --git a/src/addons/addons-l10n/es/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/es.json diff --git a/src/addons/addons-l10n/fr/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/fr.json diff --git a/src/addons/addons-l10n/it/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/it.json diff --git a/src/addons/addons-l10n/ja/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/onion-skinning.json b/src/addons/addons/onion-skinning/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/onion-skinning.json rename to src/addons/addons/onion-skinning/l10n/tr.json diff --git a/src/addons/addons/onion-skinning/run.js b/src/addons/addons/onion-skinning/run.js new file mode 100644 index 000000000..92dff556d --- /dev/null +++ b/src/addons/addons/onion-skinning/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("onion-skinning", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/pause/addon.json b/src/addons/addons/pause/addon.json index b28d01903..9959316eb 100644 --- a/src/addons/addons/pause/addon.json +++ b/src/addons/addons/pause/addon.json @@ -9,21 +9,26 @@ "name": "GarboMuffin" } ], - "dynamicEnable": true, - "dynamicDisable": true, "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "projectPlayer", "recommended"], - "enabledByDefault": true, - "l10n": true -} + "tags": [ + "editor", + "projectPlayer", + "recommended" + ], + "enabledByDefault": true +} \ No newline at end of file diff --git a/src/addons/addons/pause/l10n.js b/src/addons/addons/pause/l10n.js new file mode 100644 index 000000000..b1a2ae5d6 --- /dev/null +++ b/src/addons/addons/pause/l10n.js @@ -0,0 +1,17 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "th": () => require("./l10n/th.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/pause.json b/src/addons/addons/pause/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/pause.json rename to src/addons/addons/pause/l10n/de.json diff --git a/src/addons/addons-l10n/en/pause.json b/src/addons/addons/pause/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/pause.json rename to src/addons/addons/pause/l10n/en.json diff --git a/src/addons/addons-l10n/es/pause.json b/src/addons/addons/pause/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/pause.json rename to src/addons/addons/pause/l10n/es.json diff --git a/src/addons/addons-l10n/fr/pause.json b/src/addons/addons/pause/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/pause.json rename to src/addons/addons/pause/l10n/fr.json diff --git a/src/addons/addons-l10n/it/pause.json b/src/addons/addons/pause/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/pause.json rename to src/addons/addons/pause/l10n/it.json diff --git a/src/addons/addons-l10n/ja/pause.json b/src/addons/addons/pause/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/pause.json rename to src/addons/addons/pause/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/pause.json b/src/addons/addons/pause/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/pause.json rename to src/addons/addons/pause/l10n/ko.json diff --git a/src/addons/addons-l10n/pl/pause.json b/src/addons/addons/pause/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/pause.json rename to src/addons/addons/pause/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/pause.json b/src/addons/addons/pause/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/pause.json rename to src/addons/addons/pause/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/pause.json b/src/addons/addons/pause/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/pause.json rename to src/addons/addons/pause/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/pause.json b/src/addons/addons/pause/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/pause.json rename to src/addons/addons/pause/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/pause.json b/src/addons/addons/pause/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/pause.json rename to src/addons/addons/pause/l10n/sl.json diff --git a/src/addons/addons-l10n/th/pause.json b/src/addons/addons/pause/l10n/th.json similarity index 100% rename from src/addons/addons-l10n/th/pause.json rename to src/addons/addons/pause/l10n/th.json diff --git a/src/addons/addons-l10n/tr/pause.json b/src/addons/addons/pause/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/pause.json rename to src/addons/addons/pause/l10n/tr.json diff --git a/src/addons/addons/pause/run.js b/src/addons/addons/pause/run.js new file mode 100644 index 000000000..cebc5e058 --- /dev/null +++ b/src/addons/addons/pause/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("pause", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/addons/remove-curved-stage-border/addon.json b/src/addons/addons/remove-curved-stage-border/addon.json index 55badd25b..5d85dfc7f 100644 --- a/src/addons/addons/remove-curved-stage-border/addon.json +++ b/src/addons/addons/remove-curved-stage-border/addon.json @@ -1,8 +1,11 @@ { "name": "Remove curved stage border", "description": "Removes the curved border around the stage, allowing you to see the corners.", - "tags": ["editor", "theme", "projectPlayer"], - "versionAdded": "1.14.0", + "tags": [ + "editor", + "theme", + "projectPlayer" + ], "credits": [ { "name": "Tacodude7729", @@ -10,13 +13,12 @@ } ], "enabledByDefault": false, - "dynamicDisable": true, - "dynamicEnable": true, "userstyles": [ { "url": "remove-borders.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } - ], - "l10n": true -} + ] +} \ No newline at end of file diff --git a/src/addons/addons/remove-curved-stage-border/l10n.js b/src/addons/addons/remove-curved-stage-border/l10n.js new file mode 100644 index 000000000..194916363 --- /dev/null +++ b/src/addons/addons/remove-curved-stage-border/l10n.js @@ -0,0 +1,13 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), +}; diff --git a/src/addons/addons-l10n/de/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/de.json diff --git a/src/addons/addons-l10n/es/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/es.json diff --git a/src/addons/addons-l10n/fr/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/fr.json diff --git a/src/addons/addons-l10n/it/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/it.json diff --git a/src/addons/addons-l10n/ja/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/ko.json diff --git a/src/addons/addons-l10n/pt-br/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/remove-curved-stage-border.json b/src/addons/addons/remove-curved-stage-border/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/remove-curved-stage-border.json rename to src/addons/addons/remove-curved-stage-border/l10n/sl.json diff --git a/src/addons/addons/remove-curved-stage-border/run.js b/src/addons/addons/remove-curved-stage-border/run.js new file mode 100644 index 000000000..92c8bdabd --- /dev/null +++ b/src/addons/addons/remove-curved-stage-border/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("remove-curved-stage-border", manifest); +runner.l10n(l10n); +runner.userstyle("remove-borders.css", () => require("!!raw-loader!./remove-borders.css")); +runner.run(); diff --git a/src/addons/addons/remove-sprite-confirm/addon.json b/src/addons/addons/remove-sprite-confirm/addon.json index 8f91f67c1..d6af1f29a 100644 --- a/src/addons/addons/remove-sprite-confirm/addon.json +++ b/src/addons/addons/remove-sprite-confirm/addon.json @@ -4,10 +4,14 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "recommended"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "recommended" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/remove-sprite-confirm/l10n.js b/src/addons/addons/remove-sprite-confirm/l10n.js new file mode 100644 index 000000000..a7b2dcf49 --- /dev/null +++ b/src/addons/addons/remove-sprite-confirm/l10n.js @@ -0,0 +1,15 @@ +/* generated by pull.js */ +export default { + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/de/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/de.json diff --git a/src/addons/addons-l10n/en/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/en.json diff --git a/src/addons/addons-l10n/es/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/es.json diff --git a/src/addons/addons-l10n/fr/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/fr.json diff --git a/src/addons/addons-l10n/it/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/it.json diff --git a/src/addons/addons-l10n/ja/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/ja.json diff --git a/src/addons/addons-l10n/pl/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/remove-sprite-confirm.json b/src/addons/addons/remove-sprite-confirm/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/remove-sprite-confirm.json rename to src/addons/addons/remove-sprite-confirm/l10n/tr.json diff --git a/src/addons/addons/remove-sprite-confirm/run.js b/src/addons/addons/remove-sprite-confirm/run.js new file mode 100644 index 000000000..c0568a583 --- /dev/null +++ b/src/addons/addons/remove-sprite-confirm/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("remove-sprite-confirm", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.run(); diff --git a/src/addons/addons/tw-interface-customization/addon.json b/src/addons/addons/tw-interface-customization/addon.json index 6de6f1d57..1b5f3444c 100644 --- a/src/addons/addons/tw-interface-customization/addon.json +++ b/src/addons/addons/tw-interface-customization/addon.json @@ -4,7 +4,9 @@ "userscripts": [ { "url": "remove-backpack.js", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "settingMatch": { "id": "removeBackpack", "value": true @@ -12,7 +14,9 @@ }, { "url": "remove-warning.js", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "settingMatch": { "id": "removeWarning1", "value": true @@ -22,7 +26,9 @@ "userstyles": [ { "url": "remove-backpack.css", - "matches": ["https://scratch.mit.edu/projects/*"], + "matches": [ + "https://scratch.mit.edu/projects/*" + ], "settingMatch": { "id": "removeBackpack", "value": true @@ -43,7 +49,8 @@ "default": false } ], - "tags": ["beta"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "beta" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/tw-interface-customization/l10n.js b/src/addons/addons/tw-interface-customization/l10n.js new file mode 100644 index 000000000..4b3e2803c --- /dev/null +++ b/src/addons/addons/tw-interface-customization/l10n.js @@ -0,0 +1,3 @@ +/* generated by pull.js */ +export default { +}; diff --git a/src/addons/addons/tw-interface-customization/run.js b/src/addons/addons/tw-interface-customization/run.js new file mode 100644 index 000000000..252336ebb --- /dev/null +++ b/src/addons/addons/tw-interface-customization/run.js @@ -0,0 +1,10 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("tw-interface-customization", manifest); +runner.l10n(l10n); +runner.userscript("remove-backpack.js", () => require("./remove-backpack.js")); +runner.userscript("remove-warning.js", () => require("./remove-warning.js")); +runner.userstyle("remove-backpack.css", () => require("!!raw-loader!./remove-backpack.css")); +runner.run(); diff --git a/src/addons/addons/tw-project-info/addon.json b/src/addons/addons/tw-project-info/addon.json index 844a03654..140f4df1e 100644 --- a/src/addons/addons/tw-project-info/addon.json +++ b/src/addons/addons/tw-project-info/addon.json @@ -1,7 +1,9 @@ { "name": "Block count", "description": "Shows the number of blocks a project has.", - "tags": ["community"], + "tags": [ + "community" + ], "credits": [ { "name": "TheColaber", @@ -11,8 +13,9 @@ "userscripts": [ { "url": "blockcount.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } - ], - "l10n": true -} + ] +} \ No newline at end of file diff --git a/src/addons/addons/tw-project-info/l10n.js b/src/addons/addons/tw-project-info/l10n.js new file mode 100644 index 000000000..f5bec6787 --- /dev/null +++ b/src/addons/addons/tw-project-info/l10n.js @@ -0,0 +1,4 @@ +/* generated by pull.js */ +export default { + "en": () => require("./l10n/en.json"), +}; diff --git a/src/addons/addons-l10n/en/tw-project-info.json b/src/addons/addons/tw-project-info/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/tw-project-info.json rename to src/addons/addons/tw-project-info/l10n/en.json diff --git a/src/addons/addons/tw-project-info/run.js b/src/addons/addons/tw-project-info/run.js new file mode 100644 index 000000000..96324806e --- /dev/null +++ b/src/addons/addons/tw-project-info/run.js @@ -0,0 +1,8 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("tw-project-info", manifest); +runner.l10n(l10n); +runner.userscript("blockcount.js", () => require("./blockcount.js")); +runner.run(); diff --git a/src/addons/addons/variable-manager/addon.json b/src/addons/addons/variable-manager/addon.json index 19823ce19..29c1623b8 100644 --- a/src/addons/addons/variable-manager/addon.json +++ b/src/addons/addons/variable-manager/addon.json @@ -12,16 +12,22 @@ "userscripts": [ { "url": "userscript.js", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], "userstyles": [ { "url": "style.css", - "matches": ["https://scratch.mit.edu/projects/*"] + "matches": [ + "https://scratch.mit.edu/projects/*" + ] } ], - "tags": ["editor", "recommended"], - "enabledByDefault": false, - "l10n": true -} + "tags": [ + "editor", + "recommended" + ], + "enabledByDefault": false +} \ No newline at end of file diff --git a/src/addons/addons/variable-manager/l10n.js b/src/addons/addons/variable-manager/l10n.js new file mode 100644 index 000000000..6d74e0f1f --- /dev/null +++ b/src/addons/addons/variable-manager/l10n.js @@ -0,0 +1,18 @@ +/* generated by pull.js */ +export default { + "ar": () => require("./l10n/ar.json"), + "de": () => require("./l10n/de.json"), + "en": () => require("./l10n/en.json"), + "es": () => require("./l10n/es.json"), + "fr": () => require("./l10n/fr.json"), + "it": () => require("./l10n/it.json"), + "ja": () => require("./l10n/ja.json"), + "ko": () => require("./l10n/ko.json"), + "nl": () => require("./l10n/nl.json"), + "pl": () => require("./l10n/pl.json"), + "pt-br": () => require("./l10n/pt-br.json"), + "ro": () => require("./l10n/ro.json"), + "ru": () => require("./l10n/ru.json"), + "sl": () => require("./l10n/sl.json"), + "tr": () => require("./l10n/tr.json"), +}; diff --git a/src/addons/addons-l10n/ar/variable-manager.json b/src/addons/addons/variable-manager/l10n/ar.json similarity index 100% rename from src/addons/addons-l10n/ar/variable-manager.json rename to src/addons/addons/variable-manager/l10n/ar.json diff --git a/src/addons/addons-l10n/de/variable-manager.json b/src/addons/addons/variable-manager/l10n/de.json similarity index 100% rename from src/addons/addons-l10n/de/variable-manager.json rename to src/addons/addons/variable-manager/l10n/de.json diff --git a/src/addons/addons-l10n/en/variable-manager.json b/src/addons/addons/variable-manager/l10n/en.json similarity index 100% rename from src/addons/addons-l10n/en/variable-manager.json rename to src/addons/addons/variable-manager/l10n/en.json diff --git a/src/addons/addons-l10n/es/variable-manager.json b/src/addons/addons/variable-manager/l10n/es.json similarity index 100% rename from src/addons/addons-l10n/es/variable-manager.json rename to src/addons/addons/variable-manager/l10n/es.json diff --git a/src/addons/addons-l10n/fr/variable-manager.json b/src/addons/addons/variable-manager/l10n/fr.json similarity index 100% rename from src/addons/addons-l10n/fr/variable-manager.json rename to src/addons/addons/variable-manager/l10n/fr.json diff --git a/src/addons/addons-l10n/it/variable-manager.json b/src/addons/addons/variable-manager/l10n/it.json similarity index 100% rename from src/addons/addons-l10n/it/variable-manager.json rename to src/addons/addons/variable-manager/l10n/it.json diff --git a/src/addons/addons-l10n/ja/variable-manager.json b/src/addons/addons/variable-manager/l10n/ja.json similarity index 100% rename from src/addons/addons-l10n/ja/variable-manager.json rename to src/addons/addons/variable-manager/l10n/ja.json diff --git a/src/addons/addons-l10n/ko/variable-manager.json b/src/addons/addons/variable-manager/l10n/ko.json similarity index 100% rename from src/addons/addons-l10n/ko/variable-manager.json rename to src/addons/addons/variable-manager/l10n/ko.json diff --git a/src/addons/addons-l10n/nl/variable-manager.json b/src/addons/addons/variable-manager/l10n/nl.json similarity index 100% rename from src/addons/addons-l10n/nl/variable-manager.json rename to src/addons/addons/variable-manager/l10n/nl.json diff --git a/src/addons/addons-l10n/pl/variable-manager.json b/src/addons/addons/variable-manager/l10n/pl.json similarity index 100% rename from src/addons/addons-l10n/pl/variable-manager.json rename to src/addons/addons/variable-manager/l10n/pl.json diff --git a/src/addons/addons-l10n/pt-br/variable-manager.json b/src/addons/addons/variable-manager/l10n/pt-br.json similarity index 100% rename from src/addons/addons-l10n/pt-br/variable-manager.json rename to src/addons/addons/variable-manager/l10n/pt-br.json diff --git a/src/addons/addons-l10n/ro/variable-manager.json b/src/addons/addons/variable-manager/l10n/ro.json similarity index 100% rename from src/addons/addons-l10n/ro/variable-manager.json rename to src/addons/addons/variable-manager/l10n/ro.json diff --git a/src/addons/addons-l10n/ru/variable-manager.json b/src/addons/addons/variable-manager/l10n/ru.json similarity index 100% rename from src/addons/addons-l10n/ru/variable-manager.json rename to src/addons/addons/variable-manager/l10n/ru.json diff --git a/src/addons/addons-l10n/sl/variable-manager.json b/src/addons/addons/variable-manager/l10n/sl.json similarity index 100% rename from src/addons/addons-l10n/sl/variable-manager.json rename to src/addons/addons/variable-manager/l10n/sl.json diff --git a/src/addons/addons-l10n/tr/variable-manager.json b/src/addons/addons/variable-manager/l10n/tr.json similarity index 100% rename from src/addons/addons-l10n/tr/variable-manager.json rename to src/addons/addons/variable-manager/l10n/tr.json diff --git a/src/addons/addons/variable-manager/run.js b/src/addons/addons/variable-manager/run.js new file mode 100644 index 000000000..c61482101 --- /dev/null +++ b/src/addons/addons/variable-manager/run.js @@ -0,0 +1,9 @@ +/* generated by pull.js */ +import AddonRunner from "../../api.js"; +import manifest from "./addon.json"; +import l10n from "./l10n.js"; +const runner = new AddonRunner("variable-manager", manifest); +runner.l10n(l10n); +runner.userscript("userscript.js", () => require("./userscript.js")); +runner.userstyle("style.css", () => require("!!raw-loader!./style.css")); +runner.run(); diff --git a/src/addons/api.js b/src/addons/api.js index 88c81f3e3..71dbb77ce 100644 --- a/src/addons/api.js +++ b/src/addons/api.js @@ -16,7 +16,6 @@ import IntlMessageFormat from 'intl-messageformat'; import SettingsStore from './settings-store-singleton'; -import getAddonTranslations from './get-addon-translations'; import dataURLToBlob from '../lib/data-uri-to-blob'; import EventTargetShim from './event-target'; import './polyfill'; @@ -146,7 +145,6 @@ const getEditorMode = () => { const tabReduxInstance = new Redux(); const language = tabReduxInstance.state.locales.locale.split('-')[0]; -const translations = getAddonTranslations(language); const alwaysTrue = () => true; @@ -321,6 +319,10 @@ class AddonRunner { this.manifest = manifest; this.messageCache = {}; + this.translations = {}; + this.userscripts = {}; + this.userstyles = {}; + this.msg.locale = language; this.publicAPI = { global, @@ -340,7 +342,7 @@ class AddonRunner { if (this.messageCache[namespacedKey]) { return this.messageCache[namespacedKey].format(vars); } - let translation = translations[namespacedKey]; + let translation = this.translations[namespacedKey]; if (!translation) { return namespacedKey; } @@ -388,7 +390,24 @@ class AddonRunner { return settingValue === settingMatch.value; } - async _run () { + l10n (l10nfns) { + if (l10nfns.en) { + Object.assign(this.translations, l10nfns.en()); + } + if (language !== 'en' && l10nfns[language]) { + Object.assign(this.translations, l10nfns[language]()); + } + } + + userscript (url, module) { + this.userscripts[url] = module; + } + + userstyle (url, source) { + this.userstyles[url] = source; + } + + run () { this.updateCSSVariables(); if (this.manifest.userstyles) { @@ -396,12 +415,7 @@ class AddonRunner { if (!this.settingsMatch(userstyle.settingMatch)) { continue; } - const m = await import( - /* webpackInclude: /\.css$/ */ - /* webpackMode: "eager" */ - `!css-loader!./addons/${this.id}/${userstyle.url}` - ); - const source = m.default[0][1]; + const source = this.userstyles[userstyle.url](); const style = createStylesheet(source); style.className = 'scratch-addons-theme'; style.dataset.addonId = this.id; @@ -415,19 +429,11 @@ class AddonRunner { if (!this.settingsMatch(userscript.settingMatch)) { continue; } - const m = await import( - /* webpackInclude: /\.js$/ */ - /* webpackMode: "eager" */ - `./addons/${this.id}/${userscript.url}` - ); - m.default(this.publicAPI); + const module = this.userscripts[userscript.url](); + module.default(this.publicAPI); } } } - - async run () { - this._run(); - } } AddonRunner.instances = []; diff --git a/src/addons/entry.js b/src/addons/entry.js index 2fdf25826..4bbdf5a61 100644 --- a/src/addons/entry.js +++ b/src/addons/entry.js @@ -14,14 +14,18 @@ * along with this program. If not, see . */ -import AddonRunner from './api'; import addons from './addon-manifests'; +import addonIdToEntry from './generated/addon-id-to-entry'; import SettingsStore from './settings-store-singleton'; -for (const [id, manifest] of Object.entries(addons)) { +// Import API to ensure that all the entries won't include their own copy +// TODO: this seems to be necessary in dev but might not be in prod +import './api'; + +for (const id of Object.keys(addons)) { if (!SettingsStore.getAddonEnabled(id)) { continue; } - const runner = new AddonRunner(id, manifest); - runner.run(); + const fn = addonIdToEntry[id]; + fn(); } diff --git a/src/addons/generated/addon-id-to-entry.js b/src/addons/generated/addon-id-to-entry.js new file mode 100644 index 000000000..8a14007fb --- /dev/null +++ b/src/addons/generated/addon-id-to-entry.js @@ -0,0 +1,36 @@ +/* generated by pull.js */ +export default { + "editor-devtools": () => import(/* webpackChunkName: "addon-editor-devtools" */ "../addons/editor-devtools/run.js"), + "block-switching": () => import(/* webpackChunkName: "addon-block-switching" */ "../addons/block-switching/run.js"), + "editor-searchable-dropdowns": () => import(/* webpackChunkName: "addon-editor-searchable-dropdowns" */ "../addons/editor-searchable-dropdowns/run.js"), + "color-picker": () => import(/* webpackChunkName: "addon-color-picker" */ "../addons/color-picker/run.js"), + "data-category-tweaks-v2": () => import(/* webpackChunkName: "addon-data-category-tweaks-v2" */ "../addons/data-category-tweaks-v2/run.js"), + "block-palette-icons": () => import(/* webpackChunkName: "addon-block-palette-icons" */ "../addons/block-palette-icons/run.js"), + "hide-flyout": () => import(/* webpackChunkName: "addon-hide-flyout" */ "../addons/hide-flyout/run.js"), + "mediarecorder": () => import(/* webpackChunkName: "addon-mediarecorder" */ "../addons/mediarecorder/run.js"), + "drag-drop": () => import(/* webpackChunkName: "addon-drag-drop" */ "../addons/drag-drop/run.js"), + "onion-skinning": () => import(/* webpackChunkName: "addon-onion-skinning" */ "../addons/onion-skinning/run.js"), + "2d-color-picker": () => import(/* webpackChunkName: "addon-2d-color-picker" */ "../addons/2d-color-picker/run.js"), + "bitmap-copy": () => import(/* webpackChunkName: "addon-bitmap-copy" */ "../addons/bitmap-copy/run.js"), + "remove-sprite-confirm": () => import(/* webpackChunkName: "addon-remove-sprite-confirm" */ "../addons/remove-sprite-confirm/run.js"), + "pause": () => import(/* webpackChunkName: "addon-pause" */ "../addons/pause/run.js"), + "mute-project": () => import(/* webpackChunkName: "addon-mute-project" */ "../addons/mute-project/run.js"), + "clones": () => import(/* webpackChunkName: "addon-clones" */ "../addons/clones/run.js"), + "mouse-pos": () => import(/* webpackChunkName: "addon-mouse-pos" */ "../addons/mouse-pos/run.js"), + "tw-project-info": () => import(/* webpackChunkName: "addon-tw-project-info" */ "../addons/tw-project-info/run.js"), + "editor-theme3": () => import(/* webpackChunkName: "addon-editor-theme3" */ "../addons/editor-theme3/run.js"), + "folders": () => import(/* webpackChunkName: "addon-folders" */ "../addons/folders/run.js"), + "custom-block-shape": () => import(/* webpackChunkName: "addon-custom-block-shape" */ "../addons/custom-block-shape/run.js"), + "editor-stage-left": () => import(/* webpackChunkName: "addon-editor-stage-left" */ "../addons/editor-stage-left/run.js"), + "editor-colored-context-menus": () => import(/* webpackChunkName: "addon-editor-colored-context-menus" */ "../addons/editor-colored-context-menus/run.js"), + "variable-manager": () => import(/* webpackChunkName: "addon-variable-manager" */ "../addons/variable-manager/run.js"), + "load-extensions": () => import(/* webpackChunkName: "addon-load-extensions" */ "../addons/load-extensions/run.js"), + "custom-zoom": () => import(/* webpackChunkName: "addon-custom-zoom" */ "../addons/custom-zoom/run.js"), + "initialise-sprite-position": () => import(/* webpackChunkName: "addon-initialise-sprite-position" */ "../addons/initialise-sprite-position/run.js"), + "blocks2image": () => import(/* webpackChunkName: "addon-blocks2image" */ "../addons/blocks2image/run.js"), + "gamepad": () => import(/* webpackChunkName: "addon-gamepad" */ "../addons/gamepad/run.js"), + "tw-interface-customization": () => import(/* webpackChunkName: "addon-tw-interface-customization" */ "../addons/tw-interface-customization/run.js"), + "editor-sounds": () => import(/* webpackChunkName: "addon-editor-sounds" */ "../addons/editor-sounds/run.js"), + "remove-curved-stage-border": () => import(/* webpackChunkName: "addon-remove-curved-stage-border" */ "../addons/remove-curved-stage-border/run.js"), + "cat-blocks": () => import(/* webpackChunkName: "addon-cat-blocks" */ "../addons/cat-blocks/run.js"), +}; diff --git a/src/addons/generated/addon-id-to-l10n.js b/src/addons/generated/addon-id-to-l10n.js new file mode 100644 index 000000000..1c77ec3e6 --- /dev/null +++ b/src/addons/generated/addon-id-to-l10n.js @@ -0,0 +1,36 @@ +/* generated by pull.js */ +export default { + "editor-devtools": require("../addons/editor-devtools/l10n.js").default, + "block-switching": require("../addons/block-switching/l10n.js").default, + "editor-searchable-dropdowns": require("../addons/editor-searchable-dropdowns/l10n.js").default, + "color-picker": require("../addons/color-picker/l10n.js").default, + "data-category-tweaks-v2": require("../addons/data-category-tweaks-v2/l10n.js").default, + "block-palette-icons": require("../addons/block-palette-icons/l10n.js").default, + "hide-flyout": require("../addons/hide-flyout/l10n.js").default, + "mediarecorder": require("../addons/mediarecorder/l10n.js").default, + "drag-drop": require("../addons/drag-drop/l10n.js").default, + "onion-skinning": require("../addons/onion-skinning/l10n.js").default, + "2d-color-picker": require("../addons/2d-color-picker/l10n.js").default, + "bitmap-copy": require("../addons/bitmap-copy/l10n.js").default, + "remove-sprite-confirm": require("../addons/remove-sprite-confirm/l10n.js").default, + "pause": require("../addons/pause/l10n.js").default, + "mute-project": require("../addons/mute-project/l10n.js").default, + "clones": require("../addons/clones/l10n.js").default, + "mouse-pos": require("../addons/mouse-pos/l10n.js").default, + "tw-project-info": require("../addons/tw-project-info/l10n.js").default, + "editor-theme3": require("../addons/editor-theme3/l10n.js").default, + "folders": require("../addons/folders/l10n.js").default, + "custom-block-shape": require("../addons/custom-block-shape/l10n.js").default, + "editor-stage-left": require("../addons/editor-stage-left/l10n.js").default, + "editor-colored-context-menus": require("../addons/editor-colored-context-menus/l10n.js").default, + "variable-manager": require("../addons/variable-manager/l10n.js").default, + "load-extensions": require("../addons/load-extensions/l10n.js").default, + "custom-zoom": require("../addons/custom-zoom/l10n.js").default, + "initialise-sprite-position": require("../addons/initialise-sprite-position/l10n.js").default, + "blocks2image": require("../addons/blocks2image/l10n.js").default, + "gamepad": require("../addons/gamepad/l10n.js").default, + "tw-interface-customization": require("../addons/tw-interface-customization/l10n.js").default, + "editor-sounds": require("../addons/editor-sounds/l10n.js").default, + "remove-curved-stage-border": require("../addons/remove-curved-stage-border/l10n.js").default, + "cat-blocks": require("../addons/cat-blocks/l10n.js").default, +}; diff --git a/src/addons/get-addon-translations.js b/src/addons/get-addon-translations.js index 6806d96f5..f8887a0c2 100644 --- a/src/addons/get-addon-translations.js +++ b/src/addons/get-addon-translations.js @@ -15,28 +15,22 @@ */ import addons from './addons.json'; +import addonIdToL10n from './generated/addon-id-to-l10n'; /** * Get addon translations. - * @param {string} lang The locale code + * @param {string} language The locale code * @returns {object} Object of translation ID to localized string or English fallback */ -export default function getTranslations (lang) { +export default function getTranslations (language) { const result = {}; for (const addonId of addons) { - try { - const english = require(`./addons-l10n/en/${addonId}.json`); - Object.assign(result, english); - } catch (e) { - // ignore + const l10n = addonIdToL10n[addonId]; + if (l10n.en) { + Object.assign(result, l10n.en()); } - if (lang !== 'en') { - try { - const translations = require(`./addons-l10n/${lang}/${addonId}.json`); - Object.assign(result, translations); - } catch (e) { - // ignore - } + if (language !== 'en' && l10n[language]) { + Object.assign(result, l10n[language]()); } } return result; diff --git a/src/addons/pull.js b/src/addons/pull.js index 80d42877f..05bc11ab8 100644 --- a/src/addons/pull.js +++ b/src/addons/pull.js @@ -17,6 +17,7 @@ /* eslint-disable import/no-commonjs */ /* eslint-disable import/no-nodejs-modules */ /* eslint-disable no-console */ +/* eslint-disable max-len */ const fs = require('fs'); const childProcess = require('child_process'); @@ -49,11 +50,8 @@ if (!process.argv.includes('-')) { childProcess.execSync(`git clone --depth=1 -b tw https://github.com/GarboMuffin/ScratchAddons ${repoPath}`); } rimraf.sync(pathUtil.resolve(__dirname, 'addons')); -rimraf.sync(pathUtil.resolve(__dirname, 'addons-l10n')); rimraf.sync(pathUtil.resolve(__dirname, 'libraries')); -fs.mkdirSync(pathUtil.resolve(__dirname, 'addons'), {recursive: true}); -fs.mkdirSync(pathUtil.resolve(__dirname, 'addons-l10n'), {recursive: true}); -fs.mkdirSync(pathUtil.resolve(__dirname, 'libraries'), {recursive: true}); +rimraf.sync(pathUtil.resolve(__dirname, 'generated')); process.chdir(repoPath); const commitHash = childProcess.execSync('git rev-parse --short HEAD') @@ -69,6 +67,11 @@ const matchAll = (str, regex) => { return matches; }; +const writeFile = (path, data) => { + fs.mkdirSync(pathUtil.dirname(path), {recursive: true}); + fs.writeFileSync(path, data); +}; + const includeImportedLibraries = contents => { // Parse things like: // import { normalizeHex, getHexRegex } from "../../libraries/normalize-color.js"; @@ -87,7 +90,7 @@ const includeImportedLibraries = contents => { } }; -const includeImports = (folder, contents) => { +const includeDynamicallyImportedAssets = (folder, contents) => { const dynamicAssets = walk(folder) .filter(file => file.endsWith('.svg') || file.endsWith('.png')); @@ -127,66 +130,113 @@ const includeImports = (folder, contents) => { request('https://raw.githubusercontent.com/ScratchAddons/contributors/master/.all-contributorsrc', (err, response, body) => { const parsed = JSON.parse(body); const contributors = parsed.contributors.filter(({contributions}) => contributions.includes('translation')); + // TODO: remove useless information const contributorsPath = pathUtil.resolve(__dirname, 'translators.json'); fs.writeFileSync(contributorsPath, JSON.stringify(contributors, null, 4)); }); -(async () => { - for (const addon of addons) { - const oldDirectory = pathUtil.resolve(__dirname, 'ScratchAddons', 'addons', addon); - const newDirectory = pathUtil.resolve(__dirname, 'addons', addon); - for (const file of walk(oldDirectory)) { - const oldPath = pathUtil.join(oldDirectory, file); - const newPath = pathUtil.join(newDirectory, file); - fs.mkdirSync(pathUtil.dirname(newPath), {recursive: true}); - let contents = fs.readFileSync(oldPath); - - if (file.endsWith('.js')) { - contents = contents.toString('utf-8'); - includeImportedLibraries(contents); - if (contents.includes('addon.self.dir') || contents.includes('addon.self.lib')) { - contents = includeImports(oldDirectory, contents); - } - } - - fs.writeFileSync(newPath, contents); +const l10nRoot = pathUtil.resolve(__dirname, 'ScratchAddons', 'addons-l10n'); +const getL10nFile = (lang, addonId) => pathUtil.join(l10nRoot, lang, `${addonId}.json`); +const allLanguages = fs.readdirSync(l10nRoot).filter(i => fs.existsSync(getL10nFile(i, '_general'))); + +for (const addonId of addons) { + const oldSourceDirectory = pathUtil.resolve(__dirname, 'ScratchAddons', 'addons', addonId); + const newSourceDirectory = pathUtil.resolve(__dirname, 'addons', addonId); + + const addonLanguages = []; + for (const language of allLanguages) { + const l10nPath = getL10nFile(language, addonId); + if (fs.existsSync(l10nPath)) { + addonLanguages.push(language); + const l10nContents = fs.readFileSync(l10nPath, 'utf-8'); + const newPath = pathUtil.join(newSourceDirectory, 'l10n', `${language}.json`); + // Parse and stringify to validate and minimize + writeFile(newPath, JSON.stringify(JSON.parse(l10nContents))); } } - const l10nFiles = fs.readdirSync(pathUtil.resolve(__dirname, 'ScratchAddons', 'addons-l10n')); - const languages = []; - for (const file of l10nFiles) { - const oldDirectory = pathUtil.resolve(__dirname, 'ScratchAddons', 'addons-l10n', file); - const newDirectory = pathUtil.resolve(__dirname, 'addons-l10n', file); - if (!fs.statSync(oldDirectory).isDirectory()) { - continue; - } - languages.push(file); - fs.mkdirSync(newDirectory, {recursive: true}); - for (const addon of addons) { - const oldFile = pathUtil.join(oldDirectory, `${addon}.json`); - const newFile = pathUtil.join(newDirectory, `${addon}.json`); - try { - const contents = fs.readFileSync(oldFile, 'utf-8'); - // Parse and stringify to minimize - const parsed = JSON.parse(contents); - fs.writeFileSync(newFile, JSON.stringify(parsed)); - } catch (e) { - // Ignore + let manifest; + for (const file of walk(oldSourceDirectory)) { + const oldPath = pathUtil.join(oldSourceDirectory, file); + const newPath = pathUtil.join(newSourceDirectory, file); + + let contents = fs.readFileSync(oldPath); + if (file.endsWith('.js')) { + contents = contents.toString('utf-8'); + includeImportedLibraries(contents); + if (contents.includes('addon.self.dir') || contents.includes('addon.self.lib')) { + contents = includeDynamicallyImportedAssets(oldSourceDirectory, contents); } } + if (file === 'addon.json') { + contents = contents.toString('utf-8'); + manifest = JSON.parse(contents); + delete manifest.versionAdded; + delete manifest.libraries; + delete manifest.l10n; + delete manifest.dynamicEnable; + delete manifest.dynamicDisable; + delete manifest.injectAsStyleElt; + contents = JSON.stringify(manifest, null, 2); + } + + writeFile(newPath, contents); } - const extensionManifestPath = pathUtil.resolve(__dirname, 'ScratchAddons', 'manifest.json'); - const upstreamMetaPath = pathUtil.resolve(__dirname, 'upstream-meta.json'); - const extensionManifest = JSON.parse(fs.readFileSync(extensionManifestPath, 'utf8')); - const versionName = extensionManifest.version_name; - fs.writeFileSync(upstreamMetaPath, JSON.stringify({ - version: versionName, - commit: commitHash, - languages - })); -})().catch(err => { - console.error(err); - process.exit(1); -}); + const l10nEntry = pathUtil.join(newSourceDirectory, 'l10n.js'); + let l10nSource = ''; + l10nSource += '/* generated by pull.js */\n'; + l10nSource += `export default {\n`; + addonLanguages.forEach(lang => { + l10nSource += ` ${JSON.stringify(lang)}: () => require(${JSON.stringify(`./l10n/${lang}.json`)}),\n`; + }); + l10nSource += `};\n`; + writeFile(l10nEntry, l10nSource); + + const runnerEntry = pathUtil.join(newSourceDirectory, 'run.js'); + let runnerSource = ''; + runnerSource += '/* generated by pull.js */\n'; + runnerSource += `import AddonRunner from "../../api.js";\n`; + runnerSource += `import manifest from "./addon.json";\n`; + runnerSource += `import l10n from "./l10n.js";\n`; + const userscripts = manifest.userscripts || []; + const userstyles = manifest.userstyles || []; + runnerSource += `const runner = new AddonRunner(${JSON.stringify(addonId)}, manifest);\n`; + runnerSource += `runner.l10n(l10n);\n`; + userscripts.forEach(({url}) => { + runnerSource += `runner.userscript(${JSON.stringify(url)}, () => require(${JSON.stringify(`./${url}`)}));\n`; + }); + userstyles.forEach(({url}) => { + runnerSource += `runner.userstyle(${JSON.stringify(url)}, () => require(${JSON.stringify(`!!raw-loader!./${url}`)}));\n`; + }); + runnerSource += 'runner.run();\n'; + writeFile(runnerEntry, runnerSource); +} + +// TODO bundles +const addonIdToEntryPath = pathUtil.resolve(__dirname, 'generated', 'addon-id-to-entry.js'); +const addonIdToL10nPath = pathUtil.resolve(__dirname, 'generated', 'addon-id-to-l10n.js'); +let addonIdToEntryContent = ''; +addonIdToEntryContent += `/* generated by pull.js */\n`; +addonIdToEntryContent += `export default {\n`; +let addonIdToL10nContent = ''; +addonIdToL10nContent += `/* generated by pull.js */\n`; +addonIdToL10nContent += `export default {\n`; +for (const addonId of addons) { + addonIdToEntryContent += ` ${JSON.stringify(addonId)}: () => import(/* webpackChunkName: ${JSON.stringify(`addon-${addonId}`)} */ ${JSON.stringify(`../addons/${addonId}/run.js`)}),\n`; + addonIdToL10nContent += ` ${JSON.stringify(addonId)}: require(${JSON.stringify(`../addons/${addonId}/l10n.js`)}).default,\n`; +} +addonIdToEntryContent += `};\n`; +addonIdToL10nContent += '};\n'; +writeFile(addonIdToEntryPath, addonIdToEntryContent); +writeFile(addonIdToL10nPath, addonIdToL10nContent); + +const extensionManifestPath = pathUtil.resolve(__dirname, 'ScratchAddons', 'manifest.json'); +const upstreamMetaPath = pathUtil.resolve(__dirname, 'upstream-meta.json'); +const extensionManifest = JSON.parse(fs.readFileSync(extensionManifestPath, 'utf8')); +const versionName = extensionManifest.version_name; +fs.writeFileSync(upstreamMetaPath, JSON.stringify({ + version: versionName, + commit: commitHash, + languages: allLanguages +})); diff --git a/src/addons/upstream-meta.json b/src/addons/upstream-meta.json index 499994800..ead65c87b 100644 --- a/src/addons/upstream-meta.json +++ b/src/addons/upstream-meta.json @@ -1 +1 @@ -{"version":"1.14.1","commit":"d6e09e5","languages":["ar","de","en","es","fr","id","it","ja","ko","nl","pl","pt-br","ro","ru","sl","sv","th","tr"]} \ No newline at end of file +{"version":"1.14.1","commit":"4d2f536","languages":["ar","de","en","es","fr","id","it","ja","ko","nl","pl","pt-br","ro","ru","sl","sv","th","tr"]} \ No newline at end of file