@miragon/slidev-toolkit 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -42,5 +42,6 @@ const GAPS: Record<string, string> = {
42
42
  gap: var(--mg-gap);
43
43
  align-items: stretch;
44
44
  margin-top: 0.5rem;
45
+ margin-bottom: 1rem;
45
46
  }
46
47
  </style>
@@ -62,6 +62,7 @@ const columns = computed(() => {
62
62
  .mg-split {
63
63
  display: grid;
64
64
  margin-top: 0.5rem;
65
+ margin-bottom: 1rem;
65
66
  }
66
67
  /* min-width:0 verhindert, dass breite Grafiken die Spalte über fr sprengen. */
67
68
  .mg-split__visual,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miragon/slidev-toolkit",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "Miragon Slidev toolkit: the brand theme, the layout archetypes, the reusable components (Card, CardGrid, StepList, Figure, SplitView) and the BrandMeshBackground animation. Single source of design truth, consumed by the reference deck in this repo.",
5
5
  "keywords": [
6
6
  "slidev-theme",
package/styles/index.css CHANGED
@@ -7,6 +7,7 @@
7
7
  @import './theme.css';
8
8
  @import './fonts.css';
9
9
  @import './code.css';
10
+ @import './table.css';
10
11
 
11
12
  /* Brand typography: Geist for everything, Geist Mono for code. Set on the app
12
13
  root so it cascades into every layout; redirect Slidev's code-font variable
@@ -0,0 +1,62 @@
1
+ /* Tables — Miragon CI frame for native Markdown tables.
2
+ *
3
+ * A Markdown table (`| a | b |`) is plain markdown, so it needs no component and
4
+ * keeps the slide source clean (it passes the no-raw-html check). This file gives
5
+ * every rendered `<table>` the same white-card treatment the <Card> component and
6
+ * code fences use: white surface, thin grey border, soft blue brand shadow,
7
+ * rounded corners. Header text stays BLACK (the heading rule); the single
8
+ * restrained accent is the blue rule under the header row. Body text is Geist
9
+ * Mono, matching the "Geist Mono for code and tables" CI invariant.
10
+ *
11
+ * Anchor: `#slideshow` is the single container that wraps EVERY slide page
12
+ * (`#slideshow > .slidev-page > <layout root>`), so this reaches tables in every
13
+ * layout — including the custom ones (`content`, `compare`, …) whose root is NOT
14
+ * `.slidev-layout`. Slidev's own defaults live on `.slidev-layout table`
15
+ * (specificity 0,1,1); anchoring on the `#slideshow` id (1,0,1) wins the cascade
16
+ * regardless of load order, without needing `!important`. Column alignment
17
+ * (`:---`, `---:`, `:--:`) is emitted by markdown-it as an inline `text-align`
18
+ * style, so it keeps working on top of these rules with no extra selectors.
19
+ *
20
+ * Colours come from theme.css; the only literal hex are the shared border/row
21
+ * neutrals already used across the toolkit (see code.css).
22
+ */
23
+
24
+ #slideshow table {
25
+ border-collapse: separate;
26
+ border-spacing: 0;
27
+ width: auto;
28
+ margin: 0.5rem 0 1.25rem;
29
+ font-family: var(--miragon-font-mono);
30
+ font-size: 0.95rem;
31
+ line-height: 1.5;
32
+ background: var(--miragon-white);
33
+ border: 1px solid #e5e7eb;
34
+ border-radius: 0.6rem;
35
+ overflow: hidden;
36
+ box-shadow: 0 8px 20px rgba(51, 93, 229, 0.06);
37
+ }
38
+
39
+ /* Header row: black label, restrained blue accent rule underneath. */
40
+ #slideshow thead th {
41
+ color: var(--miragon-text-primary);
42
+ font-weight: 700;
43
+ background: var(--miragon-blue-light);
44
+ border-bottom: 2px solid var(--miragon-blue);
45
+ }
46
+
47
+ #slideshow th,
48
+ #slideshow td {
49
+ padding: 0.55rem 1.1rem;
50
+ text-align: left;
51
+ color: var(--miragon-text-secondary);
52
+ border-bottom: 1px solid #eef1f5;
53
+ vertical-align: top;
54
+ }
55
+
56
+ /* Subtle zebra striping for scannability; last row carries no divider. */
57
+ #slideshow tbody tr:nth-child(even) td {
58
+ background: var(--miragon-gray-light);
59
+ }
60
+ #slideshow tbody tr:last-child td {
61
+ border-bottom: none;
62
+ }