From 97d734707f3a07e58633d7a671d735b899bc71a7 Mon Sep 17 00:00:00 2001
From: SteffenLm <33038091+SteffenLm@users.noreply.github.com>
Date: Sat, 25 Jul 2026 13:50:54 +0200
Subject: [PATCH 1/2] fix slides
---
UPDATE_CHECKLIST.md | 12 ++++++
.../steffen/java-1/slides.md | 40 +++++++++++++------
.../steffen/java-2/slides.mdx | 36 ++++++++++++-----
src/components/Slides/index.tsx | 13 +++++-
src/components/Slides/initSlides.ts | 9 +++--
5 files changed, 81 insertions(+), 29 deletions(-)
create mode 100644 UPDATE_CHECKLIST.md
diff --git a/UPDATE_CHECKLIST.md b/UPDATE_CHECKLIST.md
new file mode 100644
index 0000000000..d84febac5f
--- /dev/null
+++ b/UPDATE_CHECKLIST.md
@@ -0,0 +1,12 @@
+# Dependency Update Checklist
+
+- [ ] Run `npm ci` and verify dependencies install without additional flags or
+ manual changes.
+- [ ] Run `npm run build` and verify the production site builds successfully.
+- [ ] Run `npm run start` and verify the docs are visible at
+ http://localhost:3000.
+- [ ] With the local site running, verify Mermaid diagrams render correctly.
+- [ ] With the local site running, verify slides open correctly.
+- [ ] When updating Docusaurus, check whether its `@mermaid-js/layout-elk` peer
+ dependency supports 0.2.x or later; if so, remove the corresponding
+ Dependabot ignore rule in `.github/dependabot.yml`.
diff --git a/docs/additional-material/steffen/java-1/slides.md b/docs/additional-material/steffen/java-1/slides.md
index e8952e4d03..e7448f0d06 100644
--- a/docs/additional-material/steffen/java-1/slides.md
+++ b/docs/additional-material/steffen/java-1/slides.md
@@ -5,27 +5,41 @@ sidebar_position: 10
tags: []
---
-- 08.01.2026 [Einleitung](/slides/steffen/java-1/intro)
- 08.01.2026
- [Datentypen und Datenobjekte ](/slides/steffen/java-1/datatypes-and-dataobjects)
+ Einleitung
+- 08.01.2026
+ Datentypen
+ und Datenobjekte
- 09.01.2026
- [Methoden und Operatoren](/slides/steffen/java-1/methods-and-operators)
+ Methoden
+ und Operatoren
- 15.01.2026
- [Kontrollstrukturen und Arrays](/slides/steffen/java-1/if-and-switch)
+ Kontrollstrukturen
+ und Arrays
- 16.01.2026
- [Math, Random und Scanner](/slides/steffen/java-1/math-random-scanner)
+ Math,
+ Random und Scanner
- 22.01.2026 Kurztest
-- 22.01.2026 [Klassen und Objekte](/slides/steffen/java-1/classes-and-objects)
+- 22.01.2026
+ Klassen
+ und Objekte
- 23.01.2026
- [Konstruktor und static](/slides/steffen/java-1/constructor-and-static)
+ Konstruktor
+ und static
- 05.02. & 06.02.2026
- [Java API, Enum, Klassendiagramm, Aktivitätsdiagramm](/slides/steffen/java-1/class-diagram-java-api-enum)
-- 12.02.2026 [Vererbung](/slides/steffen/java-1/inheritance)
-- 12.02.2026 [Polymorphie](/slides/steffen/java-1/polymorphism)
+ Java
+ API, Enum, Klassendiagramm, Aktivitätsdiagramm
+- 12.02.2026
+ Vererbung
+- 12.02.2026
+ Polymorphie
- 13.02.2026
- [Abstrakte und finale Klassen](/slides/steffen/java-1/abstract-and-final)
-- 19.02.2026 [Interfaces](/slides/steffen/java-1/interfaces)
-- 20.02.2026 [Exceptions](/slides/steffen/java-1/exceptions)
+ Abstrakte
+ und finale Klassen
+- 19.02.2026
+ Interfaces
+- 20.02.2026
+ Exceptions
- 27.02.2026 & 06.03.2026 Klausurvorbereitung
- 10.03.2026 Klausur
diff --git a/docs/additional-material/steffen/java-2/slides.mdx b/docs/additional-material/steffen/java-2/slides.mdx
index 8c2be45c1a..c3de6208ed 100644
--- a/docs/additional-material/steffen/java-2/slides.mdx
+++ b/docs/additional-material/steffen/java-2/slides.mdx
@@ -5,20 +5,34 @@ sidebar_position: 10
tags: []
---
-- 09.04.2026 [Wiederholung, Organisatorisches](/slides/steffen/java-2/00-recap)
- 09.04.2026
- [Generics und Optional](/slides/steffen/java-2/07-generics-optional)
+ Wiederholung,
+ Organisatorisches
+- 09.04.2026
+ Generics
+ und Optional
- 10.04.2026
- [Set, Map, Hashes & Records](/slides/steffen/java-2/08-sets-maps-hashes-records)
+ Set,
+ Map, Hashes & Records
- 16.04.2026
- [Funktionale Programmierung](/slides/steffen/java-2/09-functional-programming)
-- 17.04.2026 [Stream Api ](/slides/steffen/java-2/10-stream-api)
+ Funktionale
+ Programmierung
+- 17.04.2026
+ Stream
+ Api
+- 23.04.2026
+ Intro
+ Algorithmen und Daten Strukturen
- 23.04.2026
- [Intro Algorithmen und Daten Strukturen](/slides/steffen/java-2/01-intro-dsa)
-- 23.04.2026 [Suchalgorithmen](/slides/steffen/java-2/02-search-algo)
-- 24.04.2026 [Rekursion](/slides/steffen/java-2/03-iteration-recursion)
-- 24.04.2026 [Sortieralgorithmen](/slides/steffen/java-2/04-sort-algo)
-- 11.05.2026 [Stack, Queue, List](/slides/steffen/java-2/05-stack-queue-list)
-- 21.05.2026 [Trees](/slides/steffen/java-2/06-trees)
+ Suchalgorithmen
+- 24.04.2026
+ Rekursion
+- 24.04.2026
+ Sortieralgorithmen
+- 11.05.2026
+ Stack,
+ Queue, List
+- 21.05.2026
+ Trees
- 22.05.2026 Klausurvorbereitung
- 28.05.2026 Klausur Fortgeschrittene Programmierung (50 Punkte / 60 Minuten)
diff --git a/src/components/Slides/index.tsx b/src/components/Slides/index.tsx
index 221b093364..6740043d7d 100644
--- a/src/components/Slides/index.tsx
+++ b/src/components/Slides/index.tsx
@@ -1,5 +1,6 @@
import BrowserOnly from '@docusaurus/BrowserOnly';
import React, { type ReactNode, useEffect } from 'react';
+import type { RevealApi } from 'reveal.js';
interface SlidesProps {
children: ReactNode;
@@ -13,9 +14,19 @@ function SlidesInner({
height,
}: SlidesProps): React.JSX.Element {
useEffect(() => {
+ let disposed = false;
+ let deck: RevealApi | undefined;
+
import('./initSlides').then(({ defaultInitSlides }) => {
- defaultInitSlides();
+ if (!disposed) {
+ deck = defaultInitSlides();
+ }
});
+
+ return () => {
+ disposed = true;
+ deck?.destroy();
+ };
}, []);
return (
diff --git a/src/components/Slides/initSlides.ts b/src/components/Slides/initSlides.ts
index 8bdff271cf..78a08ac6eb 100644
--- a/src/components/Slides/initSlides.ts
+++ b/src/components/Slides/initSlides.ts
@@ -1,11 +1,12 @@
import Reveal from 'reveal.js';
-import Zoom from 'reveal.js/plugin/zoom';
import Notes from 'reveal.js/plugin/notes';
import Search from 'reveal.js/plugin/search';
import Highlight from 'reveal.js/plugin/highlight';
export const defaultInitSlides = () => {
- new Reveal({
- plugins: [Zoom, Notes, Search, Highlight],
- }).initialize({ hash: true });
+ const deck = new Reveal({
+ plugins: [Notes, Search, Highlight],
+ });
+ deck.initialize({ hash: true });
+ return deck;
};
From a9e1b2ef34e95491a1936d15012c833d419813b1 Mon Sep 17 00:00:00 2001
From: SteffenLm <33038091+SteffenLm@users.noreply.github.com>
Date: Sat, 25 Jul 2026 13:53:00 +0200
Subject: [PATCH 2/2] fix formatting
---
.../steffen/java-2/slides.mdx | 95 +++++++++++++++----
1 file changed, 77 insertions(+), 18 deletions(-)
diff --git a/docs/additional-material/steffen/java-2/slides.mdx b/docs/additional-material/steffen/java-2/slides.mdx
index c3de6208ed..b6288971e2 100644
--- a/docs/additional-material/steffen/java-2/slides.mdx
+++ b/docs/additional-material/steffen/java-2/slides.mdx
@@ -6,33 +6,92 @@ tags: []
---
- 09.04.2026
- Wiederholung,
- Organisatorisches
+
+ Wiederholung, Organisatorisches
+
- 09.04.2026
- Generics
- und Optional
+
+ Generics und Optional
+
- 10.04.2026
- Set,
- Map, Hashes & Records
+
+ Set, Map, Hashes & Records
+
- 16.04.2026
- Funktionale
- Programmierung
+
+ Funktionale Programmierung
+
- 17.04.2026
- Stream
- Api
+
+ Stream Api
+
- 23.04.2026
- Intro
- Algorithmen und Daten Strukturen
+
+ Intro Algorithmen und Daten Strukturen
+
- 23.04.2026
- Suchalgorithmen
+
+ Suchalgorithmen
+
- 24.04.2026
- Rekursion
+
+ Rekursion
+
- 24.04.2026
- Sortieralgorithmen
+
+ Sortieralgorithmen
+
- 11.05.2026
- Stack,
- Queue, List
+
+ Stack, Queue, List
+
- 21.05.2026
- Trees
+
+ Trees
+
- 22.05.2026 Klausurvorbereitung
- 28.05.2026 Klausur Fortgeschrittene Programmierung (50 Punkte / 60 Minuten)