docula 0.41.1 → 0.90.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 (56) hide show
  1. package/README.md +228 -4
  2. package/dist/docula.d.ts +240 -16
  3. package/dist/docula.js +1596 -222
  4. package/package.json +11 -9
  5. package/templates/classic/api.hbs +214 -0
  6. package/{template → templates/classic}/changelog-entry.hbs +2 -0
  7. package/{template → templates/classic}/changelog.hbs +2 -0
  8. package/templates/classic/css/api.css +753 -0
  9. package/{template → templates/classic}/css/base.css +10 -0
  10. package/{template → templates/classic}/css/multipage.css +7 -0
  11. package/{template → templates/classic}/docs.hbs +3 -1
  12. package/{template/index.hbs → templates/classic/home.hbs} +9 -1
  13. package/templates/classic/includes/api-try-it.hbs +61 -0
  14. package/templates/classic/includes/multipage/api-reference.hbs +1 -0
  15. package/templates/classic/includes/multipage/documentation.hbs +1 -0
  16. package/{template → templates/classic}/includes/multipage/hero.hbs +1 -2
  17. package/{template → templates/classic}/includes/multipage/home.hbs +3 -3
  18. package/{template → templates/classic}/includes/singlepage/content.hbs +3 -3
  19. package/templates/classic/js/api.js +282 -0
  20. package/templates/modern/api.hbs +215 -0
  21. package/templates/modern/changelog-entry.hbs +36 -0
  22. package/templates/modern/changelog.hbs +38 -0
  23. package/templates/modern/css/api.css +1051 -0
  24. package/templates/modern/css/highlight/highlight.min.js +1433 -0
  25. package/templates/modern/css/highlight/styles/base16/docula.css +123 -0
  26. package/templates/modern/css/home.css +96 -0
  27. package/templates/modern/css/styles.css +711 -0
  28. package/templates/modern/docs.hbs +30 -0
  29. package/templates/modern/home.hbs +53 -0
  30. package/templates/modern/includes/api-reference.hbs +1 -0
  31. package/templates/modern/includes/api-try-it.hbs +61 -0
  32. package/templates/modern/includes/doc.hbs +18 -0
  33. package/templates/modern/includes/documentation.hbs +1 -0
  34. package/templates/modern/includes/footer.hbs +6 -0
  35. package/templates/modern/includes/header-bar.hbs +57 -0
  36. package/templates/modern/includes/header.hbs +15 -0
  37. package/templates/modern/includes/hero.hbs +11 -0
  38. package/templates/modern/includes/home.hbs +46 -0
  39. package/templates/modern/includes/scripts.hbs +164 -0
  40. package/templates/modern/includes/sidebar.hbs +22 -0
  41. package/templates/modern/includes/theme-toggle.hbs +5 -0
  42. package/templates/modern/js/api.js +300 -0
  43. package/template/api.hbs +0 -28
  44. package/template/releases.hbs +0 -86
  45. /package/{template → templates/classic}/css/highlight/highlight.min.js +0 -0
  46. /package/{template → templates/classic}/css/highlight/styles/base16/dracula.min.css +0 -0
  47. /package/{template → templates/classic}/css/landing.css +0 -0
  48. /package/{template → templates/classic}/css/singlepage.css +0 -0
  49. /package/{template → templates/classic}/includes/footer.hbs +0 -0
  50. /package/{template → templates/classic}/includes/header.hbs +0 -0
  51. /package/{template → templates/classic}/includes/multipage/doc.hbs +0 -0
  52. /package/{template → templates/classic}/includes/multipage/header.hbs +0 -0
  53. /package/{template → templates/classic}/includes/multipage/scripts.hbs +0 -0
  54. /package/{template → templates/classic}/includes/multipage/sidebar.hbs +0 -0
  55. /package/{template → templates/classic}/includes/scripts.hbs +0 -0
  56. /package/{template → templates/classic}/includes/singlepage/hero.hbs +0 -0
