Botho
Botho
- mocked version without any actual fetches (also works in preview branch now) - Search for "Dreisatz" for the mock content to make sense (besides the Lückentext itself unfortunately) -...
### Deleting plugins example: https://github.com/serlo/db-migrations/blob/main/src/20230917105600-upgrade-all-edtr-io-states.ts#L78-L98 ### Converting plugins example: https://github.com/serlo/db-migrations/blob/main/src/20220625202000-convert-important-and-blockquote-to-box.ts#L8-L11
Add tests for subject name code (https://github.com/serlo/api.serlo.org/pull/1608)
for PE-126, includes others from https://linear.app/serlo/project/feature-interaktives-video-81726f089728/issues [Demo](https://frontend-git-feat-add-interactive-video-plugin-serlo.vercel.app/___editor_preview?state=%7B%22plugin%22%3A%22rows%22%2C%22state%22%3A%5B%7B%22plugin%22%3A%22interactiveVideo%22%2C%22state%22%3A%7B%22video%22%3A%7B%22plugin%22%3A%22video%22%2C%22state%22%3A%7B%22src%22%3A%22%22%2C%22alt%22%3A%22%22%7D%2C%22id%22%3A%22e3d6e127-a835-47ca-b020-e41ae9156356%22%7D%2C%22marks%22%3A%5B%7B%22title%22%3A%22Aufgabe+%28auto+open%29%22%2C%22child%22%3A%7B%22plugin%22%3A%22exercise%22%2C%22state%22%3A%7B%22content%22%3A%7B%22plugin%22%3A%22rows%22%2C%22state%22%3A%5B%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Frage%22%7D%5D%7D%5D%2C%22id%22%3A%22ff52fec0-3f78-4096-a3ef-ea6b56b2d3da%22%7D%5D%2C%22id%22%3A%224d58553c-f07e-443a-acb0-4099fc331221%22%7D%2C%22interactive%22%3A%7B%22plugin%22%3A%22inputExercise%22%2C%22state%22%3A%7B%22type%22%3A%22input-number-exact-match-challenge%22%2C%22unit%22%3A%22%22%2C%22answers%22%3A%5B%7B%22value%22%3A%221%22%2C%22isCorrect%22%3Atrue%2C%22feedback%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Antwort%22%7D%5D%7D%5D%2C%22id%22%3A%222845803e-823d-48c9-b01f-e424131ae37a%22%7D%7D%2C%7B%22value%22%3A%222%22%2C%22isCorrect%22%3Afalse%2C%22feedback%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Ne%22%7D%5D%7D%5D%2C%22id%22%3A%2222b005c4-912d-449b-b4ac-3d43007cd938%22%7D%7D%5D%7D%2C%22id%22%3A%2258b11500-c312-433f-bbff-b90e518086e0%22%7D%7D%2C%22id%22%3A%2257b5341f-2a88-45a3-abfe-be5682af5925%22%7D%2C%22startTime%22%3A23.658494%2C%22autoOpen%22%3Atrue%2C%22mandatory%22%3Afalse%2C%22forceRewatch%22%3Afalse%7D%2C%7B%22title%22%3A%22Noch+eine+Aufgabe+%28mandatory%29%22%2C%22child%22%3A%7B%22plugin%22%3A%22exercise%22%2C%22state%22%3A%7B%22content%22%3A%7B%22plugin%22%3A%22rows%22%2C%22state%22%3A%5B%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Doof%2C+dass+es+nicht+einfach+weitergeht%2C+oder%3F%22%7D%5D%7D%5D%2C%22id%22%3A%22c281bd72-d0c1-4644-885b-8d8f8a1ca643%22%7D%5D%2C%22id%22%3A%22f05b5899-f08b-4258-883f-c965fb474689%22%7D%2C%22interactive%22%3A%7B%22plugin%22%3A%22scMcExercise%22%2C%22state%22%3A%7B%22isSingleChoice%22%3Atrue%2C%22answers%22%3A%5B%7B%22content%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Ja%22%7D%5D%7D%5D%2C%22id%22%3A%22088564b0-0082-4143-8c04-662fbe627362%22%7D%2C%22isCorrect%22%3Atrue%2C%22feedback%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Sorry+%F0%9F%A4%B7%22%7D%5D%7D%5D%2C%22id%22%3A%22df03f34d-1259-45e6-b6e7-09d0dd3aa80b%22%7D%7D%2C%7B%22content%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Nein%22%7D%5D%7D%5D%2C%22id%22%3A%22015ae3c8-e08b-495e-87d9-029e5924b875%22%7D%2C%22isCorrect%22%3Afalse%2C%22feedback%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Okay%22%7D%5D%7D%5D%2C%22id%22%3A%226419490b-9b9c-4a80-a91c-4a737eae5f01%22%7D%7D%5D%7D%2C%22id%22%3A%227cb4d341-e56a-42ec-bce9-2489c7c33787%22%7D%2C%22solution%22%3A%7B%22plugin%22%3A%22solution%22%2C%22state%22%3A%7B%22strategy%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22%22%7D%5D%7D%5D%2C%22id%22%3A%2255c50d05-9fcd-480c-97ab-8703cbdf15fa%22%7D%2C%22steps%22%3A%7B%22plugin%22%3A%22rows%22%2C%22state%22%3A%5B%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Denke+nach%21%22%7D%5D%7D%5D%2C%22id%22%3A%220dd20fc9-5ecb-4641-b30f-7f64818b430c%22%7D%5D%2C%22id%22%3A%227389c668-719d-4598-87cd-857e67ce12e1%22%7D%7D%2C%22id%22%3A%221c08ec24-001f-4fa9-b101-b090c58a4faf%22%7D%7D%2C%22id%22%3A%22b5b39530-0470-4a93-ab73-2c01dde1cb14%22%7D%2C%22startTime%22%3A34.89074%2C%22autoOpen%22%3Atrue%2C%22mandatory%22%3Atrue%2C%22forceRewatch%22%3Afalse%7D%2C%7B%22title%22%3A%22Aufgabe+mit+Rewatch%22%2C%22child%22%3A%7B%22plugin%22%3A%22exercise%22%2C%22state%22%3A%7B%22content%22%3A%7B%22plugin%22%3A%22rows%22%2C%22state%22%3A%5B%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Aufgaben+ist+die+L%C3%B6sung%2C+aber+wenn+du%27s+falsch+angibst+kannst+du+dir+noch+mal+bisschen+Video+anschauen.%22%7D%5D%7D%5D%2C%22id%22%3A%2212896663-764a-456e-9bf5-1584911f8806%22%7D%5D%2C%22id%22%3A%22d5f43588-4a2c-4921-880f-2cef9bd10a03%22%7D%2C%22interactive%22%3A%7B%22plugin%22%3A%22blanksExercise%22%2C%22state%22%3A%7B%22text%22%3A%7B%22plugin%22%3A%22text%22%2C%22state%22%3A%5B%7B%22type%22%3A%22p%22%2C%22children%22%3A%5B%7B%22text%22%3A%22Tolle+%22%7D%2C%7B%22type%22%3A%22textBlank%22%2C%22blankId%22%3A%22af9d632f-b7e3-4da3-b428-ca015a44c899%22%2C%22correctAnswers%22%3A%5B%7B%22answer%22%3A%22Aufgaben%22%7D%5D%2C%22acceptMathEquivalents%22%3Atrue%2C%22children%22%3A%5B%7B%22text%22%3A%22%22%7D%5D%7D%2C%7B%22text%22%3A%22%2C+oder%3F%22%7D%5D%7D%5D%2C%22id%22%3A%22035b2a7b-1688-4b58-ae73-b7326e09a4e4%22%7D%2C%22mode%22%3A%22typing%22%7D%2C%22id%22%3A%22d4b268c2-d7ec-4e72-84c7-831d20116930%22%7D%7D%2C%22id%22%3A%22616b66e1-f32f-46fa-8bf9-fa1caa29e9ec%22%7D%2C%22startTime%22%3A42.49955%2C%22autoOpen%22%3Atrue%2C%22mandatory%22%3Afalse%2C%22forceRewatch%22%3Atrue%7D%5D%7D%2C%22id%22%3A%226bff94e3-ce06-4eb3-9520-7063f33f13b7%22%7D%5D%7D)
Part of PE-157 This duplicates some helpers and simple components to reduce the number of imports from `apps/web` a lot. I considered creating an additional shared package, but I think...
part of PE-155
--- ## Changes: ### apps - #4151 @hejtful - #4149 @kulla - #4146 @elbotho - #4148 @kulla - #4145 @elbotho - #4147 @elbotho - #4143 @kulla - #4126 @elbotho -...
now that the plugin lives inside our repo this is a bit cleaner (also `defaultTitle` and `defaultDescription` seemed unused)
the dragged element is not visible on mobile and the content of the answers should probably be `user-select: none;`