maverick-wave 4.28.0 → 5.0.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/settings.local.json +29 -1
- package/.claude/skills/mw-maverick-wave/SKILL.md +39 -24
- package/.claude/skills/mw-maverick-wave/examples/angular-services.md +16 -4
- package/.claude/skills/mw-maverick-wave/examples/static-landing-page.md +13 -4
- package/.claude/skills/mw-maverick-wave/references/components.md +42 -5
- package/.claude/skills/mw-maverick-wave/references/forms.md +14 -2
- package/.claude/skills/mw-maverick-wave/references/javascript.md +17 -4
- package/.claude/skills/mw-maverick-wave/references/layout.md +53 -19
- package/.claude/skills/mw-maverick-wave/references/theming.md +38 -1
- package/.impeccable/config.local.json +5 -0
- package/.impeccable/hook.cache.json +1 -0
- package/CHANGELOG.md +11 -0
- package/CLAUDE.md +5 -5
- package/README.md +48 -4
- package/index.html +19 -38
- package/maverick-wave.min.css +14 -12
- package/maverick-wave.min.js +1 -1
- package/package.json +2 -2
- package/scripts/verify.js +27 -2
- package/src/js/main.js +223 -83
- package/src/partials/accordions-container.html +6 -10
- package/src/partials/alerts-container.html +6 -6
- package/src/partials/announcement-container.html +5 -5
- package/src/partials/avatars-container.html +85 -17
- package/src/partials/badges-container.html +6 -6
- package/src/partials/blog-posts-container.html +11 -12
- package/src/partials/buttons-container.html +3 -3
- package/src/partials/cards-container.html +26 -9
- package/src/partials/code-container.html +5 -5
- package/src/partials/content-slider-container.html +5 -4
- package/src/partials/divider-container.html +7 -7
- package/src/partials/dropdown-container.html +2 -2
- package/src/partials/empty-state-container.html +5 -5
- package/src/partials/footer-container.html +21 -18
- package/src/partials/form-elements-container.html +14 -14
- package/src/partials/gallery-container.html +16 -8
- package/src/partials/get-started-container.html +4 -8
- package/src/partials/header-container.html +18 -7
- package/src/partials/home-container.html +10 -20
- package/src/partials/input-group-container.html +11 -2
- package/src/partials/kbd-container.html +1 -1
- package/src/partials/login-container.html +5 -1
- package/src/partials/media-container.html +2 -2
- package/src/partials/modals-container.html +22 -32
- package/src/partials/pricing-container.html +9 -9
- package/src/partials/skeleton-container.html +6 -6
- package/src/partials/stepper-container.html +2 -2
- package/src/partials/tables-container.html +12 -12
- package/src/partials/tabs-container.html +17 -27
- package/src/partials/tags-container.html +23 -17
- package/src/partials/techstack-bucket-container.html +13 -0
- package/src/partials/tiles-container.html +26 -9
- package/src/partials/typography-container.html +7 -6
- package/src/partials/utilities-container.html +35 -15
- package/src/scss/_layers.scss +10 -0
- package/src/scss/abstracts/_index.scss +6 -0
- package/src/scss/abstracts/_mixins.scss +61 -153
- package/src/scss/abstracts/_variables.scss +123 -319
- package/src/scss/base/_base.scss +170 -190
- package/src/scss/base/_reset.scss +106 -104
- package/src/scss/base/_typography.scss +153 -151
- package/src/scss/components/_accordions.scss +97 -97
- package/src/scss/components/_alerts.scss +71 -70
- package/src/scss/components/_announcement.scss +71 -70
- package/src/scss/components/_avatars.scss +130 -142
- package/src/scss/components/_badge.scss +131 -132
- package/src/scss/components/_blog-post.scss +223 -220
- package/src/scss/components/_breadcrumbs.scss +93 -92
- package/src/scss/components/_button-bar.scss +102 -110
- package/src/scss/components/_buttons.scss +319 -324
- package/src/scss/components/_calendar.scss +251 -252
- package/src/scss/components/_cards.scss +359 -386
- package/src/scss/components/_code.scss +190 -194
- package/src/scss/components/_coming-soon.scss +77 -75
- package/src/scss/components/_content-slider.scss +90 -89
- package/src/scss/components/_divider.scss +55 -53
- package/src/scss/components/_dropdown.scss +179 -185
- package/src/scss/components/_empty-state.scss +57 -57
- package/src/scss/components/_flag.scss +294 -278
- package/src/scss/components/_gallery.scss +131 -133
- package/src/scss/components/_info.scss +151 -167
- package/src/scss/components/_kanban.scss +332 -341
- package/src/scss/components/_kbd.scss +40 -38
- package/src/scss/components/_lang-switch.scss +89 -97
- package/src/scss/components/_links.scss +21 -28
- package/src/scss/components/_lists.scss +510 -514
- package/src/scss/components/_localhost-indicator.scss +26 -24
- package/src/scss/components/_media.scss +22 -20
- package/src/scss/components/_meta-info.scss +35 -33
- package/src/scss/components/_modals.scss +277 -186
- package/src/scss/components/_pagination.scss +81 -87
- package/src/scss/components/_panels.scss +99 -97
- package/src/scss/components/_pricing.scss +183 -241
- package/src/scss/components/_progress.scss +112 -89
- package/src/scss/components/_prose.scss +35 -33
- package/src/scss/components/_ratings.scss +40 -38
- package/src/scss/components/_segmented.scss +82 -84
- package/src/scss/components/_skeleton.scss +66 -72
- package/src/scss/components/_spinners.scss +155 -159
- package/src/scss/components/_stepper.scss +116 -116
- package/src/scss/components/_tables.scss +155 -148
- package/src/scss/components/_tabs.scss +232 -141
- package/src/scss/components/_tags.scss +109 -107
- package/src/scss/components/_techstack-bucket.scss +123 -122
- package/src/scss/components/_testimonial.scss +72 -70
- package/src/scss/components/_theme-toggle.scss +53 -51
- package/src/scss/components/_tiles.scss +174 -174
- package/src/scss/components/_timelines.scss +282 -280
- package/src/scss/components/_toasts.scss +66 -72
- package/src/scss/form-elements/_checkbox.scss +117 -132
- package/src/scss/form-elements/_form.scss +149 -115
- package/src/scss/form-elements/_input-group.scss +99 -103
- package/src/scss/form-elements/_input.scss +74 -74
- package/src/scss/form-elements/_login.scss +48 -48
- package/src/scss/form-elements/_prefilled.scss +53 -51
- package/src/scss/form-elements/_radio.scss +95 -107
- package/src/scss/form-elements/_select.scss +42 -42
- package/src/scss/form-elements/_slider.scss +117 -132
- package/src/scss/form-elements/_textarea.scss +68 -54
- package/src/scss/form-elements/_toggle.scss +127 -140
- package/src/scss/layout/_footer.scss +172 -171
- package/src/scss/layout/_grid.scss +268 -302
- package/src/scss/layout/_header.scss +426 -427
- package/src/scss/layout/_home.scss +28 -27
- package/src/scss/layout/_main.scss +275 -238
- package/src/scss/layout/_page-header.scss +38 -36
- package/src/scss/layout/_section.scss +150 -124
- package/src/scss/main.scss +1 -1
- package/src/scss/utilities/_accessibility.scss +46 -45
- package/src/scss/utilities/_aspect.scss +22 -20
- package/src/scss/utilities/_corner.scss +23 -5
- package/src/scss/utilities/_display.scss +76 -70
- package/src/scss/utilities/_elevation.scss +13 -11
- package/src/scss/utilities/_flex.scss +83 -85
- package/src/scss/utilities/_reveal.scss +40 -63
- package/src/scss/utilities/_spacing.scss +63 -64
- package/src/scss/utilities/_text.scss +139 -141
- package/src/scss/utilities/_touch-targets.scss +130 -147
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
<h3 class="mw-card-title mw-mb-4">Actions menu</h3>
|
|
15
15
|
<div class="mw-card mw-card-simple mw-grid-1 mw-gap-6">
|
|
16
16
|
<div>
|
|
17
|
-
<
|
|
17
|
+
<h4 class="mw-text-medium mw-mb-2">Default</h4>
|
|
18
18
|
<details class="mw-dropdown">
|
|
19
19
|
<summary class="mw-btn mw-btn-primary">
|
|
20
20
|
Actions <i class="fas fa-chevron-down mw-dropdown-caret"></i>
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
</div>
|
|
40
40
|
|
|
41
41
|
<div>
|
|
42
|
-
<
|
|
42
|
+
<h4 class="mw-text-medium mw-mb-2">As a picker</h4>
|
|
43
43
|
<details class="mw-dropdown">
|
|
44
44
|
<summary class="mw-btn mw-btn-outline">
|
|
45
45
|
Sort by: Newest
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<div>
|
|
10
10
|
<h3 class="mw-card-title mw-mb-4">Basic & Color Variants</h3>
|
|
11
11
|
<div class="mw-card mw-card-simple">
|
|
12
|
-
<
|
|
12
|
+
<h4 class="mw-text-medium mw-mb-2">Default</h4>
|
|
13
13
|
<div class="mw-empty-state">
|
|
14
14
|
<div class="mw-empty-state-icon"><i class="fas fa-inbox"></i></div>
|
|
15
15
|
<p class="mw-empty-state-title">Nothing here yet</p>
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
</div>
|
|
22
22
|
|
|
23
23
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
24
|
-
<
|
|
24
|
+
<h4 class="mw-text-medium mw-mb-2">Warning</h4>
|
|
25
25
|
<div class="mw-empty-state mw-empty-state-warning mw-empty-state-sm">
|
|
26
26
|
<div class="mw-empty-state-icon">
|
|
27
27
|
<i class="fas fa-exclamation-triangle"></i>
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
<div>
|
|
39
39
|
<h3 class="mw-card-title mw-mb-4">More Variants</h3>
|
|
40
40
|
<div class="mw-card mw-card-simple">
|
|
41
|
-
<
|
|
41
|
+
<h4 class="mw-text-medium mw-mb-2">Success</h4>
|
|
42
42
|
<div class="mw-empty-state mw-empty-state-success mw-empty-state-sm">
|
|
43
43
|
<div class="mw-empty-state-icon">
|
|
44
44
|
<i class="fas fa-check-circle"></i>
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
</div>
|
|
52
52
|
|
|
53
53
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
54
|
-
<
|
|
54
|
+
<h4 class="mw-text-medium mw-mb-2">Primary (small)</h4>
|
|
55
55
|
<div class="mw-empty-state mw-empty-state-primary mw-empty-state-sm">
|
|
56
56
|
<div class="mw-empty-state-icon"><i class="fas fa-search"></i></div>
|
|
57
57
|
<p class="mw-empty-state-title">No items match</p>
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
</div>
|
|
64
64
|
|
|
65
65
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
66
|
-
<
|
|
66
|
+
<h4 class="mw-text-medium mw-mb-2">Danger</h4>
|
|
67
67
|
<div class="mw-empty-state mw-empty-state-danger mw-empty-state-sm">
|
|
68
68
|
<div class="mw-empty-state-icon">
|
|
69
69
|
<i class="fas fa-times-circle"></i>
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
<div class="mw-footer-column">
|
|
3
3
|
<h3>The framework</h3>
|
|
4
4
|
<p>
|
|
5
|
-
A
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
codebase required manual refinement and customization.
|
|
5
|
+
A CSS framework for responsive sites - grid, components, forms, dark mode.
|
|
6
|
+
AI tools drafted parts of it; most of what is in here was reworked by hand
|
|
7
|
+
afterwards.
|
|
9
8
|
</p>
|
|
10
9
|
</div>
|
|
11
10
|
|
|
@@ -51,8 +50,7 @@
|
|
|
51
50
|
|
|
52
51
|
<div class="mw-footer-column">
|
|
53
52
|
<h3>Contact Me</h3>
|
|
54
|
-
<p>
|
|
55
|
-
<p>Please use the social links below</p>
|
|
53
|
+
<p>Questions or feedback? Every link below reaches me.</p>
|
|
56
54
|
</div>
|
|
57
55
|
</div>
|
|
58
56
|
|
|
@@ -60,8 +58,8 @@
|
|
|
60
58
|
<a
|
|
61
59
|
href="https://github.com/m1well"
|
|
62
60
|
target="_blank"
|
|
63
|
-
type="button"
|
|
64
61
|
data-tooltip="GitHub"
|
|
62
|
+
aria-label="GitHub"
|
|
65
63
|
>
|
|
66
64
|
<i class="fab fa-github"></i>
|
|
67
65
|
</a>
|
|
@@ -69,6 +67,7 @@
|
|
|
69
67
|
href="https://www.linkedin.com/in/michael-wellner"
|
|
70
68
|
target="_blank"
|
|
71
69
|
data-tooltip="LinkedIn"
|
|
70
|
+
aria-label="LinkedIn"
|
|
72
71
|
>
|
|
73
72
|
<i class="fab fa-linkedin"></i>
|
|
74
73
|
</a>
|
|
@@ -76,27 +75,31 @@
|
|
|
76
75
|
href="https://www.xing.com/profile/Michael_Wellner5/"
|
|
77
76
|
target="_blank"
|
|
78
77
|
data-tooltip="Xing"
|
|
78
|
+
aria-label="Xing"
|
|
79
79
|
>
|
|
80
80
|
<i class="fab fa-xing"></i>
|
|
81
81
|
</a>
|
|
82
|
-
<a
|
|
82
|
+
<a
|
|
83
|
+
href="https://dev.to/m1well"
|
|
84
|
+
target="_blank"
|
|
85
|
+
data-tooltip="dev.to"
|
|
86
|
+
aria-label="dev.to"
|
|
87
|
+
>
|
|
83
88
|
<i class="fab fa-dev"></i>
|
|
84
89
|
</a>
|
|
85
|
-
<a
|
|
90
|
+
<a
|
|
91
|
+
href="mailto:info@m1well.com"
|
|
92
|
+
target="_blank"
|
|
93
|
+
data-tooltip="Mail"
|
|
94
|
+
aria-label="Mail"
|
|
95
|
+
>
|
|
86
96
|
<i class="fa fa-envelope"></i>
|
|
87
97
|
</a>
|
|
88
98
|
</div>
|
|
89
99
|
|
|
90
100
|
<p class="mw-disclaimer">
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
fluidity, just like a maverick wave that charts its own course across the
|
|
94
|
-
ocean. The framework was named to reflect its bold approach to web design -
|
|
95
|
-
breaking free from conventional constraints while maintaining a natural flow
|
|
96
|
-
that adapts seamlessly to any environment. Like the powerful yet graceful
|
|
97
|
-
movement of waves, MaverickWave combines strength and flexibility, empowering
|
|
98
|
-
developers to create distinctive digital experiences that stand out in the
|
|
99
|
-
vast sea of the web.
|
|
101
|
+
Named after the one wave that breaks off the reef instead of with the set. MIT
|
|
102
|
+
licensed.
|
|
100
103
|
</p>
|
|
101
104
|
|
|
102
105
|
<p class="mw-copyright">
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
<div class="mw-grid-4-lg mw-mt-4">
|
|
124
124
|
<!-- Default vertical -->
|
|
125
125
|
<div class="mw-mb-6">
|
|
126
|
-
<
|
|
126
|
+
<h4 class="mw-mb-2">Default</h4>
|
|
127
127
|
<div class="mw-checkbox-group">
|
|
128
128
|
<label class="mw-checkbox">
|
|
129
129
|
<input type="checkbox" name="cb1" />
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
|
|
141
141
|
<!-- Inline small -->
|
|
142
142
|
<div class="mw-mb-6">
|
|
143
|
-
<
|
|
143
|
+
<h4 class="mw-mb-2">Small & Inline</h4>
|
|
144
144
|
<div class="mw-checkbox-group mw-checkbox-group-inline">
|
|
145
145
|
<label class="mw-checkbox mw-checkbox-sm">
|
|
146
146
|
<input type="checkbox" name="cb2" />
|
|
@@ -157,8 +157,8 @@
|
|
|
157
157
|
|
|
158
158
|
<!-- Large & colored -->
|
|
159
159
|
<div class="mw-mb-6">
|
|
160
|
-
<
|
|
161
|
-
<div class="mw-checkbox-group
|
|
160
|
+
<h4 class="mw-mb-2">Large & Colored</h4>
|
|
161
|
+
<div class="mw-checkbox-group">
|
|
162
162
|
<label class="mw-checkbox mw-checkbox-lg mw-checkbox-success">
|
|
163
163
|
<input type="checkbox" name="cb3" />
|
|
164
164
|
<div class="mw-checkbox-box"></div>
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
|
|
175
175
|
<!-- Error -->
|
|
176
176
|
<div class="mw-mb-6">
|
|
177
|
-
<
|
|
177
|
+
<h4 class="mw-mb-2">Error</h4>
|
|
178
178
|
<div class="mw-checkbox-group mw-form-element-error">
|
|
179
179
|
<label class="mw-checkbox">
|
|
180
180
|
<input type="checkbox" name="cb1" />
|
|
@@ -197,7 +197,7 @@
|
|
|
197
197
|
<div class="mw-grid-4-lg mw-mt-4">
|
|
198
198
|
<!-- Default (vertical) -->
|
|
199
199
|
<div class="mw-mb-6">
|
|
200
|
-
<
|
|
200
|
+
<h4 class="mw-mb-2">Default</h4>
|
|
201
201
|
<div class="mw-radio-group">
|
|
202
202
|
<label class="mw-radio">
|
|
203
203
|
<input type="radio" name="opt1" />
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
|
|
220
220
|
<!-- Small Inline -->
|
|
221
221
|
<div class="mw-mb-6">
|
|
222
|
-
<
|
|
222
|
+
<h4 class="mw-mb-2">Small & Inline</h4>
|
|
223
223
|
<div class="mw-radio-group mw-radio-group-inline">
|
|
224
224
|
<label class="mw-radio mw-radio-sm">
|
|
225
225
|
<input type="radio" name="opt2" />
|
|
@@ -236,8 +236,8 @@
|
|
|
236
236
|
|
|
237
237
|
<!-- Large & Colored -->
|
|
238
238
|
<div class="mw-mb-6">
|
|
239
|
-
<
|
|
240
|
-
<div class="mw-radio-group
|
|
239
|
+
<h4 class="mw-mb-2">Large & Colored</h4>
|
|
240
|
+
<div class="mw-radio-group">
|
|
241
241
|
<label class="mw-radio mw-radio-lg mw-radio-success">
|
|
242
242
|
<input type="radio" name="opt3" />
|
|
243
243
|
<div class="mw-radio-button"></div>
|
|
@@ -253,7 +253,7 @@
|
|
|
253
253
|
|
|
254
254
|
<!-- Error -->
|
|
255
255
|
<div class="mw-mb-6">
|
|
256
|
-
<
|
|
256
|
+
<h4 class="mw-mb-2">Error</h4>
|
|
257
257
|
<div class="mw-radio-group mw-form-element-error">
|
|
258
258
|
<label class="mw-radio">
|
|
259
259
|
<input type="radio" name="opt1" />
|
|
@@ -541,7 +541,7 @@ Imported from the previous application.</textarea
|
|
|
541
541
|
<div class="mw-grid-4-lg mw-mt-4">
|
|
542
542
|
<!-- Default -->
|
|
543
543
|
<div class="mw-mb-6">
|
|
544
|
-
<
|
|
544
|
+
<h4 class="mw-mb-2">Default</h4>
|
|
545
545
|
<div class="mw-toggle-group">
|
|
546
546
|
<label class="mw-toggle">
|
|
547
547
|
<input type="checkbox" />
|
|
@@ -558,7 +558,7 @@ Imported from the previous application.</textarea
|
|
|
558
558
|
|
|
559
559
|
<!-- Small & Inline -->
|
|
560
560
|
<div class="mw-mb-6">
|
|
561
|
-
<
|
|
561
|
+
<h4 class="mw-mb-2">Small & Inline</h4>
|
|
562
562
|
<div class="mw-toggle-group mw-toggle-group-inline">
|
|
563
563
|
<label class="mw-toggle mw-toggle-sm">
|
|
564
564
|
<input type="checkbox" checked />
|
|
@@ -580,7 +580,7 @@ Imported from the previous application.</textarea
|
|
|
580
580
|
|
|
581
581
|
<!-- Large & Colored -->
|
|
582
582
|
<div class="mw-mb-6">
|
|
583
|
-
<
|
|
583
|
+
<h4 class="mw-mb-2">Large & Colored</h4>
|
|
584
584
|
<div class="mw-toggle-group">
|
|
585
585
|
<label class="mw-toggle mw-toggle-lg mw-toggle-success">
|
|
586
586
|
<input type="checkbox" checked />
|
|
@@ -597,7 +597,7 @@ Imported from the previous application.</textarea
|
|
|
597
597
|
|
|
598
598
|
<!-- Disabled -->
|
|
599
599
|
<div>
|
|
600
|
-
<
|
|
600
|
+
<h4 class="mw-mb-2">Disabled</h4>
|
|
601
601
|
<div class="mw-toggle-group">
|
|
602
602
|
<label class="mw-toggle mw-toggle-disabled">
|
|
603
603
|
<input type="checkbox" disabled />
|
|
@@ -15,28 +15,36 @@
|
|
|
15
15
|
<!-- Track -->
|
|
16
16
|
<div class="mw-gallery-track">
|
|
17
17
|
<div class="mw-gallery-slide" data-desc="Beautiful Mountain">
|
|
18
|
-
<img
|
|
18
|
+
<img
|
|
19
|
+
src="images/gallery-mountain.svg"
|
|
20
|
+
alt="Beautiful Mountain"
|
|
21
|
+
loading="lazy"
|
|
22
|
+
/>
|
|
19
23
|
</div>
|
|
20
24
|
<div class="mw-gallery-slide" data-desc="Peaceful Lake">
|
|
21
|
-
<img src="images/gallery-lake.svg" alt="Peaceful Lake" />
|
|
25
|
+
<img src="images/gallery-lake.svg" alt="Peaceful Lake" loading="lazy" />
|
|
22
26
|
</div>
|
|
23
27
|
<div class="mw-gallery-slide" data-desc="City Vibes">
|
|
24
|
-
<img src="images/gallery-city.svg" alt="City Vibes" />
|
|
28
|
+
<img src="images/gallery-city.svg" alt="City Vibes" loading="lazy" />
|
|
25
29
|
</div>
|
|
26
30
|
<div class="mw-gallery-slide" data-desc="Golden Forest">
|
|
27
|
-
<img
|
|
31
|
+
<img
|
|
32
|
+
src="images/gallery-forest.svg"
|
|
33
|
+
alt="Golden Forest"
|
|
34
|
+
loading="lazy"
|
|
35
|
+
/>
|
|
28
36
|
</div>
|
|
29
37
|
<div class="mw-gallery-slide" data-desc="Desert View">
|
|
30
|
-
<img src="images/gallery-desert.svg" alt="Desert View" />
|
|
38
|
+
<img src="images/gallery-desert.svg" alt="Desert View" loading="lazy" />
|
|
31
39
|
</div>
|
|
32
40
|
<div class="mw-gallery-slide" data-desc="Ocean Breeze">
|
|
33
|
-
<img src="images/gallery-ocean.svg" alt="Ocean Breeze" />
|
|
41
|
+
<img src="images/gallery-ocean.svg" alt="Ocean Breeze" loading="lazy" />
|
|
34
42
|
</div>
|
|
35
43
|
<div class="mw-gallery-slide" data-desc="Old Town">
|
|
36
|
-
<img src="images/gallery-oldtown.svg" alt="Old Town" />
|
|
44
|
+
<img src="images/gallery-oldtown.svg" alt="Old Town" loading="lazy" />
|
|
37
45
|
</div>
|
|
38
46
|
<div class="mw-gallery-slide" data-desc="Snowy Hills">
|
|
39
|
-
<img src="images/gallery-snow.svg" alt="Snowy Hills" />
|
|
47
|
+
<img src="images/gallery-snow.svg" alt="Snowy Hills" loading="lazy" />
|
|
40
48
|
</div>
|
|
41
49
|
</div>
|
|
42
50
|
|
|
@@ -323,7 +323,7 @@ import './assets/maverick-wave.min.css';</code></pre>
|
|
|
323
323
|
<code>@font-face</code> and then override the CSS font variable.
|
|
324
324
|
</p>
|
|
325
325
|
<div class="mw-card mw-card-simple">
|
|
326
|
-
<
|
|
326
|
+
<h4 class="mw-mb-2">1. Load the Font</h4>
|
|
327
327
|
<pre class="mw-code-block"><code>/* your-custom-styles.css */
|
|
328
328
|
@font-face {
|
|
329
329
|
font-family: 'Your Custom Font';
|
|
@@ -344,7 +344,7 @@ import './assets/maverick-wave.min.css';</code></pre>
|
|
|
344
344
|
}
|
|
345
345
|
</code></pre>
|
|
346
346
|
|
|
347
|
-
<
|
|
347
|
+
<h4 class="mw-mt-4 mw-mb-2">2. Apply the Font</h4>
|
|
348
348
|
<p>
|
|
349
349
|
<strong>CSS Variable Method:</strong>
|
|
350
350
|
</p>
|
|
@@ -358,13 +358,9 @@ import './assets/maverick-wave.min.css';</code></pre>
|
|
|
358
358
|
</div>
|
|
359
359
|
|
|
360
360
|
<div class="mw-d-flex mw-flex-wrap mw-gap-4 mw-justify-center mw-mt-6">
|
|
361
|
-
<
|
|
362
|
-
type="button"
|
|
363
|
-
onclick="location.href = '#documentation'"
|
|
364
|
-
class="mw-btn mw-btn-primary"
|
|
365
|
-
>
|
|
361
|
+
<a href="#documentation" class="mw-btn mw-btn-primary">
|
|
366
362
|
Explore Documentation
|
|
367
|
-
</
|
|
363
|
+
</a>
|
|
368
364
|
<button
|
|
369
365
|
type="button"
|
|
370
366
|
onclick="
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<div class="mw-logo">
|
|
2
|
-
<
|
|
2
|
+
<a href="#home">
|
|
3
3
|
<img src="header-logo.svg" alt="MaverickWave Logo" />
|
|
4
|
-
</
|
|
4
|
+
</a>
|
|
5
5
|
</div>
|
|
6
6
|
|
|
7
7
|
<div class="mw-header-actions">
|
|
8
|
-
<nav class="mw-navbar mw-navbar-medium">
|
|
8
|
+
<nav class="mw-navbar mw-navbar-medium" id="mw-main-nav">
|
|
9
9
|
<ul class="mw-navbar-list">
|
|
10
10
|
<li class="mw-navbar-item">
|
|
11
11
|
<a href="#get-started" class="mw-navbar-link">Get Started</a>
|
|
@@ -42,12 +42,23 @@
|
|
|
42
42
|
</button>
|
|
43
43
|
|
|
44
44
|
<!-- Login Button -->
|
|
45
|
-
<button
|
|
45
|
+
<button
|
|
46
|
+
type="button"
|
|
47
|
+
class="mw-login-btn"
|
|
48
|
+
id="login-button"
|
|
49
|
+
aria-label="Log in"
|
|
50
|
+
>
|
|
46
51
|
<i class="fas fa-lock"></i>
|
|
47
52
|
</button>
|
|
48
53
|
|
|
49
54
|
<!-- Burger Menu Button -->
|
|
50
|
-
<
|
|
51
|
-
|
|
52
|
-
|
|
55
|
+
<button
|
|
56
|
+
type="button"
|
|
57
|
+
class="mw-menu-btn"
|
|
58
|
+
aria-label="Menu"
|
|
59
|
+
aria-expanded="false"
|
|
60
|
+
aria-controls="mw-main-nav"
|
|
61
|
+
>
|
|
62
|
+
<span class="mw-menu-btn-burger"></span>
|
|
63
|
+
</button>
|
|
53
64
|
</div>
|
|
@@ -1,34 +1,24 @@
|
|
|
1
1
|
<div class="mw-hero">
|
|
2
2
|
<div class="mw-home mw-home-content-fade">
|
|
3
3
|
<div class="mw-home-text">
|
|
4
|
-
<span class="version-corner">
|
|
4
|
+
<span class="mw-hero-badge version-corner">
|
|
5
|
+
<span class="mw-hero-badge-dot"></span>
|
|
6
|
+
v{{VERSION}}
|
|
7
|
+
</span>
|
|
5
8
|
<h1>Maverick<span class="mw-text-primary">Wave</span></h1>
|
|
6
9
|
<p>
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
</p>
|
|
10
|
-
<p>
|
|
11
|
-
Effortless dark mode, mobile-first layouts and accessibility at its
|
|
12
|
-
core. The same foundation carries a portfolio, a corporate site and a
|
|
13
|
-
full e-commerce platform.
|
|
10
|
+
A CSS framework in two files. Grid, 48 components, dark mode - no build
|
|
11
|
+
step, no dependencies.
|
|
14
12
|
</p>
|
|
15
13
|
</div>
|
|
16
14
|
|
|
17
15
|
<div class="mw-d-flex mw-gap-8 mw-justify-center">
|
|
18
|
-
<
|
|
19
|
-
type="button"
|
|
20
|
-
onclick="location.href = '#get-started'"
|
|
21
|
-
class="mw-btn mw-btn-primary mw-btn-lg"
|
|
22
|
-
>
|
|
16
|
+
<a href="#get-started" class="mw-btn mw-btn-primary mw-btn-lg">
|
|
23
17
|
Get Started
|
|
24
|
-
</
|
|
25
|
-
<
|
|
26
|
-
type="button"
|
|
27
|
-
onclick="location.href = '#documentation'"
|
|
28
|
-
class="mw-btn mw-btn-secondary mw-btn-lg"
|
|
29
|
-
>
|
|
18
|
+
</a>
|
|
19
|
+
<a href="#documentation" class="mw-btn mw-btn-outline mw-btn-lg">
|
|
30
20
|
Documentation
|
|
31
|
-
</
|
|
21
|
+
</a>
|
|
32
22
|
</div>
|
|
33
23
|
</div>
|
|
34
24
|
</div>
|
|
@@ -107,7 +107,11 @@
|
|
|
107
107
|
class="mw-input"
|
|
108
108
|
placeholder="Keyword..."
|
|
109
109
|
/>
|
|
110
|
-
<button
|
|
110
|
+
<button
|
|
111
|
+
type="button"
|
|
112
|
+
class="mw-btn mw-btn-primary"
|
|
113
|
+
aria-label="Search"
|
|
114
|
+
>
|
|
111
115
|
<i class="fas fa-search"></i>
|
|
112
116
|
</button>
|
|
113
117
|
</div>
|
|
@@ -130,6 +134,7 @@
|
|
|
130
134
|
onclick="
|
|
131
135
|
navigator.clipboard?.writeText('https://maverick-wave.m1well.com')
|
|
132
136
|
"
|
|
137
|
+
aria-label="Copy link"
|
|
133
138
|
>
|
|
134
139
|
<i class="fas fa-copy"></i>
|
|
135
140
|
</button>
|
|
@@ -177,7 +182,11 @@
|
|
|
177
182
|
class="mw-input"
|
|
178
183
|
placeholder="Type a message..."
|
|
179
184
|
/>
|
|
180
|
-
<button
|
|
185
|
+
<button
|
|
186
|
+
type="button"
|
|
187
|
+
class="mw-btn mw-btn-primary"
|
|
188
|
+
aria-label="Send message"
|
|
189
|
+
>
|
|
181
190
|
<i class="fas fa-paper-plane"></i>
|
|
182
191
|
</button>
|
|
183
192
|
</div>
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
>.
|
|
27
27
|
</p>
|
|
28
28
|
<div>
|
|
29
|
-
<
|
|
29
|
+
<h4 class="mw-text-medium mw-mb-2">Held down</h4>
|
|
30
30
|
<p class="mw-mb-0">
|
|
31
31
|
<kbd class="mw-kbd-pressed">Space</kbd> shown mid-press - the raised
|
|
32
32
|
edge drops and the key sits 1px lower, for a hint that demonstrates
|
|
@@ -8,7 +8,11 @@
|
|
|
8
8
|
<div class="mw-mb-4">
|
|
9
9
|
<div class="mw-login mw-my-8">
|
|
10
10
|
<div class="mw-login-logo">
|
|
11
|
-
<img
|
|
11
|
+
<img
|
|
12
|
+
src="https://m1well.com/images/header_logo.svg"
|
|
13
|
+
alt="Your Logo"
|
|
14
|
+
loading="lazy"
|
|
15
|
+
/>
|
|
12
16
|
</div>
|
|
13
17
|
<div class="mw-login-message">
|
|
14
18
|
This is an internal area that can only be accessed with a valid account.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
<div class="mw-grid-2 mw-gap-6">
|
|
11
11
|
<div>
|
|
12
|
-
<
|
|
12
|
+
<h4 class="mw-text-medium mw-mb-2">Audio with caption</h4>
|
|
13
13
|
<div class="mw-card mw-card-simple">
|
|
14
14
|
<div class="mw-media">
|
|
15
15
|
<audio controls preload="metadata" src="media/demo-chime.wav"></audio>
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
</div>
|
|
20
20
|
|
|
21
21
|
<div>
|
|
22
|
-
<
|
|
22
|
+
<h4 class="mw-text-medium mw-mb-2">Bare, without a card</h4>
|
|
23
23
|
<div class="mw-media">
|
|
24
24
|
<audio controls preload="metadata" src="media/demo-chime.wav"></audio>
|
|
25
25
|
</div>
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
<button onclick="openModal('modal-form')" class="mw-btn mw-btn-primary">
|
|
28
28
|
Open Form Modal
|
|
29
29
|
</button>
|
|
30
|
-
<button
|
|
31
|
-
Open Confirmation
|
|
30
|
+
<button data-mw-modal="modal-confirm" class="mw-btn mw-btn-secondary">
|
|
31
|
+
Open Confirmation (<dialog>)
|
|
32
32
|
</button>
|
|
33
33
|
</div>
|
|
34
34
|
|
|
@@ -225,34 +225,24 @@
|
|
|
225
225
|
</div>
|
|
226
226
|
|
|
227
227
|
<!-- Confirmation Modal -->
|
|
228
|
-
<div
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
</
|
|
236
|
-
<
|
|
237
|
-
<p class="mw-text-center">
|
|
238
|
-
<strong>Are you sure you want to delete this item?</strong>
|
|
239
|
-
</p>
|
|
240
|
-
</div>
|
|
241
|
-
<div class="mw-modal-footer">
|
|
242
|
-
<p class="mw-actions-note">This action cannot be undone.</p>
|
|
243
|
-
<button
|
|
244
|
-
onclick="closeModal('modal-confirm')"
|
|
245
|
-
class="mw-btn mw-btn-outline"
|
|
246
|
-
>
|
|
247
|
-
Cancel
|
|
248
|
-
</button>
|
|
249
|
-
<button
|
|
250
|
-
onclick="closeModal('modal-confirm')"
|
|
251
|
-
class="mw-btn mw-btn-danger"
|
|
252
|
-
>
|
|
253
|
-
Delete
|
|
254
|
-
</button>
|
|
255
|
-
</div>
|
|
228
|
+
<!-- Same classes, a <dialog> instead of a div: Escape, the focus trap, the
|
|
229
|
+
inert page behind it and the scroll lock all come from the element. The
|
|
230
|
+
close buttons need no onclick - the framework script closes the dialog
|
|
231
|
+
they sit in - and closedby="any" is what dismisses it on a backdrop
|
|
232
|
+
click, so there is no mw-modal-backdrop either. -->
|
|
233
|
+
<dialog id="modal-confirm" class="mw-modal mw-modal-sm" closedby="any">
|
|
234
|
+
<div class="mw-modal-header">
|
|
235
|
+
<h4 class="mw-modal-title">Delete Item</h4>
|
|
236
|
+
<button class="mw-modal-close" aria-label="Close">𝗫</button>
|
|
256
237
|
</div>
|
|
257
|
-
<div class="mw-modal-
|
|
258
|
-
|
|
238
|
+
<div class="mw-modal-body">
|
|
239
|
+
<p class="mw-text-center">
|
|
240
|
+
<strong>Are you sure you want to delete this item?</strong>
|
|
241
|
+
</p>
|
|
242
|
+
</div>
|
|
243
|
+
<div class="mw-modal-footer">
|
|
244
|
+
<p class="mw-actions-note">This action cannot be undone.</p>
|
|
245
|
+
<button class="mw-modal-close mw-btn mw-btn-outline">Cancel</button>
|
|
246
|
+
<button class="mw-modal-close mw-btn mw-btn-danger">Delete</button>
|
|
247
|
+
</div>
|
|
248
|
+
</dialog>
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
<div class="mw-grid-2-lg">
|
|
21
21
|
<div>
|
|
22
22
|
<div class="mw-card mw-card-simple">
|
|
23
|
-
<
|
|
23
|
+
<h4 class="mw-text-medium mw-mb-2">Plain price</h4>
|
|
24
24
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
25
25
|
<code>mw-price-amount</code> plus <code>mw-price-currency</code>. The
|
|
26
26
|
unit is a word next to the figure, not part of it - it stays at reading
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
</div>
|
|
34
34
|
|
|
35
35
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
36
|
-
<
|
|
36
|
+
<h4 class="mw-text-medium mw-mb-2">With a discount tag</h4>
|
|
37
37
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
38
38
|
Any <code>mw-tag</code> or <code>mw-badge</code> placed directly in the
|
|
39
39
|
row is centred against the digits instead of hung off their baseline.
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
</div>
|
|
47
47
|
|
|
48
48
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
49
|
-
<
|
|
49
|
+
<h4 class="mw-text-medium mw-mb-2">Old price struck through</h4>
|
|
50
50
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
51
51
|
<code>mw-price-original</code> is muted <em>and</em> struck. Muted alone
|
|
52
52
|
reads as a footnote; the line is what says this is no longer the price.
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
</div>
|
|
66
66
|
|
|
67
67
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
68
|
-
<
|
|
68
|
+
<h4 class="mw-text-medium mw-mb-2">Both prices on one line</h4>
|
|
69
69
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
70
70
|
<code>mw-price-inline</code> puts the old price in front of the new one
|
|
71
71
|
instead of above it. For a wide card or a table row that has the width
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
</div>
|
|
84
84
|
|
|
85
85
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
86
|
-
<
|
|
86
|
+
<h4 class="mw-text-medium mw-mb-2">Not a figure</h4>
|
|
87
87
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
88
88
|
<code>mw-price-word</code> for "on request" or "free" - still bold, so
|
|
89
89
|
it holds the same slot in a row of cards, but set well below the size a
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
|
|
102
102
|
<div>
|
|
103
103
|
<div class="mw-card mw-card-simple">
|
|
104
|
-
<
|
|
104
|
+
<h4 class="mw-text-medium mw-mb-2">Decimals</h4>
|
|
105
105
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
106
106
|
<code>mw-price-fraction</code> sits inside the amount, one step down and
|
|
107
107
|
on the baseline. Cents raised to the cap height are a discounter's idiom
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
</div>
|
|
122
122
|
|
|
123
123
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
124
|
-
<
|
|
124
|
+
<h4 class="mw-text-medium mw-mb-2">Period and note</h4>
|
|
125
125
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
126
126
|
<code>mw-price-period</code> for what the price is per,
|
|
127
127
|
<code>mw-price-note</code> for the line under it. The note is a sibling
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
</div>
|
|
137
137
|
|
|
138
138
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
139
|
-
<
|
|
139
|
+
<h4 class="mw-text-medium mw-mb-2">Sizes</h4>
|
|
140
140
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
141
141
|
<code>mw-price-sm</code>, default and <code>mw-price-lg</code>. Only
|
|
142
142
|
<code>--mw-price-size</code> changes - the struck price, the cents and
|
|
@@ -166,7 +166,7 @@
|
|
|
166
166
|
</div>
|
|
167
167
|
|
|
168
168
|
<div class="mw-card mw-card-simple mw-mt-4">
|
|
169
|
-
<
|
|
169
|
+
<h4 class="mw-text-medium mw-mb-2">Centred and plain</h4>
|
|
170
170
|
<p class="mw-text-muted mw-text-sm mw-mb-5">
|
|
171
171
|
<code>mw-price-center</code> for a centred card,
|
|
172
172
|
<code>mw-price-plain</code> for body colour instead of the brand - a
|