maverick-wave 5.27.0 → 5.29.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.
Files changed (60) hide show
  1. package/.claude/skills/mw-maverick-wave/SKILL.md +4 -2
  2. package/.claude/skills/mw-maverick-wave/references/components.md +212 -0
  3. package/.claude/skills/mw-maverick-wave/references/javascript.md +6 -1
  4. package/.claude/skills/mw-maverick-wave/references/theming.md +53 -51
  5. package/CHANGELOG.md +17 -0
  6. package/CLAUDE.md +4 -4
  7. package/README.md +2 -2
  8. package/index.html +65 -0
  9. package/maverick-wave.min.css +4 -4
  10. package/maverick-wave.min.js +1 -1
  11. package/package.json +2 -2
  12. package/scripts/verify.js +2 -1
  13. package/src/assets/images/photo-balloon.svg +35 -0
  14. package/src/assets/images/photo-forest-path.svg +31 -0
  15. package/src/assets/images/photo-lighthouse.svg +42 -0
  16. package/src/assets/images/photo-palm.svg +27 -0
  17. package/src/assets/images/photo-peak.svg +27 -0
  18. package/src/assets/images/photo-tower.svg +34 -0
  19. package/src/assets/images/photo-waterfall.svg +32 -0
  20. package/src/assets/images/story-aurora.svg +36 -0
  21. package/src/assets/images/story-beach.svg +34 -0
  22. package/src/assets/images/story-stars.svg +35 -0
  23. package/src/assets/media/story-sunrise.jpg +0 -0
  24. package/src/assets/media/story-sunrise.mp4 +0 -0
  25. package/src/js/main.js +411 -8
  26. package/src/partials/avatars-container.html +50 -0
  27. package/src/partials/calendar-container.html +36 -38
  28. package/src/partials/feed-container.html +506 -0
  29. package/src/partials/item-lists-container.html +80 -130
  30. package/src/partials/kanban-container.html +17 -294
  31. package/src/partials/mosaic-container.html +173 -0
  32. package/src/partials/panels-container.html +113 -162
  33. package/src/partials/portrait-gallery-container.html +175 -0
  34. package/src/partials/stories-container.html +182 -0
  35. package/src/partials/tables-container.html +21 -40
  36. package/src/scss/abstracts/_mixins.scss +2 -0
  37. package/src/scss/abstracts/_variables.scss +9 -0
  38. package/src/scss/components/_avatars.scss +52 -0
  39. package/src/scss/components/_cards.scss +7 -3
  40. package/src/scss/components/_feed.scss +203 -0
  41. package/src/scss/components/_hero-badge.scss +48 -0
  42. package/src/scss/components/_index.scss +8 -0
  43. package/src/scss/components/_leader-row.scss +24 -18
  44. package/src/scss/components/_lightbox.scss +178 -0
  45. package/src/scss/components/_mosaic.scss +83 -0
  46. package/src/scss/components/_overlay-btn.scss +47 -0
  47. package/src/scss/components/_portrait-gallery.scss +180 -0
  48. package/src/scss/components/_stories.scss +443 -0
  49. package/src/scss/components/_tiles.scss +4 -1
  50. package/src/scss/components/_tooltip.scss +193 -0
  51. package/src/scss/layout/_footer.scss +46 -84
  52. package/src/scss/layout/_grid.scss +48 -45
  53. package/src/scss/layout/_header-reveal.scss +1 -1
  54. package/src/scss/layout/_header.scss +49 -66
  55. package/src/scss/layout/_home.scss +5 -2
  56. package/src/scss/layout/_main.scss +100 -337
  57. package/src/scss/layout/_parallax.scss +1 -1
  58. package/src/scss/layout/_section.scss +24 -17
  59. package/src/scss/utilities/_fit.scss +29 -0
  60. package/src/scss/utilities/_index.scss +1 -0
