diff --git a/src/components/slides/BulletsSlide.vue b/src/components/slides/BulletsSlide.vue new file mode 100644 index 0000000..2d4a4cb --- /dev/null +++ b/src/components/slides/BulletsSlide.vue @@ -0,0 +1,33 @@ + + + diff --git a/src/components/slides/KeysSlide.vue b/src/components/slides/KeysSlide.vue new file mode 100644 index 0000000..e08c205 --- /dev/null +++ b/src/components/slides/KeysSlide.vue @@ -0,0 +1,40 @@ + + + diff --git a/src/components/slides/ResourcesSlide.vue b/src/components/slides/ResourcesSlide.vue new file mode 100644 index 0000000..8590a4d --- /dev/null +++ b/src/components/slides/ResourcesSlide.vue @@ -0,0 +1,43 @@ + + + diff --git a/src/components/slides/SlideShell.vue b/src/components/slides/SlideShell.vue new file mode 100644 index 0000000..84faf57 --- /dev/null +++ b/src/components/slides/SlideShell.vue @@ -0,0 +1,31 @@ + + + diff --git a/src/components/slides/TitleSlide.vue b/src/components/slides/TitleSlide.vue new file mode 100644 index 0000000..20599df --- /dev/null +++ b/src/components/slides/TitleSlide.vue @@ -0,0 +1,32 @@ + + + diff --git a/src/features/slides/types.ts b/src/features/slides/types.ts new file mode 100644 index 0000000..d3ce619 --- /dev/null +++ b/src/features/slides/types.ts @@ -0,0 +1,16 @@ +import type { Component } from 'vue' + +/** + * A slide is a layout component plus the props that feed it. + * The deck renders ``, so any + * component under `src/components/slides/` can be dropped in here — generic + * layouts for text-heavy slides, bespoke components for the diagram slides. + */ +export interface Slide { + /** Stable id used for the URL hash (e.g. #keys) and nav. */ + id: string + /** Short label for the overview / progress tooltip. */ + label: string + component: Component + props?: Record +} diff --git a/src/views/PresentationView.vue b/src/views/PresentationView.vue new file mode 100644 index 0000000..96e29e8 --- /dev/null +++ b/src/views/PresentationView.vue @@ -0,0 +1,150 @@ + + + + +