maverick-wave 5.21.0 → 5.23.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.
- package/.claude/skills/mw-maverick-wave/SKILL.md +11 -4
- package/.claude/skills/mw-maverick-wave/references/components.md +123 -11
- package/.claude/skills/mw-maverick-wave/references/layout.md +10 -0
- package/.claude/skills/mw-maverick-wave/references/theming.md +5 -0
- package/CHANGELOG.md +14 -0
- package/README.md +2 -2
- package/index.html +18 -0
- package/maverick-wave.min.css +3 -3
- package/package.json +3 -2
- package/release.sh +6 -0
- package/scripts/verify.js +16 -5
- package/src/partials/contact-container.html +85 -0
- package/src/partials/documentation-container.html +3 -0
- package/src/partials/leader-row-container.html +139 -0
- package/src/partials/lunch-menu-container.html +341 -0
- package/src/scss/abstracts/_functions.scss +38 -7
- package/src/scss/components/_contact.scss +29 -0
- package/src/scss/components/_date-stamp.scss +141 -0
- package/src/scss/components/_index.scss +3 -0
- package/src/scss/components/_leader-row.scss +89 -0
- package/src/scss/components/_pricing.scss +4 -0
- package/src/scss/layout/_grid.scss +6 -0
- package/src/scss/layout/_header-reveal.scss +43 -78
- package/src/scss/layout/_main.scss +16 -0
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "maverick-wave",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.23.0",
|
|
4
4
|
"config": {
|
|
5
|
-
"version_short": "5.
|
|
5
|
+
"version_short": "5.23"
|
|
6
6
|
},
|
|
7
7
|
"description": "A lightweight, modern CSS framework for building responsive websites with elegance and speed.",
|
|
8
8
|
"main": "src/js/main.js",
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"start": "gulp",
|
|
16
16
|
"build": "gulp clean && gulp build",
|
|
17
17
|
"verify": "node scripts/verify.js",
|
|
18
|
+
"verify:release": "node scripts/verify.js --release",
|
|
18
19
|
"prepack": "gulp release"
|
|
19
20
|
},
|
|
20
21
|
"repository": {
|
package/release.sh
CHANGED
|
@@ -11,6 +11,12 @@ echo "## point the README CDN snippets at this version"
|
|
|
11
11
|
sed -i '' -E "s|maverick-wave@[0-9]+\.[0-9]+\.[0-9]+|maverick-wave@${VERSION}|g" README.md
|
|
12
12
|
echo "## make a new release"
|
|
13
13
|
npm run build && npm run prepack
|
|
14
|
+
echo "## verify the release state - bundles and CDN pin, which only exist here"
|
|
15
|
+
if ! npm run verify:release; then
|
|
16
|
+
echo "## verify failed - nothing pushed, nothing published"
|
|
17
|
+
git checkout main
|
|
18
|
+
exit 1
|
|
19
|
+
fi
|
|
14
20
|
echo "## add all changes and push it"
|
|
15
21
|
git add --all
|
|
16
22
|
git commit -m "release: ${VERSION}"
|
package/scripts/verify.js
CHANGED
|
@@ -6,14 +6,20 @@
|
|
|
6
6
|
* 1. every var(--mw-*) has a definition
|
|
7
7
|
* 2. every --mw-* definition is used somewhere
|
|
8
8
|
* 3. every mw-* class in the markup exists in the built CSS
|
|
9
|
-
* 4. the committed root release files match a fresh build
|
|
10
|
-
* 5. the CDN version pinned in the docs matches package.json
|
|
9
|
+
* 4. the committed root release files match a fresh build (--release)
|
|
10
|
+
* 5. the CDN version pinned in the docs matches package.json (--release)
|
|
11
11
|
* 6. no `animation:` shorthand in a file that uses a scroll timeline
|
|
12
12
|
*
|
|
13
|
+
* 4 and 5 describe the release state, which release.sh produces on the release
|
|
14
|
+
* branch - on main they are stale by construction and would fail every CI run.
|
|
15
|
+
* They run under `--release`, which release.sh calls after prepack.
|
|
16
|
+
*
|
|
13
17
|
* Sources are scanned rather than hard-coded so a new partial is covered
|
|
14
18
|
* automatically. Exits 1 on any error; warnings never fail the build.
|
|
15
19
|
*/
|
|
16
20
|
|
|
21
|
+
const RELEASE = process.argv.includes('--release');
|
|
22
|
+
|
|
17
23
|
const fs = require('fs');
|
|
18
24
|
const path = require('path');
|
|
19
25
|
|
|
@@ -133,9 +139,11 @@ for (const [c, where] of [...classesInMarkup].sort()) {
|
|
|
133
139
|
// --- 4: root release files -------------------------------------------------
|
|
134
140
|
// These are committed and consumed via jsDelivr and the GitHub release page.
|
|
135
141
|
// 4.22.0 shipped without them after `gulp clean` deleted them and the deletion
|
|
136
|
-
// got committed - this check
|
|
142
|
+
// got committed - this check stops the release instead.
|
|
137
143
|
|
|
138
|
-
for (const f of
|
|
144
|
+
for (const f of RELEASE
|
|
145
|
+
? ['maverick-wave.min.css', 'maverick-wave.min.js']
|
|
146
|
+
: []) {
|
|
139
147
|
const p = path.join(ROOT, f);
|
|
140
148
|
if (!fs.existsSync(p) || fs.statSync(p).size === 0) {
|
|
141
149
|
errors.push(
|
|
@@ -166,7 +174,10 @@ for (const f of ['maverick-wave.min.css', 'maverick-wave.min.js']) {
|
|
|
166
174
|
const { version } = require(path.join(ROOT, 'package.json'));
|
|
167
175
|
const EXACT_PIN = /maverick-wave@([0-9]+\.[0-9]+\.[0-9]+)/g;
|
|
168
176
|
|
|
169
|
-
|
|
177
|
+
// Only the README half is release state - release.sh rewrites that pin. The
|
|
178
|
+
// skills are installed outside this repo, never get the rewrite, and carry a
|
|
179
|
+
// major range, so an exact pin there is wrong on every branch.
|
|
180
|
+
const readme = RELEASE ? read(path.join(ROOT, 'README.md')) : null;
|
|
170
181
|
if (readme) {
|
|
171
182
|
for (const v of new Set(
|
|
172
183
|
all(readme, EXACT_PIN).filter((v) => v !== version)
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<h3 class="mw-section-subtitle">Contact</h3>
|
|
2
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
3
|
+
The practical block at the end of a site - when we are open, how to reach us.
|
|
4
|
+
Only the second half is a component: <code>mw-contact</code> is an
|
|
5
|
+
<code><address></code> with its italics undone and a label column that
|
|
6
|
+
keeps the values under each other. The hours are a <code><dl></code> of
|
|
7
|
+
<code>mw-leader-row</code>, because a day and its times with a line between
|
|
8
|
+
them is the row that component already is.
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
<div class="mw-grid-auto-md">
|
|
12
|
+
<article class="mw-card">
|
|
13
|
+
<div class="mw-card-body">
|
|
14
|
+
<h4 class="mw-card-title">
|
|
15
|
+
<span class="mw-card-title-icon">
|
|
16
|
+
<i class="fas fa-clock" aria-hidden="true"></i>
|
|
17
|
+
</span>
|
|
18
|
+
Opening hours
|
|
19
|
+
</h4>
|
|
20
|
+
<hr class="mw-card-title-divider" />
|
|
21
|
+
|
|
22
|
+
<dl class="mw-item-list">
|
|
23
|
+
<div class="mw-leader-row">
|
|
24
|
+
<dt class="mw-leader-row-label">Monday to Friday</dt>
|
|
25
|
+
<dd class="mw-leader-row-value">11.30 - 14.00</dd>
|
|
26
|
+
<dd class="mw-leader-row-value">17.00 - 23.00</dd>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="mw-leader-row">
|
|
29
|
+
<dt class="mw-leader-row-label">Saturday</dt>
|
|
30
|
+
<dd class="mw-leader-row-value">17.00 - 23.00</dd>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="mw-leader-row">
|
|
33
|
+
<dt class="mw-leader-row-label">Sunday</dt>
|
|
34
|
+
<dd class="mw-leader-row-value">11.30 - 20.00</dd>
|
|
35
|
+
</div>
|
|
36
|
+
</dl>
|
|
37
|
+
|
|
38
|
+
<p class="mw-text-sm mw-text-muted mw-mt-6 mw-mb-0">
|
|
39
|
+
Hot food all day on Sunday. Otherwise the kitchen closes an hour before
|
|
40
|
+
the house does.
|
|
41
|
+
</p>
|
|
42
|
+
</div>
|
|
43
|
+
</article>
|
|
44
|
+
|
|
45
|
+
<article class="mw-card mw-card-addon-secondary">
|
|
46
|
+
<div class="mw-card-body">
|
|
47
|
+
<h4 class="mw-card-title">
|
|
48
|
+
<span class="mw-card-title-icon">
|
|
49
|
+
<i class="fas fa-location-dot" aria-hidden="true"></i>
|
|
50
|
+
</span>
|
|
51
|
+
How to reach us
|
|
52
|
+
</h4>
|
|
53
|
+
<hr class="mw-card-title-divider" />
|
|
54
|
+
|
|
55
|
+
<address class="mw-contact mw-mb-6">
|
|
56
|
+
<p class="mw-text-bold">Gasthaus Lamm</p>
|
|
57
|
+
<p>
|
|
58
|
+
Marktplatz 3<br />
|
|
59
|
+
72622 Musterhausen
|
|
60
|
+
</p>
|
|
61
|
+
<p class="mw-contact-row">
|
|
62
|
+
<span class="mw-contact-label">Phone</span>
|
|
63
|
+
<a class="mw-link" href="tel:+497123456789">07123 456789</a>
|
|
64
|
+
</p>
|
|
65
|
+
<p class="mw-contact-row">
|
|
66
|
+
<span class="mw-contact-label">Email</span>
|
|
67
|
+
<a class="mw-link" href="mailto:info@gasthaus-lamm.de"
|
|
68
|
+
>info@gasthaus-lamm.de</a
|
|
69
|
+
>
|
|
70
|
+
</p>
|
|
71
|
+
</address>
|
|
72
|
+
|
|
73
|
+
<div class="mw-button-bar mw-button-bar-left">
|
|
74
|
+
<a class="mw-btn mw-btn-primary" href="tel:+497123456789">
|
|
75
|
+
<i class="fas fa-phone" aria-hidden="true"></i>
|
|
76
|
+
Call us
|
|
77
|
+
</a>
|
|
78
|
+
<a class="mw-btn mw-btn-outline" href="mailto:info@gasthaus-lamm.de">
|
|
79
|
+
<i class="fas fa-envelope" aria-hidden="true"></i>
|
|
80
|
+
Write us
|
|
81
|
+
</a>
|
|
82
|
+
</div>
|
|
83
|
+
</div>
|
|
84
|
+
</article>
|
|
85
|
+
</div>
|
|
@@ -59,6 +59,7 @@
|
|
|
59
59
|
</li>
|
|
60
60
|
<li>
|
|
61
61
|
<a href="#item-lists">Item Lists</a>
|
|
62
|
+
<a href="#leader-row">Leader Row</a>
|
|
62
63
|
</li>
|
|
63
64
|
<li>
|
|
64
65
|
<a href="#stepper">Stepper</a>
|
|
@@ -164,6 +165,8 @@
|
|
|
164
165
|
</li>
|
|
165
166
|
<li>
|
|
166
167
|
<a href="#calendar">Calendar</a>
|
|
168
|
+
<a href="#lunch-menu">Lunch Menu</a>
|
|
169
|
+
<a href="#contact">Contact</a>
|
|
167
170
|
</li>
|
|
168
171
|
<li>
|
|
169
172
|
<a href="#pagination">Pagination</a>
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
<h3 class="mw-section-subtitle">Leader row</h3>
|
|
2
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
3
|
+
A label, its value, and a dotted line connecting the two - the row a menu, a
|
|
4
|
+
table of contents and an invoice all draw. The line is generated by the row
|
|
5
|
+
itself, so the markup is two spans.
|
|
6
|
+
</p>
|
|
7
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
8
|
+
Label and value is what <code><dl></code> is for, and since HTML 5.2 a
|
|
9
|
+
<code><div></code> may group a <code><dt></code> and its
|
|
10
|
+
<code><dd></code> inside one - so the semantic version costs no extra
|
|
11
|
+
element over the plain <code><p></code>. Put
|
|
12
|
+
<code>mw-leader-row</code> on that <code><div></code> and the two
|
|
13
|
+
classes on the <code><dt></code> and <code><dd></code>. Use it
|
|
14
|
+
where the pair <em>is</em> the content; where every row also carries a
|
|
15
|
+
description, a <code><p></code> stays simpler.
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
<div class="mw-grid-2 mw-gap-6">
|
|
19
|
+
<div>
|
|
20
|
+
<h3 class="mw-card-title mw-mb-4">On a menu</h3>
|
|
21
|
+
<div class="mw-card mw-card-simple">
|
|
22
|
+
<div class="mw-item-list">
|
|
23
|
+
<div>
|
|
24
|
+
<p class="mw-leader-row">
|
|
25
|
+
<span class="mw-leader-row-label mw-text-bold">Flatbread soup</span>
|
|
26
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary"
|
|
27
|
+
>5.80</span
|
|
28
|
+
>
|
|
29
|
+
</p>
|
|
30
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
31
|
+
Beef broth with pancake strips and chives
|
|
32
|
+
</p>
|
|
33
|
+
</div>
|
|
34
|
+
<div>
|
|
35
|
+
<p class="mw-leader-row">
|
|
36
|
+
<span class="mw-leader-row-label mw-text-bold"
|
|
37
|
+
>Roast pork with dumpling and red cabbage</span
|
|
38
|
+
>
|
|
39
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary"
|
|
40
|
+
>17.50</span
|
|
41
|
+
>
|
|
42
|
+
</p>
|
|
43
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
44
|
+
A long label wraps and the leader stays beside its last line
|
|
45
|
+
</p>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
<h3 class="mw-card-title mw-mb-4 mw-mt-6">Value on the first line</h3>
|
|
51
|
+
<div class="mw-card mw-card-simple">
|
|
52
|
+
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
53
|
+
<code>mw-leader-row-top</code> keeps the value beside the
|
|
54
|
+
<em>first</em> line of a wrapping label instead of the last. On a menu
|
|
55
|
+
that is where the price belongs - next to the dish, not somewhere down
|
|
56
|
+
in its description.
|
|
57
|
+
</p>
|
|
58
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
59
|
+
<span class="mw-leader-row-label mw-text-bold"
|
|
60
|
+
>Roast pork with dumpling and red cabbage</span
|
|
61
|
+
>
|
|
62
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary"
|
|
63
|
+
>17.50</span
|
|
64
|
+
>
|
|
65
|
+
</p>
|
|
66
|
+
</div>
|
|
67
|
+
|
|
68
|
+
<h3 class="mw-card-title mw-mb-4 mw-mt-6">Semantic markup</h3>
|
|
69
|
+
<div class="mw-card mw-card-simple">
|
|
70
|
+
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
71
|
+
The same row as a <code><dl></code>: the group
|
|
72
|
+
<code><div></code> carries <code>mw-leader-row</code>, the
|
|
73
|
+
<code><dt></code> and <code><dd></code> carry the other two
|
|
74
|
+
classes. No extra element over the <code><p></code> version.
|
|
75
|
+
</p>
|
|
76
|
+
<dl class="mw-item-list">
|
|
77
|
+
<div class="mw-leader-row">
|
|
78
|
+
<dt class="mw-leader-row-label">Potato soup with marjoram</dt>
|
|
79
|
+
<dd class="mw-leader-row-value">4.90</dd>
|
|
80
|
+
</div>
|
|
81
|
+
<div class="mw-leader-row">
|
|
82
|
+
<dt class="mw-leader-row-label">Mixed leaf salad</dt>
|
|
83
|
+
<dd class="mw-leader-row-value">3.80</dd>
|
|
84
|
+
</div>
|
|
85
|
+
</dl>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
<div>
|
|
90
|
+
<h3 class="mw-card-title mw-mb-4">Line styles</h3>
|
|
91
|
+
<div class="mw-card mw-card-simple mw-grid-1 mw-gap-6">
|
|
92
|
+
<div>
|
|
93
|
+
<h4 class="mw-text-medium mw-mb-2">Dotted (default)</h4>
|
|
94
|
+
<p class="mw-leader-row">
|
|
95
|
+
<span class="mw-leader-row-label">Introduction</span>
|
|
96
|
+
<span class="mw-leader-row-value">7</span>
|
|
97
|
+
</p>
|
|
98
|
+
</div>
|
|
99
|
+
<div>
|
|
100
|
+
<h4 class="mw-text-medium mw-mb-2">Dashed</h4>
|
|
101
|
+
<p class="mw-leader-row mw-leader-row-dashed">
|
|
102
|
+
<span class="mw-leader-row-label">Second movement</span>
|
|
103
|
+
<span class="mw-leader-row-value">24</span>
|
|
104
|
+
</p>
|
|
105
|
+
</div>
|
|
106
|
+
<div>
|
|
107
|
+
<h4 class="mw-text-medium mw-mb-2">Solid</h4>
|
|
108
|
+
<p class="mw-leader-row mw-leader-row-solid">
|
|
109
|
+
<span class="mw-leader-row-label">Appendix</span>
|
|
110
|
+
<span class="mw-leader-row-value">128</span>
|
|
111
|
+
</p>
|
|
112
|
+
</div>
|
|
113
|
+
<div>
|
|
114
|
+
<h4 class="mw-text-medium mw-mb-2">Retuned per row</h4>
|
|
115
|
+
<p
|
|
116
|
+
class="mw-leader-row"
|
|
117
|
+
style="--mw-leader-row-color: var(--mw-primary-color)"
|
|
118
|
+
>
|
|
119
|
+
<span class="mw-leader-row-label">Total</span>
|
|
120
|
+
<span class="mw-leader-row-value mw-text-bold">1 284.00</span>
|
|
121
|
+
</p>
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
125
|
+
<h3 class="mw-card-title mw-mb-4 mw-mt-6">Two values</h3>
|
|
126
|
+
<div class="mw-card mw-card-simple">
|
|
127
|
+
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
128
|
+
A second <code>mw-leader-row-value</code> needs no extra class - both
|
|
129
|
+
sit after the leader, and a mark in the leader's colour goes between
|
|
130
|
+
them so the pair does not read as one long range.
|
|
131
|
+
</p>
|
|
132
|
+
<p class="mw-leader-row">
|
|
133
|
+
<span class="mw-leader-row-label">Wiener schnitzel with fries</span>
|
|
134
|
+
<span class="mw-leader-row-value mw-text-muted">11.50</span>
|
|
135
|
+
<span class="mw-leader-row-value mw-text-bold">15.90</span>
|
|
136
|
+
</p>
|
|
137
|
+
</div>
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
<h3 class="mw-section-subtitle">Lunch menu</h3>
|
|
2
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
3
|
+
Nothing below is a lunch-menu component. It is <code>mw-card</code>,
|
|
4
|
+
<code>mw-price</code>, <code>mw-date-stamp</code> and two grid classes - a
|
|
5
|
+
weekly menu is a composition, not a widget. One day per row: five columns
|
|
6
|
+
would squeeze a dish name into a fifth of the page, and a wrapping grid would
|
|
7
|
+
orphan the fifth card into a row of its own. <code>mw-grid-even</code> gives
|
|
8
|
+
every row the height of the tallest, so a day with a second line of
|
|
9
|
+
description does not make its card taller than the rest of the week.
|
|
10
|
+
</p>
|
|
11
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
12
|
+
<code>mw-date-stamp</code> answers to the card, not the viewport. On a narrow
|
|
13
|
+
card it is a muted line above the title; once the card is wide enough that a
|
|
14
|
+
single column would leave its right half empty - as every card in a stacked
|
|
15
|
+
list is - the same markup becomes the column on the left. Because the width it
|
|
16
|
+
switches at is the card's, a stamp behaves the same whichever grid it is
|
|
17
|
+
dropped into. <code>mw-date-stamp-today</code> fills that column instead of
|
|
18
|
+
recolouring it: the price is already primary, and two blues compete where one
|
|
19
|
+
would point.
|
|
20
|
+
</p>
|
|
21
|
+
|
|
22
|
+
<div class="mw-container-narrow">
|
|
23
|
+
<div class="mw-grid-1 mw-grid-even">
|
|
24
|
+
<article class="mw-card mw-offer">
|
|
25
|
+
<div class="mw-card-body">
|
|
26
|
+
<p class="mw-date-stamp">
|
|
27
|
+
<span class="mw-date-stamp-day">Mon</span>
|
|
28
|
+
<span class="mw-date-stamp-date">14.09.</span>
|
|
29
|
+
</p>
|
|
30
|
+
<div class="mw-date-stamp-body">
|
|
31
|
+
<h4 class="mw-text-base mw-text-bold mw-mb-2">
|
|
32
|
+
Lentils with spaetzle
|
|
33
|
+
</h4>
|
|
34
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
35
|
+
Two sausages, a splash of vinegar, and bread on the side.
|
|
36
|
+
</p>
|
|
37
|
+
</div>
|
|
38
|
+
<p class="mw-price mw-price-xs">
|
|
39
|
+
<span class="mw-price-amount">10.90</span>
|
|
40
|
+
<span class="mw-price-currency">Euro</span>
|
|
41
|
+
</p>
|
|
42
|
+
</div>
|
|
43
|
+
</article>
|
|
44
|
+
|
|
45
|
+
<article class="mw-card mw-offer">
|
|
46
|
+
<div class="mw-card-body">
|
|
47
|
+
<p class="mw-date-stamp">
|
|
48
|
+
<span class="mw-date-stamp-day">Tue</span>
|
|
49
|
+
<span class="mw-date-stamp-date">15.09.</span>
|
|
50
|
+
</p>
|
|
51
|
+
<div class="mw-date-stamp-body">
|
|
52
|
+
<h4 class="mw-text-base mw-text-bold mw-mb-2">Roast pork</h4>
|
|
53
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
54
|
+
Bread dumpling, red cabbage and a dark gravy.
|
|
55
|
+
</p>
|
|
56
|
+
</div>
|
|
57
|
+
<p class="mw-price mw-price-xs">
|
|
58
|
+
<span class="mw-price-amount">11.90</span>
|
|
59
|
+
<span class="mw-price-currency">Euro</span>
|
|
60
|
+
</p>
|
|
61
|
+
</div>
|
|
62
|
+
</article>
|
|
63
|
+
|
|
64
|
+
<article class="mw-card mw-offer">
|
|
65
|
+
<div class="mw-card-body">
|
|
66
|
+
<p class="mw-date-stamp">
|
|
67
|
+
<span class="mw-date-stamp-day">Wed</span>
|
|
68
|
+
<span class="mw-date-stamp-date">16.09.</span>
|
|
69
|
+
</p>
|
|
70
|
+
<div class="mw-date-stamp-body">
|
|
71
|
+
<h4 class="mw-text-base mw-text-bold mw-mb-2">Cheese spaetzle</h4>
|
|
72
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
73
|
+
Hand-scraped, mountain cheese, roasted onions, leaf salad.
|
|
74
|
+
</p>
|
|
75
|
+
<p class="mw-tags">
|
|
76
|
+
<span class="mw-tag mw-tag-success">veggie</span>
|
|
77
|
+
</p>
|
|
78
|
+
</div>
|
|
79
|
+
<p class="mw-price mw-price-xs">
|
|
80
|
+
<span class="mw-price-amount">10.50</span>
|
|
81
|
+
<span class="mw-price-currency">Euro</span>
|
|
82
|
+
</p>
|
|
83
|
+
</div>
|
|
84
|
+
</article>
|
|
85
|
+
|
|
86
|
+
<article class="mw-card mw-offer">
|
|
87
|
+
<div class="mw-card-body">
|
|
88
|
+
<p class="mw-date-stamp">
|
|
89
|
+
<span class="mw-date-stamp-day">Thu</span>
|
|
90
|
+
<span class="mw-date-stamp-date">17.09.</span>
|
|
91
|
+
</p>
|
|
92
|
+
<div class="mw-date-stamp-body">
|
|
93
|
+
<h4 class="mw-text-base mw-text-bold mw-mb-2">
|
|
94
|
+
Schnitzel in cream sauce
|
|
95
|
+
</h4>
|
|
96
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
97
|
+
Pork, with spaetzle and a small salad.
|
|
98
|
+
</p>
|
|
99
|
+
</div>
|
|
100
|
+
<p class="mw-price mw-price-xs">
|
|
101
|
+
<span class="mw-price-amount">12.90</span>
|
|
102
|
+
<span class="mw-price-currency">Euro</span>
|
|
103
|
+
</p>
|
|
104
|
+
</div>
|
|
105
|
+
</article>
|
|
106
|
+
|
|
107
|
+
<article class="mw-card mw-offer">
|
|
108
|
+
<div class="mw-card-body">
|
|
109
|
+
<p class="mw-date-stamp mw-date-stamp-today">
|
|
110
|
+
<span class="mw-sr-only">Today,</span>
|
|
111
|
+
<span class="mw-date-stamp-day">Fri</span>
|
|
112
|
+
<span class="mw-date-stamp-date">18.09.</span>
|
|
113
|
+
</p>
|
|
114
|
+
<div class="mw-date-stamp-body">
|
|
115
|
+
<h4 class="mw-text-base mw-text-bold mw-mb-2">Baked fish fillet</h4>
|
|
116
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
117
|
+
In beer batter, with warm potato salad and remoulade.
|
|
118
|
+
</p>
|
|
119
|
+
</div>
|
|
120
|
+
<p class="mw-price mw-price-xs">
|
|
121
|
+
<span class="mw-price-amount">11.90</span>
|
|
122
|
+
<span class="mw-price-currency">Euro</span>
|
|
123
|
+
</p>
|
|
124
|
+
</div>
|
|
125
|
+
</article>
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
|
|
129
|
+
<h3 class="mw-card-title mw-mb-4 mw-mt-10">Two dishes a day</h3>
|
|
130
|
+
<p class="mw-text-muted mw-text-measure mw-mb-6">
|
|
131
|
+
The day is the card, so a second dish is another row inside it rather than a
|
|
132
|
+
second card. With a price per dish there is nothing left for a price column to
|
|
133
|
+
hold, so it goes instead where a printed menu puts it - on a
|
|
134
|
+
<code>mw-leader-row</code>, at the end of the line it prices. The stamp does
|
|
135
|
+
not change at all: it still centres against whatever the card holds beside it,
|
|
136
|
+
two rows or ten.
|
|
137
|
+
</p>
|
|
138
|
+
|
|
139
|
+
<div class="mw-container-narrow">
|
|
140
|
+
<div class="mw-grid-1 mw-grid-even">
|
|
141
|
+
<article class="mw-card">
|
|
142
|
+
<div class="mw-card-body">
|
|
143
|
+
<p class="mw-date-stamp">
|
|
144
|
+
<span class="mw-date-stamp-day">Mon</span>
|
|
145
|
+
<span class="mw-date-stamp-date">14.09.</span>
|
|
146
|
+
</p>
|
|
147
|
+
<div class="mw-date-stamp-body">
|
|
148
|
+
<div class="mw-item-list">
|
|
149
|
+
<div>
|
|
150
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
151
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
152
|
+
Lentils with spaetzle
|
|
153
|
+
</span>
|
|
154
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
155
|
+
10.90 €
|
|
156
|
+
</span>
|
|
157
|
+
</p>
|
|
158
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
159
|
+
Two sausages and a splash of vinegar.
|
|
160
|
+
</p>
|
|
161
|
+
</div>
|
|
162
|
+
<div>
|
|
163
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
164
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
165
|
+
Potato soup with marjoram
|
|
166
|
+
<span class="mw-tag mw-tag-success">veggie</span>
|
|
167
|
+
</span>
|
|
168
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
169
|
+
6.50 €
|
|
170
|
+
</span>
|
|
171
|
+
</p>
|
|
172
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
173
|
+
With a slice of farmhouse bread.
|
|
174
|
+
</p>
|
|
175
|
+
</div>
|
|
176
|
+
</div>
|
|
177
|
+
</div>
|
|
178
|
+
</div>
|
|
179
|
+
</article>
|
|
180
|
+
<article class="mw-card">
|
|
181
|
+
<div class="mw-card-body">
|
|
182
|
+
<p class="mw-date-stamp">
|
|
183
|
+
<span class="mw-date-stamp-day">Tue</span>
|
|
184
|
+
<span class="mw-date-stamp-date">15.09.</span>
|
|
185
|
+
</p>
|
|
186
|
+
<div class="mw-date-stamp-body">
|
|
187
|
+
<div class="mw-item-list">
|
|
188
|
+
<div>
|
|
189
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
190
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
191
|
+
Roast pork
|
|
192
|
+
</span>
|
|
193
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
194
|
+
11.90 €
|
|
195
|
+
</span>
|
|
196
|
+
</p>
|
|
197
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
198
|
+
Bread dumpling, red cabbage, dark gravy.
|
|
199
|
+
</p>
|
|
200
|
+
</div>
|
|
201
|
+
<div>
|
|
202
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
203
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
204
|
+
Cheese spaetzle
|
|
205
|
+
<span class="mw-tag mw-tag-success">veggie</span>
|
|
206
|
+
</span>
|
|
207
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
208
|
+
10.50 €
|
|
209
|
+
</span>
|
|
210
|
+
</p>
|
|
211
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
212
|
+
Mountain cheese, roasted onions, leaf salad.
|
|
213
|
+
</p>
|
|
214
|
+
</div>
|
|
215
|
+
</div>
|
|
216
|
+
</div>
|
|
217
|
+
</div>
|
|
218
|
+
</article>
|
|
219
|
+
<article class="mw-card">
|
|
220
|
+
<div class="mw-card-body">
|
|
221
|
+
<p class="mw-date-stamp">
|
|
222
|
+
<span class="mw-date-stamp-day">Wed</span>
|
|
223
|
+
<span class="mw-date-stamp-date">16.09.</span>
|
|
224
|
+
</p>
|
|
225
|
+
<div class="mw-date-stamp-body">
|
|
226
|
+
<div class="mw-item-list">
|
|
227
|
+
<div>
|
|
228
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
229
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
230
|
+
Barley stew
|
|
231
|
+
<span class="mw-tag mw-tag-success">veggie</span>
|
|
232
|
+
</span>
|
|
233
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
234
|
+
9.50 €
|
|
235
|
+
</span>
|
|
236
|
+
</p>
|
|
237
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
238
|
+
Root vegetables, simmered since morning.
|
|
239
|
+
</p>
|
|
240
|
+
</div>
|
|
241
|
+
<div>
|
|
242
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
243
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
244
|
+
Beef roulade
|
|
245
|
+
</span>
|
|
246
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
247
|
+
13.50 €
|
|
248
|
+
</span>
|
|
249
|
+
</p>
|
|
250
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
251
|
+
Mashed potato and green beans.
|
|
252
|
+
</p>
|
|
253
|
+
</div>
|
|
254
|
+
</div>
|
|
255
|
+
</div>
|
|
256
|
+
</div>
|
|
257
|
+
</article>
|
|
258
|
+
<article class="mw-card">
|
|
259
|
+
<div class="mw-card-body">
|
|
260
|
+
<p class="mw-date-stamp">
|
|
261
|
+
<span class="mw-date-stamp-day">Thu</span>
|
|
262
|
+
<span class="mw-date-stamp-date">17.09.</span>
|
|
263
|
+
</p>
|
|
264
|
+
<div class="mw-date-stamp-body">
|
|
265
|
+
<div class="mw-item-list">
|
|
266
|
+
<div>
|
|
267
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
268
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
269
|
+
Schnitzel in cream sauce
|
|
270
|
+
</span>
|
|
271
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
272
|
+
12.90 €
|
|
273
|
+
</span>
|
|
274
|
+
</p>
|
|
275
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
276
|
+
Pork, with spaetzle and a small salad.
|
|
277
|
+
</p>
|
|
278
|
+
</div>
|
|
279
|
+
<div>
|
|
280
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
281
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
282
|
+
Mushroom ragout
|
|
283
|
+
<span class="mw-tag mw-tag-success">veggie</span>
|
|
284
|
+
</span>
|
|
285
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
286
|
+
10.90 €
|
|
287
|
+
</span>
|
|
288
|
+
</p>
|
|
289
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
290
|
+
With a bread dumpling.
|
|
291
|
+
</p>
|
|
292
|
+
</div>
|
|
293
|
+
</div>
|
|
294
|
+
</div>
|
|
295
|
+
</div>
|
|
296
|
+
</article>
|
|
297
|
+
<article class="mw-card">
|
|
298
|
+
<div class="mw-card-body">
|
|
299
|
+
<p class="mw-date-stamp mw-date-stamp-today">
|
|
300
|
+
<span class="mw-sr-only">Today,</span>
|
|
301
|
+
<span class="mw-date-stamp-day">Fri</span>
|
|
302
|
+
<span class="mw-date-stamp-date">18.09.</span>
|
|
303
|
+
</p>
|
|
304
|
+
<div class="mw-date-stamp-body">
|
|
305
|
+
<div class="mw-item-list">
|
|
306
|
+
<div>
|
|
307
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
308
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
309
|
+
Baked fish fillet
|
|
310
|
+
</span>
|
|
311
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
312
|
+
11.90 €
|
|
313
|
+
</span>
|
|
314
|
+
</p>
|
|
315
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
316
|
+
Beer batter, warm potato salad, remoulade.
|
|
317
|
+
</p>
|
|
318
|
+
</div>
|
|
319
|
+
<div>
|
|
320
|
+
<p class="mw-leader-row mw-leader-row-top">
|
|
321
|
+
<span class="mw-leader-row-label mw-text-bold">
|
|
322
|
+
Pancake soup
|
|
323
|
+
</span>
|
|
324
|
+
<span class="mw-leader-row-value mw-text-bold mw-text-primary">
|
|
325
|
+
5.80 €
|
|
326
|
+
</span>
|
|
327
|
+
</p>
|
|
328
|
+
<p class="mw-text-sm mw-text-muted mw-mb-0">
|
|
329
|
+
Beef broth with chives.
|
|
330
|
+
</p>
|
|
331
|
+
</div>
|
|
332
|
+
</div>
|
|
333
|
+
</div>
|
|
334
|
+
</div>
|
|
335
|
+
</article>
|
|
336
|
+
</div>
|
|
337
|
+
</div>
|
|
338
|
+
|
|
339
|
+
<p class="mw-text-muted mw-text-sm mw-mt-6">
|
|
340
|
+
The menu changes every week. No reservation, while the pot lasts.
|
|
341
|
+
</p>
|