@@ -0,0 +1,506 @@
1
+ <h3 class="mw-section-subtitle">Photo Feed</h3>
2
+ <p class="mw-text-muted mw-text-measure">
3
+ Photos in the grid everyone knows from their phone, in a framed box that shows
4
+ three rows and scrolls - <code>mw-feed-rows-2</code> shows two,
5
+ <code>mw-feed-plain</code> drops the frame. A strip of the next row stays in
6
+ view, so the box reads as scrollable. A tap opens the photo as a card, with
7
+ its text if the <code>figcaption</code> has any. No script: the tile is a
8
+ button with <code>popovertarget</code>, the card a <code>popover</code> - in
9
+ Angular that is <code>[attr.popovertarget]</code> and a matching
10
+ <code>[id]</code>. <code>mw-feed-square</code> switches to square tiles.
11
+ </p>
12
+
13
+ <div class="mw-d-flex mw-flex-wrap mw-gap-3 mw-mb-5">
14
+ <div class="mw-segmented" data-modifier-demo="feed-demo">
15
+ <button type="button" class="mw-segmented-item mw-active" data-modifier="">
16
+ 3 rows
17
+ </button>
18
+ <button
19
+ type="button"
20
+ class="mw-segmented-item"
21
+ data-modifier="mw-feed-rows-2"
22
+ >
23
+ 2 rows
24
+ </button>
25
+ </div>
26
+ <div class="mw-segmented" data-modifier-demo="feed-demo">
27
+ <button type="button" class="mw-segmented-item mw-active" data-modifier="">
28
+ Frame
29
+ </button>
30
+ <button
31
+ type="button"
32
+ class="mw-segmented-item"
33
+ data-modifier="mw-feed-plain"
34
+ >
35
+ Plain
36
+ </button>
37
+ </div>
38
+ </div>
39
+
40
+ <div class="mw-container-narrow">
41
+ <div class="mw-feed" id="feed-demo">
42
+ <div class="mw-feed-item">
43
+ <button type="button" popovertarget="post-lighthouse">
44
+ <img
45
+ src="images/photo-lighthouse.svg"
46
+ alt="Lighthouse on a cliff at dusk"
47
+ width="600"
48
+ height="800"
49
+ loading="lazy"
50
+ />
51
+ </button>
52
+ <figure class="mw-feed-post" id="post-lighthouse" popover>
53
+ <button
54
+ type="button"
55
+ class="mw-overlay-btn mw-feed-post-close"
56
+ popovertarget="post-lighthouse"
57
+ popovertargetaction="hide"
58
+ aria-label="Close"
59
+ >
60
+ &#120299;
61
+ </button>
62
+ <img
63
+ src="images/photo-lighthouse.svg"
64
+ alt="Lighthouse on a cliff at dusk"
65
+ width="600"
66
+ height="800"
67
+ loading="lazy"
68
+ />
69
+ <figcaption>
70
+ <p>
71
+ Last light over the north cape. Stood there until the lamp came on.
72
+ </p>
73
+ <time datetime="2026-08-12">12 August 2026</time>
74
+ </figcaption>
75
+ </figure>
76
+ </div>
77
+ <div class="mw-feed-item">
78
+ <button type="button" popovertarget="post-balloon">
79
+ <img
80
+ src="images/photo-balloon.svg"
81
+ alt="Hot air balloon in a morning sky"
82
+ width="800"
83
+ height="800"
84
+ loading="lazy"
85
+ />
86
+ </button>
87
+ <figure class="mw-feed-post" id="post-balloon" popover>
88
+ <button
89
+ type="button"
90
+ class="mw-overlay-btn mw-feed-post-close"
91
+ popovertarget="post-balloon"
92
+ popovertargetaction="hide"
93
+ aria-label="Close"
94
+ >
95
+ &#120299;
96
+ </button>
97
+ <img
98
+ src="images/photo-balloon.svg"
99
+ alt="Hot air balloon in a morning sky"
100
+ width="800"
101
+ height="800"
102
+ loading="lazy"
103
+ />
104
+ <figcaption>
105
+ <p>Up before sunrise for this one.</p>
106
+ <time datetime="2026-07-30">30 July 2026</time>
107
+ </figcaption>
108
+ </figure>
109
+ </div>
110
+ <div class="mw-feed-item">
111
+ <button type="button" popovertarget="post-ocean">
112
+ <img
113
+ src="images/gallery-ocean.svg"
114
+ alt="Ocean waves rolling to the horizon"
115
+ width="800"
116
+ height="450"
117
+ loading="lazy"
118
+ />
119
+ </button>
120
+ <figure class="mw-feed-post" id="post-ocean" popover>
121
+ <button
122
+ type="button"
123
+ class="mw-overlay-btn mw-feed-post-close"
124
+ popovertarget="post-ocean"
125
+ popovertargetaction="hide"
126
+ aria-label="Close"
127
+ >
128
+ &#120299;
129
+ </button>
130
+ <img
131
+ src="images/gallery-ocean.svg"
132
+ alt="Ocean waves rolling to the horizon"
133
+ width="800"
134
+ height="450"
135
+ loading="lazy"
136
+ />
137
+ </figure>
138
+ </div>
139
+ <div class="mw-feed-item">
140
+ <button type="button" popovertarget="post-peak">
141
+ <img
142
+ src="images/photo-peak.svg"
143
+ alt="Snowy mountain peak under a starry sky"
144
+ width="600"
145
+ height="800"
146
+ loading="lazy"
147
+ />
148
+ </button>
149
+ <figure class="mw-feed-post" id="post-peak" popover>
150
+ <button
151
+ type="button"
152
+ class="mw-overlay-btn mw-feed-post-close"
153
+ popovertarget="post-peak"
154
+ popovertargetaction="hide"
155
+ aria-label="Close"
156
+ >
157
+ &#120299;
158
+ </button>
159
+ <img
160
+ src="images/photo-peak.svg"
161
+ alt="Snowy mountain peak under a starry sky"
162
+ width="600"
163
+ height="800"
164
+ loading="lazy"
165
+ />
166
+ <figcaption>
167
+ <p>
168
+ 3,000 metres, one thermos of tea and far too many stars to count.
169
+ </p>
170
+ <p>#alps #nightsky</p>
171
+ </figcaption>
172
+ </figure>
173
+ </div>
174
+ <div class="mw-feed-item">
175
+ <button type="button" popovertarget="post-palm">
176
+ <img
177
+ src="images/photo-palm.svg"
178
+ alt="Palm tree against a sunset over the sea"
179
+ width="800"
180
+ height="800"
181
+ loading="lazy"
182
+ />
183
+ </button>
184
+ <figure class="mw-feed-post" id="post-palm" popover>
185
+ <button
186
+ type="button"
187
+ class="mw-overlay-btn mw-feed-post-close"
188
+ popovertarget="post-palm"
189
+ popovertargetaction="hide"
190
+ aria-label="Close"
191
+ >
192
+ &#120299;
193
+ </button>
194
+ <img
195
+ src="images/photo-palm.svg"
196
+ alt="Palm tree against a sunset over the sea"
197
+ width="800"
198
+ height="800"
199
+ loading="lazy"
200
+ />
201
+ </figure>
202
+ </div>
203
+ <div class="mw-feed-item">
204
+ <button type="button" popovertarget="post-city">
205
+ <img
206
+ src="images/gallery-city.svg"
207
+ alt="City skyline at night"
208
+ width="800"
209
+ height="450"
210
+ loading="lazy"
211
+ />
212
+ </button>
213
+ <figure class="mw-feed-post" id="post-city" popover>
214
+ <button
215
+ type="button"
216
+ class="mw-overlay-btn mw-feed-post-close"
217
+ popovertarget="post-city"
218
+ popovertargetaction="hide"
219
+ aria-label="Close"
220
+ >
221
+ &#120299;
222
+ </button>
223
+ <img
224
+ src="images/gallery-city.svg"
225
+ alt="City skyline at night"
226
+ width="800"
227
+ height="450"
228
+ loading="lazy"
229
+ />
230
+ </figure>
231
+ </div>
232
+ <div class="mw-feed-item">
233
+ <button type="button" popovertarget="post-forest">
234
+ <img
235
+ src="images/photo-forest-path.svg"
236
+ alt="Path through a sunlit forest"
237
+ width="600"
238
+ height="800"
239
+ loading="lazy"
240
+ />
241
+ </button>
242
+ <figure class="mw-feed-post" id="post-forest" popover>
243
+ <button
244
+ type="button"
245
+ class="mw-overlay-btn mw-feed-post-close"
246
+ popovertarget="post-forest"
247
+ popovertargetaction="hide"
248
+ aria-label="Close"
249
+ >
250
+ &#120299;
251
+ </button>
252
+ <img
253
+ src="images/photo-forest-path.svg"
254
+ alt="Path through a sunlit forest"
255
+ width="600"
256
+ height="800"
257
+ loading="lazy"
258
+ />
259
+ <figcaption>
260
+ <p>Found the quiet trail. Nobody else for two hours.</p>
261
+ </figcaption>
262
+ </figure>
263
+ </div>
264
+ <div class="mw-feed-item">
265
+ <button type="button" popovertarget="post-tower">
266
+ <img
267
+ src="images/photo-tower.svg"
268
+ alt="Television tower above the city at night"
269
+ width="600"
270
+ height="800"
271
+ loading="lazy"
272
+ />
273
+ </button>
274
+ <figure class="mw-feed-post" id="post-tower" popover>
275
+ <button
276
+ type="button"
277
+ class="mw-overlay-btn mw-feed-post-close"
278
+ popovertarget="post-tower"
279
+ popovertargetaction="hide"
280
+ aria-label="Close"
281
+ >
282
+ &#120299;
283
+ </button>
284
+ <img
285
+ src="images/photo-tower.svg"
286
+ alt="Television tower above the city at night"
287
+ width="600"
288
+ height="800"
289
+ loading="lazy"
290
+ />
291
+ </figure>
292
+ </div>
293
+ <div class="mw-feed-item">
294
+ <button type="button" popovertarget="post-waterfall">
295
+ <img
296
+ src="images/photo-waterfall.svg"
297
+ alt="Waterfall between mossy cliffs"
298
+ width="600"
299
+ height="800"
300
+ loading="lazy"
301
+ />
302
+ </button>
303
+ <figure class="mw-feed-post" id="post-waterfall" popover>
304
+ <button
305
+ type="button"
306
+ class="mw-overlay-btn mw-feed-post-close"
307
+ popovertarget="post-waterfall"
308
+ popovertargetaction="hide"
309
+ aria-label="Close"
310
+ >
311
+ &#120299;
312
+ </button>
313
+ <img
314
+ src="images/photo-waterfall.svg"
315
+ alt="Waterfall between mossy cliffs"
316
+ width="600"
317
+ height="800"
318
+ loading="lazy"
319
+ />
320
+ <figcaption>
321
+ <p>Two hours up the gorge. #waterfall #hiking</p>
322
+ <time datetime="2026-06-18">18 June 2026</time>
323
+ </figcaption>
324
+ </figure>
325
+ </div>
326
+ <div class="mw-feed-item">
327
+ <button type="button" popovertarget="post-lake">
328
+ <img
329
+ src="images/gallery-lake.svg"
330
+ alt="Peaceful lake"
331
+ width="800"
332
+ height="450"
333
+ loading="lazy"
334
+ />
335
+ </button>
336
+ <figure class="mw-feed-post" id="post-lake" popover>
337
+ <button
338
+ type="button"
339
+ class="mw-overlay-btn mw-feed-post-close"
340
+ popovertarget="post-lake"
341
+ popovertargetaction="hide"
342
+ aria-label="Close"
343
+ >
344
+ &#120299;
345
+ </button>
346
+ <img
347
+ src="images/gallery-lake.svg"
348
+ alt="Peaceful lake"
349
+ width="800"
350
+ height="450"
351
+ loading="lazy"
352
+ />
353
+ </figure>
354
+ </div>
355
+ <div class="mw-feed-item">
356
+ <button type="button" popovertarget="post-aurora">
357
+ <img
358
+ src="images/story-aurora.svg"
359
+ alt="Northern lights over a snowy forest"
360
+ width="720"
361
+ height="1280"
362
+ loading="lazy"
363
+ />
364
+ </button>
365
+ <figure class="mw-feed-post" id="post-aurora" popover>
366
+ <button
367
+ type="button"
368
+ class="mw-overlay-btn mw-feed-post-close"
369
+ popovertarget="post-aurora"
370
+ popovertargetaction="hide"
371
+ aria-label="Close"
372
+ >
373
+ &#120299;
374
+ </button>
375
+ <img
376
+ src="images/story-aurora.svg"
377
+ alt="Northern lights over a snowy forest"
378
+ width="720"
379
+ height="1280"
380
+ loading="lazy"
381
+ />
382
+ <figcaption><p>Minus eighteen degrees. Nobody minded.</p></figcaption>
383
+ </figure>
384
+ </div>
385
+ <div class="mw-feed-item">
386
+ <button type="button" popovertarget="post-desert">
387
+ <img
388
+ src="images/gallery-desert.svg"
389
+ alt="Desert dunes"
390
+ width="800"
391
+ height="450"
392
+ loading="lazy"
393
+ />
394
+ </button>
395
+ <figure class="mw-feed-post" id="post-desert" popover>
396
+ <button
397
+ type="button"
398
+ class="mw-overlay-btn mw-feed-post-close"
399
+ popovertarget="post-desert"
400
+ popovertargetaction="hide"
401
+ aria-label="Close"
402
+ >
403
+ &#120299;
404
+ </button>
405
+ <img
406
+ src="images/gallery-desert.svg"
407
+ alt="Desert dunes"
408
+ width="800"
409
+ height="450"
410
+ loading="lazy"
411
+ />
412
+ </figure>
413
+ </div>
414
+ <div class="mw-feed-item">
415
+ <button type="button" popovertarget="post-stars">
416
+ <img
417
+ src="images/story-stars.svg"
418
+ alt="Tent glowing under the milky way"
419
+ width="720"
420
+ height="1280"
421
+ loading="lazy"
422
+ />
423
+ </button>
424
+ <figure class="mw-feed-post" id="post-stars" popover>
425
+ <button
426
+ type="button"
427
+ class="mw-overlay-btn mw-feed-post-close"
428
+ popovertarget="post-stars"
429
+ popovertargetaction="hide"
430
+ aria-label="Close"
431
+ >
432
+ &#120299;
433
+ </button>
434
+ <img
435
+ src="images/story-stars.svg"
436
+ alt="Tent glowing under the milky way"
437
+ width="720"
438
+ height="1280"
439
+ loading="lazy"
440
+ />
441
+ <figcaption>
442
+ <p>Camp at 2,400 metres.</p>
443
+ <time datetime="2026-05-30">30 May 2026</time>
444
+ </figcaption>
445
+ </figure>
446
+ </div>
447
+ <div class="mw-feed-item">
448
+ <button type="button" popovertarget="post-mountain">
449
+ <img
450
+ src="images/gallery-mountain.svg"
451
+ alt="Mountain range at sunrise"
452
+ width="800"
453
+ height="450"
454
+ loading="lazy"
455
+ />
456
+ </button>
457
+ <figure class="mw-feed-post" id="post-mountain" popover>
458
+ <button
459
+ type="button"
460
+ class="mw-overlay-btn mw-feed-post-close"
461
+ popovertarget="post-mountain"
462
+ popovertargetaction="hide"
463
+ aria-label="Close"
464
+ >
465
+ &#120299;
466
+ </button>
467
+ <img
468
+ src="images/gallery-mountain.svg"
469
+ alt="Mountain range at sunrise"
470
+ width="800"
471
+ height="450"
472
+ loading="lazy"
473
+ />
474
+ </figure>
475
+ </div>
476
+ <div class="mw-feed-item">
477
+ <button type="button" popovertarget="post-snow">
478
+ <img
479
+ src="images/gallery-snow.svg"
480
+ alt="Snowy hills"
481
+ width="800"
482
+ height="450"
483
+ loading="lazy"
484
+ />
485
+ </button>
486
+ <figure class="mw-feed-post" id="post-snow" popover>
487
+ <button
488
+ type="button"
489
+ class="mw-overlay-btn mw-feed-post-close"
490
+ popovertarget="post-snow"
491
+ popovertargetaction="hide"
492
+ aria-label="Close"
493
+ >
494
+ &#120299;
495
+ </button>
496
+ <img
497
+ src="images/gallery-snow.svg"
498
+ alt="Snowy hills"
499
+ width="800"
500
+ height="450"
501
+ loading="lazy"
502
+ />
503
+ </figure>
504
+ </div>
505
+ </div>
506
+ </div>