@@ -0,0 +1,711 @@
1
+ :root {
2
+ --bg: #121212;
3
+ --fg: #ffffff;
4
+ --border: rgba(255, 255, 255, 0.1);
5
+ --border-strong: rgba(255, 255, 255, 0.2);
6
+ --border-hover: rgba(255, 255, 255, 0.4);
7
+ --surface: #262626;
8
+ --surface-hover: rgba(255, 255, 255, 0.1);
9
+ --muted: #c5cdd3;
10
+ --muted-fg: rgba(255, 255, 255, 0.65);
11
+ --code-bg: rgba(255, 255, 255, 0.075);
12
+ --pre-bg: rgba(255, 255, 255, 0.05);
13
+ --link: #6ea8fe;
14
+ --scrollbar: rgba(255, 255, 255, 0.2);
15
+ --header-height: 81px;
16
+ }
17
+
18
+ [data-theme="light"] {
19
+ --bg: #ffffff;
20
+ --fg: #1a1a1a;
21
+ --border: rgba(0, 0, 0, 0.1);
22
+ --border-strong: rgba(0, 0, 0, 0.15);
23
+ --border-hover: rgba(0, 0, 0, 0.3);
24
+ --surface: #f0f0f0;
25
+ --surface-hover: rgba(0, 0, 0, 0.06);
26
+ --muted: #6b7280;
27
+ --muted-fg: rgba(0, 0, 0, 0.5);
28
+ --code-bg: rgba(0, 0, 0, 0.05);
29
+ --pre-bg: rgba(0, 0, 0, 0.03);
30
+ --link: #0969da;
31
+ --scrollbar: rgba(0, 0, 0, 0.2);
32
+ }
33
+
34
+ html {
35
+ scroll-behavior: smooth;
36
+ overflow-x: clip;
37
+ }
38
+
39
+ @media (prefers-reduced-motion: reduce) {
40
+ html {
41
+ scroll-behavior: auto;
42
+ }
43
+ }
44
+
45
+ * {
46
+ padding: 0;
47
+ margin: 0;
48
+ box-sizing: border-box;
49
+ }
50
+
51
+ a {
52
+ text-decoration: none;
53
+ color: inherit;
54
+ }
55
+
56
+ li {
57
+ list-style: none;
58
+ }
59
+
60
+ button {
61
+ cursor: pointer;
62
+ border: none;
63
+ background: none;
64
+ color: inherit;
65
+ }
66
+
67
+ code {
68
+ font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace;
69
+ font-size: 0.9em;
70
+ background-color: var(--code-bg);
71
+ padding: 2px 5px;
72
+ border-radius: 3px;
73
+ }
74
+
75
+ body {
76
+ background-color: var(--bg);
77
+ color: var(--fg);
78
+ font-family: system-ui, -apple-system, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
79
+ font-size: 16px;
80
+ }
81
+
82
+ .header {
83
+ position: sticky;
84
+ top: 0;
85
+ z-index: 50;
86
+ background-color: var(--bg);
87
+ border-bottom: 1px solid rgba(255, 255, 255, 0.06);
88
+ }
89
+ [data-theme="light"] .header {
90
+ border-bottom: 1px solid rgba(0, 0, 0, 0.06);
91
+ }
92
+
93
+ .header-top__content {
94
+ width: 100%;
95
+ max-width: 1440px;
96
+ height: 80px;
97
+ margin: 0 auto;
98
+ padding: 0 32px;
99
+ display: flex;
100
+ align-items: center;
101
+ gap: 12px;
102
+ }
103
+
104
+ .logo__img {
105
+ height: 75px;
106
+ width: auto;
107
+ }
108
+
109
+ .theme-button {
110
+ margin-left: auto;
111
+ border: 1px solid transparent;
112
+ border-radius: 4px;
113
+ padding: 0px 5px;
114
+ height: 30px;
115
+ display: flex;
116
+ align-items: center;
117
+
118
+ &:hover {
119
+ border: 1px solid var(--border);
120
+ }
121
+ }
122
+
123
+ .theme-button--fixed {
124
+ position: fixed;
125
+ bottom: 16px;
126
+ left: 16px;
127
+ z-index: 50;
128
+ background: var(--surface);
129
+ border: 1px solid var(--border);
130
+ border-radius: 8px;
131
+ padding: 8px;
132
+ height: auto;
133
+ margin-left: 0;
134
+ }
135
+
136
+ .theme-button__icon--hidden {
137
+ display: none;
138
+ }
139
+
140
+ .mobile-menu-toggle {
141
+ display: none;
142
+ align-items: center;
143
+ justify-content: center;
144
+ width: 32px;
145
+ height: 32px;
146
+ margin-right: 8px;
147
+ }
148
+
149
+ .header_space {
150
+ height: 102px;
151
+ }
152
+
153
+ .header-bottom__nav {
154
+ display: flex;
155
+ gap: 5px;
156
+ }
157
+
158
+ .header-bottom__item {
159
+ font-size: 14px;
160
+ padding: 10px;
161
+ border-radius: 4px;
162
+ display: block;
163
+ border: 1px solid transparent;
164
+ height: 30px;
165
+ display: flex;
166
+ align-items: center;
167
+ font-weight: 600;
168
+ gap: 6px;
169
+
170
+ &:hover {
171
+ border: 1px solid var(--border);
172
+ }
173
+ }
174
+
175
+ .header-bottom__item--active {
176
+ background-color: var(--surface-hover);
177
+ }
178
+
179
+ .search-button {
180
+ border: none;
181
+ border-radius: 4px;
182
+ padding: 0px 10px;
183
+ height: 30px;
184
+ width: 150px;
185
+ display: flex;
186
+ align-items: center;
187
+ gap: 6px;
188
+ color: var(--muted-fg);
189
+ background: var(--surface);
190
+ }
191
+
192
+ .search-button__text {
193
+ font-size: 14px;
194
+ flex: 1;
195
+ text-align: left;
196
+ font-weight: 400;
197
+ }
198
+
199
+ .search-button__shortcut {
200
+ font-size: 11px;
201
+ font-weight: 500;
202
+ opacity: 0.6;
203
+ }
204
+
205
+ .content {
206
+ width: 100%;
207
+ max-width: 1440px;
208
+ margin: 0 auto;
209
+ display: flex;
210
+ }
211
+
212
+ .nav-sidebar {
213
+ padding: 26px 32px 24px 32px;
214
+ width: 288px;
215
+ min-width: 288px;
216
+ display: flex;
217
+ flex-direction: column;
218
+ gap: 12px;
219
+ position: sticky;
220
+ top: var(--header-height);
221
+ max-height: calc(100vh - var(--header-height));
222
+ overflow-y: auto;
223
+ align-self: flex-start;
224
+ }
225
+
226
+ .nav-sidebar__title {
227
+ font-size: 12px;
228
+ font-weight: 600;
229
+ text-transform: uppercase;
230
+ line-height: 16px;
231
+ margin-block: 4px;
232
+ color: var(--muted);
233
+ padding: 0 0 0 10px;
234
+ letter-spacing: 0.24px;
235
+ }
236
+
237
+ .nav-sidebar__list {
238
+ margin-block: 2px;
239
+ }
240
+
241
+ .nav-sidebar__item {
242
+ font-size: 14px;
243
+ padding: 3px 8px 3px 12px;
244
+ border-radius: 4px;
245
+ width: 100%;
246
+ display: flex;
247
+ align-items: center;
248
+ line-height: 1.4;
249
+ margin-top: 1px;
250
+
251
+ &:hover {
252
+ background-color: var(--surface);
253
+ }
254
+ }
255
+
256
+ .nav-sidebar__item--active {
257
+ background-color: var(--surface);
258
+ }
259
+
260
+ .article {
261
+ padding: 32px;
262
+ width: calc(100% - 288px);
263
+ }
264
+
265
+ .article__header{
266
+ border-bottom: 1px solid var(--border);
267
+ padding-bottom: 30px;
268
+ }
269
+
270
+ .article__title {
271
+ font-size: 1.9em;
272
+ font-weight: 600;
273
+ line-height: 1.2;
274
+ }
275
+
276
+ .article__description {
277
+ font-size: 18px;
278
+ margin-top: 15px;
279
+ line-height: 1.5;
280
+ }
281
+
282
+ .article__body {
283
+ display: flex;
284
+ width: 100%;
285
+ }
286
+
287
+ .article__main {
288
+ margin-top: 30px;
289
+ width: calc(100% - 280px);
290
+ max-width: 100%;
291
+ font-size: 15px;
292
+ line-height: 1.5;
293
+ }
294
+
295
+ .article__main h1, .release-body h1, .changelog-entry-body h1, .home-content h1 { font-size: 1.65em; font-weight: 600; line-height: 1.25; margin: 25px 0 15px; }
296
+ .article__main h2, .release-body h2, .changelog-entry-body h2, .home-content h2 { font-size: 1.4em; font-weight: 600; line-height: 1.3; margin: 20px 0 12px; }
297
+ .article__main h3, .release-body h3, .changelog-entry-body h3, .home-content h3 { font-size: 1.15em; font-weight: 600; line-height: 1.4; margin: 18px 0 10px; }
298
+ .article__main p, .release-body p, .changelog-entry-body p, .home-content p { margin-bottom: 15px; }
299
+ .article__main ul, .article__main ol, .release-body ul, .release-body ol, .changelog-entry-body ul, .changelog-entry-body ol, .home-content ul, .home-content ol { margin-bottom: 15px; padding-left: 24px; }
300
+ .article__main li, .release-body li, .changelog-entry-body li, .home-content li { margin-bottom: 6px; list-style: disc; }
301
+ .article__main ol li, .release-body ol li, .changelog-entry-body ol li, .home-content ol li { list-style: decimal; }
302
+ .article__main a, .release-body a, .changelog-entry-body a, .home-content a { color: var(--link); text-decoration: underline; }
303
+ .article__main pre, .release-body pre, .changelog-entry-body pre, .home-content pre { background: var(--pre-bg); border-radius: 6px; padding: 12px 16px; margin-bottom: 20px; overflow-x: auto; }
304
+ .article__main pre code, .release-body pre code, .changelog-entry-body pre code, .home-content pre code { background: none; padding: 0; font-size: 13.5px; line-height: 1.5; }
305
+ .article__main blockquote, .release-body blockquote, .changelog-entry-body blockquote, .home-content blockquote { border-left: 3px solid var(--border-strong); padding: 10px 16px; margin-bottom: 15px; color: var(--muted); }
306
+ .article__main img, .release-body img, .changelog-entry-body img, .home-content img { max-width: 100%; border-radius: 6px; }
307
+ .article__main table, .release-body table, .changelog-entry-body table, .home-content table { width: 100%; border-collapse: collapse; margin-bottom: 15px; }
308
+ .article__main th, .article__main td, .release-body th, .release-body td, .changelog-entry-body th, .changelog-entry-body td, .home-content th, .home-content td { border: 1px solid var(--border); padding: 8px 12px; text-align: left; }
309
+ .article__main th, .release-body th, .changelog-entry-body th, .home-content th { font-weight: 600; background: var(--pre-bg); }
310
+
311
+ .article__section {
312
+ & * {
313
+ margin-bottom: 15px;
314
+ }
315
+
316
+ & h1 {
317
+ font-size: 1.65em;
318
+ font-weight: 600;
319
+ line-height: 1.25;
320
+ }
321
+
322
+ & p {
323
+ font-size: 15px;
324
+ margin-top: 15px;
325
+ line-height: 1.5;
326
+ }
327
+ }
328
+
329
+ .content-aside {
330
+ width: 280px;
331
+ min-width: 280px;
332
+ padding: 30px 20px 30px 40px;
333
+ font-size: 13px;
334
+ position: sticky;
335
+ top: var(--header-height);
336
+ max-height: calc(100vh - var(--header-height));
337
+ overflow-y: auto;
338
+ align-self: flex-start;
339
+ }
340
+
341
+ .content-aside__list {
342
+ display: flex;
343
+ flex-direction: column;
344
+ }
345
+
346
+ .content-aside__title {
347
+ font-size: 11px;
348
+ font-weight: 700;
349
+ text-transform: uppercase;
350
+ padding-left: 23px;
351
+ margin-bottom: 8px;
352
+ }
353
+
354
+ .content-aside__list li {
355
+ font-size: 13px;
356
+ line-height: 1.5;
357
+ }
358
+
359
+ .content-aside__list a {
360
+ font-size: 13px;
361
+ line-height: 1.5;
362
+ padding: 4px 5px 4px 23px;
363
+ display: block;
364
+ }
365
+
366
+ .content-aside__item {
367
+ font-size: 13px;
368
+ padding: 4px 8px 4px 23px;
369
+ width: 100%;
370
+ display: block;
371
+ line-height: 1.5;
372
+ }
373
+
374
+ /* Responsive: hide TOC aside on smaller screens */
375
+ @media (max-width: 1100px) {
376
+ .content-aside { display: none; }
377
+ .article__main { width: 100%; }
378
+ }
379
+
380
+ /* Global mobile sidebar */
381
+ .mobile-sidebar {
382
+ display: none;
383
+ }
384
+
385
+ .sidebar-backdrop {
386
+ display: none;
387
+ position: fixed;
388
+ inset: 0;
389
+ background: rgba(0, 0, 0, 0.5);
390
+ z-index: 90;
391
+ }
392
+
393
+ .sidebar-backdrop--visible {
394
+ display: block;
395
+ }
396
+
397
+ /* Page dropdown (docs mobile only) */
398
+ .page-dropdown {
399
+ display: none;
400
+ }
401
+
402
+ /* Responsive: mobile layout */
403
+ @media (max-width: 1024px) {
404
+ .mobile-menu-toggle { display: flex; }
405
+ .header-bottom__nav { display: none; }
406
+ .header-top__content { padding: 0 16px; }
407
+
408
+ .nav-sidebar {
409
+ display: none;
410
+ }
411
+
412
+ .mobile-sidebar {
413
+ display: block;
414
+ position: fixed;
415
+ top: 0;
416
+ left: 0;
417
+ width: 260px;
418
+ height: 100vh;
419
+ z-index: 100;
420
+ background: var(--bg);
421
+ transform: translateX(-100%);
422
+ transition: transform 0.25s ease;
423
+ border-right: 1px solid var(--border);
424
+ padding: 20px 0;
425
+ overflow-y: auto;
426
+ }
427
+
428
+ .mobile-sidebar--open {
429
+ transform: translateX(0);
430
+ }
431
+
432
+ .mobile-nav {
433
+ display: flex;
434
+ flex-direction: column;
435
+ padding: 0 10px;
436
+ gap: 2px;
437
+ }
438
+
439
+ .mobile-nav__item {
440
+ font-size: 15px;
441
+ font-weight: 600;
442
+ padding: 12px 14px;
443
+ border-radius: 8px;
444
+ display: flex;
445
+ align-items: center;
446
+ gap: 10px;
447
+ width: 100%;
448
+ }
449
+
450
+ .mobile-nav__item:hover {
451
+ background-color: var(--surface-hover);
452
+ box-shadow: inset 0 0 0 1px var(--border);
453
+ }
454
+
455
+ .mobile-nav__item--active {
456
+ background-color: var(--surface);
457
+ }
458
+
459
+ .page-dropdown {
460
+ display: block;
461
+ padding: 8px 16px;
462
+ border-bottom: 1px solid var(--border);
463
+ position: sticky;
464
+ top: var(--header-height);
465
+ z-index: 40;
466
+ background: var(--bg);
467
+ }
468
+
469
+ .page-dropdown__toggle {
470
+ width: 100%;
471
+ display: flex;
472
+ align-items: center;
473
+ justify-content: space-between;
474
+ padding: 8px 12px;
475
+ border: 1px solid var(--border);
476
+ border-radius: 6px;
477
+ font-size: 14px;
478
+ background: var(--bg);
479
+ color: var(--fg);
480
+ cursor: pointer;
481
+ }
482
+
483
+ .page-dropdown__title {
484
+ font-weight: 500;
485
+ overflow: hidden;
486
+ text-overflow: ellipsis;
487
+ white-space: nowrap;
488
+ }
489
+
490
+ .page-dropdown__list {
491
+ display: none;
492
+ padding: 8px 0;
493
+ max-height: 60vh;
494
+ overflow-y: auto;
495
+ }
496
+
497
+ .page-dropdown__list--open {
498
+ display: block;
499
+ }
500
+
501
+ .article {
502
+ width: 100%;
503
+ padding: 20px 16px;
504
+ }
505
+ }
506
+
507
+ /* Home page styles */
508
+ .home-content {
509
+ padding: 2rem;
510
+ width: 100%;
511
+ max-width: 900px;
512
+ margin: 0 auto;
513
+ font-size: 15px;
514
+ line-height: 1.5;
515
+ }
516
+
517
+ .home-content > section {
518
+ padding: 3rem 0;
519
+ }
520
+
521
+ .home-content .home-title {
522
+ font-size: 1.875rem;
523
+ font-weight: 700;
524
+ margin-bottom: 2rem;
525
+ text-align: center;
526
+ }
527
+
528
+ .home-content .facepile {
529
+ display: flex;
530
+ flex-wrap: wrap;
531
+ justify-content: center;
532
+ padding-left: 1rem;
533
+ line-height: 2;
534
+ }
535
+
536
+ .home-content .facepile a {
537
+ display: inline-block;
538
+ margin-left: -0.75rem;
539
+ transition: transform 0.2s, z-index 0s;
540
+ }
541
+
542
+ .home-content .facepile a:hover {
543
+ transform: scale(1.15);
544
+ z-index: 1;
545
+ }
546
+
547
+ .home-content .facepile a img {
548
+ width: 3.5rem;
549
+ height: 3.5rem;
550
+ border-radius: 50%;
551
+ border: 2px solid var(--bg);
552
+ object-fit: cover;
553
+ vertical-align: middle;
554
+ }
555
+
556
+ .home-content .release {
557
+ border-bottom: 1px solid var(--border);
558
+ padding: 1.5rem 0;
559
+ }
560
+
561
+ .home-content .release:last-of-type {
562
+ border-bottom: none;
563
+ }
564
+
565
+ .home-content .release-header {
566
+ display: flex;
567
+ align-items: baseline;
568
+ gap: 12px;
569
+ margin-bottom: 10px;
570
+ }
571
+
572
+ .home-content .release-title {
573
+ font-size: 1.1em;
574
+ font-weight: 600;
575
+ }
576
+
577
+ .home-content .release-date {
578
+ font-size: 13px;
579
+ color: var(--muted);
580
+ }
581
+
582
+ .home-content .release-body {
583
+ font-size: 15px;
584
+ line-height: 1.6;
585
+ }
586
+
587
+ .home-content .release-btn {
588
+ display: inline-flex;
589
+ align-items: center;
590
+ gap: 6px;
591
+ margin-top: 2rem;
592
+ padding: 0.75rem 1.5rem;
593
+ border: 2px solid var(--border-strong);
594
+ border-radius: 0.5rem;
595
+ font-size: 1rem;
596
+ font-weight: 600;
597
+ color: var(--fg);
598
+ transition: border-color 0.2s;
599
+ }
600
+
601
+ .home-content .release-btn:hover {
602
+ border-color: var(--border-hover);
603
+ }
604
+
605
+ @media (min-width: 992px) {
606
+ .home-content .home-title {
607
+ font-size: 3rem;
608
+ margin-bottom: 4rem;
609
+ }
610
+
611
+ .home-content .facepile a img {
612
+ width: 4.25rem;
613
+ height: 4.25rem;
614
+ }
615
+ }
616
+
617
+ /* Changelog styles */
618
+ .versions-container {
619
+ width: 100%;
620
+ max-width: 900px;
621
+ margin: 0 auto;
622
+ padding: 32px;
623
+ }
624
+
625
+ .versions-content .home-title {
626
+ font-size: 1.5em;
627
+ font-weight: 600;
628
+ margin-bottom: 20px;
629
+ }
630
+
631
+ .changelog-entry {
632
+ border-bottom: 1px solid var(--border);
633
+ padding: 20px 0;
634
+ }
635
+
636
+ .changelog-entry-header {
637
+ display: flex;
638
+ align-items: center;
639
+ gap: 10px;
640
+ margin-bottom: 6px;
641
+ }
642
+
643
+ .changelog-entry-title {
644
+ font-size: 1.1em;
645
+ font-weight: 600;
646
+ }
647
+
648
+ .changelog-entry-date {
649
+ font-size: 13px;
650
+ color: var(--muted);
651
+ }
652
+
653
+ .changelog-entry-body {
654
+ margin-top: 12px;
655
+ font-size: 15px;
656
+ line-height: 1.6;
657
+ }
658
+
659
+ .changelog-entry-nav {
660
+ margin-bottom: 20px;
661
+ }
662
+
663
+ .changelog-entry-nav a {
664
+ font-size: 14px;
665
+ color: var(--muted);
666
+ }
667
+
668
+ .changelog-entry-nav a:hover {
669
+ color: var(--fg);
670
+ }
671
+
672
+ .changelog-tag {
673
+ font-size: 11px;
674
+ font-weight: 600;
675
+ padding: 2px 8px;
676
+ border-radius: 4px;
677
+ text-transform: uppercase;
678
+ background-color: var(--surface);
679
+ }
680
+
681
+ .changelog-tag-release {
682
+ background-color: rgba(16, 185, 129, 0.15);
683
+ color: #047857;
684
+ }
685
+
686
+ .changelog-tag-pre-release {
687
+ background-color: rgba(251, 191, 36, 0.15);
688
+ color: #92400e;
689
+ }
690
+
691
+ /* Footer */
692
+ footer {
693
+ height: 4rem;
694
+ display: flex;
695
+ justify-content: center;
696
+ align-items: center;
697
+ font-size: 14px;
698
+ color: var(--muted);
699
+ }
700
+
701
+ footer img {
702
+ margin-left: 0.5rem;
703
+ height: 1.5rem;
704
+ width: auto;
705
+ }
706
+
707
+ @media (min-width: 992px) {
708
+ footer { height: 4.75rem; }
709
+ footer img { height: 1.75rem; }
710
+ }
711
+
@@ -0,0 +1,30 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ {{> header }}
6
+ <title>{{siteTitle}} - {{title}}</title>
7
+ </head>
8
+
9
+ <body>
10
+ {{> header-bar }}
11
+ <div class="page-dropdown" id="page-dropdown">
12
+ <button class="page-dropdown__toggle" id="page-dropdown-toggle">
13
+ <span class="page-dropdown__title">{{title}}</span>
14
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m7 15 5 5 5-5"/><path d="m7 9 5-5 5 5"/></svg>
15
+ </button>
16
+ <div class="page-dropdown__list" id="page-dropdown-list">
17
+ {{> sidebar }}
18
+ </div>
19
+ </div>
20
+ <div class="content">
21
+ <aside class="nav-sidebar" id="nav-sidebar">
22
+ {{> sidebar }}
23
+ </aside>
24
+ {{> doc }}
25
+ </div>
26
+ {{> footer }}
27
+ {{> scripts }}
28
+ </body>
29
+
30
+ </html>