@cogenta/theme-docs 0.3.2 → 0.5.3

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 (148) hide show
  1. package/dist/src/index.d.ts +2 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +2 -0
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/render/blocks/accordion.d.ts +8 -0
  6. package/dist/src/render/blocks/accordion.d.ts.map +1 -1
  7. package/dist/src/render/blocks/accordion.js +10 -10
  8. package/dist/src/render/blocks/accordion.js.map +1 -1
  9. package/dist/src/render/blocks/collection-list.d.ts +3 -11
  10. package/dist/src/render/blocks/collection-list.d.ts.map +1 -1
  11. package/dist/src/render/blocks/collection-list.js +69 -68
  12. package/dist/src/render/blocks/collection-list.js.map +1 -1
  13. package/dist/src/render/blocks/cta.d.ts +6 -0
  14. package/dist/src/render/blocks/cta.d.ts.map +1 -1
  15. package/dist/src/render/blocks/cta.js +9 -4
  16. package/dist/src/render/blocks/cta.js.map +1 -1
  17. package/dist/src/render/blocks/embed.d.ts.map +1 -1
  18. package/dist/src/render/blocks/embed.js +14 -13
  19. package/dist/src/render/blocks/embed.js.map +1 -1
  20. package/dist/src/render/blocks/faq.d.ts +7 -0
  21. package/dist/src/render/blocks/faq.d.ts.map +1 -1
  22. package/dist/src/render/blocks/faq.js +10 -10
  23. package/dist/src/render/blocks/faq.js.map +1 -1
  24. package/dist/src/render/blocks/feature-grid.d.ts.map +1 -1
  25. package/dist/src/render/blocks/feature-grid.js +19 -19
  26. package/dist/src/render/blocks/feature-grid.js.map +1 -1
  27. package/dist/src/render/blocks/gallery.d.ts +8 -4
  28. package/dist/src/render/blocks/gallery.d.ts.map +1 -1
  29. package/dist/src/render/blocks/gallery.js +19 -13
  30. package/dist/src/render/blocks/gallery.js.map +1 -1
  31. package/dist/src/render/blocks/hero.d.ts +12 -9
  32. package/dist/src/render/blocks/hero.d.ts.map +1 -1
  33. package/dist/src/render/blocks/hero.js +22 -20
  34. package/dist/src/render/blocks/hero.js.map +1 -1
  35. package/dist/src/render/blocks/logo-strip.d.ts +6 -0
  36. package/dist/src/render/blocks/logo-strip.d.ts.map +1 -1
  37. package/dist/src/render/blocks/logo-strip.js +6 -10
  38. package/dist/src/render/blocks/logo-strip.js.map +1 -1
  39. package/dist/src/render/blocks/logos.d.ts +10 -0
  40. package/dist/src/render/blocks/logos.d.ts.map +1 -1
  41. package/dist/src/render/blocks/logos.js +20 -17
  42. package/dist/src/render/blocks/logos.js.map +1 -1
  43. package/dist/src/render/blocks/media-figure.d.ts +0 -6
  44. package/dist/src/render/blocks/media-figure.d.ts.map +1 -1
  45. package/dist/src/render/blocks/media-figure.js +28 -16
  46. package/dist/src/render/blocks/media-figure.js.map +1 -1
  47. package/dist/src/render/blocks/pricing-table.d.ts.map +1 -1
  48. package/dist/src/render/blocks/pricing-table.js +16 -20
  49. package/dist/src/render/blocks/pricing-table.js.map +1 -1
  50. package/dist/src/render/blocks/prose.d.ts +13 -1
  51. package/dist/src/render/blocks/prose.d.ts.map +1 -1
  52. package/dist/src/render/blocks/prose.js +12 -31
  53. package/dist/src/render/blocks/prose.js.map +1 -1
  54. package/dist/src/render/blocks/quote.d.ts +5 -3
  55. package/dist/src/render/blocks/quote.d.ts.map +1 -1
  56. package/dist/src/render/blocks/quote.js +10 -14
  57. package/dist/src/render/blocks/quote.js.map +1 -1
  58. package/dist/src/render/blocks/stat-counter.d.ts +5 -0
  59. package/dist/src/render/blocks/stat-counter.d.ts.map +1 -1
  60. package/dist/src/render/blocks/stat-counter.js +6 -10
  61. package/dist/src/render/blocks/stat-counter.js.map +1 -1
  62. package/dist/src/render/blocks/stats.d.ts +10 -0
  63. package/dist/src/render/blocks/stats.d.ts.map +1 -1
  64. package/dist/src/render/blocks/stats.js +13 -8
  65. package/dist/src/render/blocks/stats.js.map +1 -1
  66. package/dist/src/render/blocks/testimonial.d.ts +4 -5
  67. package/dist/src/render/blocks/testimonial.d.ts.map +1 -1
  68. package/dist/src/render/blocks/testimonial.js +9 -13
  69. package/dist/src/render/blocks/testimonial.js.map +1 -1
  70. package/dist/src/render/chrome.d.ts +36 -1
  71. package/dist/src/render/chrome.d.ts.map +1 -1
  72. package/dist/src/render/chrome.js +122 -80
  73. package/dist/src/render/chrome.js.map +1 -1
  74. package/dist/src/render/doc-index.d.ts +25 -0
  75. package/dist/src/render/doc-index.d.ts.map +1 -0
  76. package/dist/src/render/doc-index.js +49 -0
  77. package/dist/src/render/doc-index.js.map +1 -0
  78. package/dist/src/render/doc-page.d.ts +6 -0
  79. package/dist/src/render/doc-page.d.ts.map +1 -0
  80. package/dist/src/render/doc-page.js +127 -0
  81. package/dist/src/render/doc-page.js.map +1 -0
  82. package/dist/src/render/layout.d.ts +23 -0
  83. package/dist/src/render/layout.d.ts.map +1 -0
  84. package/dist/src/render/layout.js +40 -0
  85. package/dist/src/render/layout.js.map +1 -0
  86. package/dist/src/render/render-block.d.ts +9 -6
  87. package/dist/src/render/render-block.d.ts.map +1 -1
  88. package/dist/src/render/render-block.js +47 -100
  89. package/dist/src/render/render-block.js.map +1 -1
  90. package/dist/src/render/rich-text.d.ts +26 -0
  91. package/dist/src/render/rich-text.d.ts.map +1 -0
  92. package/dist/src/render/rich-text.js +325 -0
  93. package/dist/src/render/rich-text.js.map +1 -0
  94. package/dist/src/render/search.d.ts +15 -0
  95. package/dist/src/render/search.d.ts.map +1 -0
  96. package/dist/src/render/search.js +31 -0
  97. package/dist/src/render/search.js.map +1 -0
  98. package/dist/src/render/strings.d.ts +51 -0
  99. package/dist/src/render/strings.d.ts.map +1 -0
  100. package/dist/src/render/strings.js +60 -0
  101. package/dist/src/render/strings.js.map +1 -0
  102. package/dist/src/render/term-archive.d.ts +5 -5
  103. package/dist/src/render/term-archive.d.ts.map +1 -1
  104. package/dist/src/render/term-archive.js +27 -16
  105. package/dist/src/render/term-archive.js.map +1 -1
  106. package/dist/src/render/widget-areas.d.ts +22 -0
  107. package/dist/src/render/widget-areas.d.ts.map +1 -0
  108. package/dist/src/render/widget-areas.js +29 -0
  109. package/dist/src/render/widget-areas.js.map +1 -0
  110. package/package.json +4 -4
  111. package/src/index.ts +2 -0
  112. package/src/render/blocks/accordion.ts +31 -42
  113. package/src/render/blocks/collection-list.ts +132 -123
  114. package/src/render/blocks/cta.ts +23 -18
  115. package/src/render/blocks/embed.ts +37 -28
  116. package/src/render/blocks/faq.ts +26 -37
  117. package/src/render/blocks/feature-grid.ts +34 -42
  118. package/src/render/blocks/gallery.ts +33 -29
  119. package/src/render/blocks/hero.ts +41 -45
  120. package/src/render/blocks/logo-strip.ts +21 -21
  121. package/src/render/blocks/logos.ts +32 -42
  122. package/src/render/blocks/media-figure.ts +47 -25
  123. package/src/render/blocks/pricing-table.ts +34 -41
  124. package/src/render/blocks/prose.ts +25 -40
  125. package/src/render/blocks/quote.ts +25 -19
  126. package/src/render/blocks/stat-counter.ts +27 -29
  127. package/src/render/blocks/stats.ts +35 -32
  128. package/src/render/blocks/testimonial.ts +18 -19
  129. package/src/render/chrome.ts +170 -83
  130. package/src/render/doc-index.ts +65 -0
  131. package/src/render/doc-page.ts +303 -0
  132. package/src/render/layout.ts +73 -0
  133. package/src/render/render-block.ts +67 -191
  134. package/src/render/rich-text.ts +446 -0
  135. package/src/render/search.ts +41 -0
  136. package/src/render/strings.ts +67 -0
  137. package/src/render/term-archive.ts +62 -38
  138. package/src/render/widget-areas.ts +33 -0
  139. package/src/styles/archive.css +21 -27
  140. package/src/styles/base.css +438 -838
  141. package/src/styles/blocks.css +658 -916
  142. package/src/styles/chrome.css +439 -0
  143. package/src/styles/docs.css +404 -0
  144. package/src/styles/rich.css +337 -0
  145. package/src/styles/theme.css +28 -23
  146. package/src/styles/tokens.css +209 -215
  147. package/src/styles/widgets.css +890 -0
  148. package/tokens.json +15 -15
@@ -0,0 +1,439 @@
1
+ /*
2
+ * The header, the mobile menu and the footer.
3
+ */
4
+
5
+ /* --------------------------------------------------------------------------
6
+ Header: one bar on the page's own ground, under a hairline.
7
+ -------------------------------------------------------------------------- */
8
+
9
+ .cd-header {
10
+ position: sticky;
11
+ inset-block-start: 0;
12
+ z-index: 40;
13
+ background: var(--cd-canvas);
14
+ border-block-end: var(--cd-rule) solid var(--cd-line);
15
+ }
16
+
17
+ .cd-header__inner {
18
+ position: relative;
19
+ display: flex;
20
+ align-items: center;
21
+ gap: var(--cd-s6);
22
+ inline-size: 100%;
23
+ max-inline-size: calc(var(--cd-doc-page) + var(--cd-gutter) * 2);
24
+ min-block-size: var(--cd-header-height);
25
+ margin-inline: auto;
26
+ padding-inline: var(--cd-gutter);
27
+ }
28
+
29
+ .cd-header__brand {
30
+ display: inline-flex;
31
+ flex: none;
32
+ align-items: center;
33
+ min-block-size: 44px;
34
+ color: var(--cd-ink);
35
+ text-decoration: none;
36
+ }
37
+
38
+ .cd-header__logo {
39
+ display: block;
40
+ inline-size: auto;
41
+ max-block-size: 1.75rem;
42
+ object-fit: contain;
43
+ }
44
+
45
+ .cd-wordmark {
46
+ font-size: var(--cd-text-lg);
47
+ font-weight: var(--cd-weight-semibold);
48
+ letter-spacing: var(--cd-tracking-heading);
49
+ line-height: 1;
50
+ white-space: nowrap;
51
+ }
52
+
53
+ .cd-wordmark__kind {
54
+ color: var(--cd-ink-muted);
55
+ font-weight: var(--cd-weight-regular);
56
+ }
57
+
58
+ .cd-header__search {
59
+ display: none;
60
+ flex: 0 1 22rem;
61
+ min-inline-size: 12rem;
62
+ }
63
+
64
+ .cd-header__nav {
65
+ display: none;
66
+ margin-inline-start: auto;
67
+ }
68
+
69
+ .cd-header__links {
70
+ display: flex;
71
+ align-items: center;
72
+ gap: var(--cd-s1);
73
+ margin: 0;
74
+ padding: 0;
75
+ list-style: none;
76
+ }
77
+
78
+ .cd-header__item a,
79
+ .cd-header__item span {
80
+ display: inline-flex;
81
+ align-items: center;
82
+ min-block-size: 44px;
83
+ padding-inline: var(--cd-s3);
84
+ color: var(--cd-ink-soft);
85
+ font-size: var(--cd-text-ui);
86
+ text-decoration: none;
87
+ }
88
+
89
+ .cd-header__item a:hover {
90
+ color: var(--cd-ink);
91
+ }
92
+
93
+ .cd-header__end {
94
+ display: flex;
95
+ flex: none;
96
+ align-items: center;
97
+ gap: var(--cd-s2);
98
+ margin-inline-start: auto;
99
+ }
100
+
101
+ .cd-header__nav + .cd-header__end {
102
+ margin-inline-start: 0;
103
+ }
104
+
105
+ .cd-header__search-link {
106
+ display: inline-grid;
107
+ place-items: center;
108
+ inline-size: 44px;
109
+ block-size: 44px;
110
+ color: var(--cd-ink-soft);
111
+ }
112
+
113
+ .cd-header__search-link:hover {
114
+ color: var(--cd-ink);
115
+ }
116
+
117
+ .cd-header__search-icon {
118
+ inline-size: 1.25rem;
119
+ block-size: 1.25rem;
120
+ }
121
+
122
+ /* The header action: an outlined control, quieter than the teal button a
123
+ page's own call to action uses. */
124
+ .cg-action[data-emphasis="outline"] {
125
+ display: inline-flex;
126
+ align-items: center;
127
+ justify-content: center;
128
+ min-block-size: 2.375rem;
129
+ padding: var(--cd-s2) var(--cd-s4);
130
+ border: var(--cd-rule) solid var(--cd-line-strong);
131
+ border-radius: var(--cd-radius-control);
132
+ color: var(--cd-ink);
133
+ white-space: nowrap;
134
+ }
135
+
136
+ .cg-action[data-emphasis="outline"]:hover {
137
+ border-color: var(--cd-ink);
138
+ color: var(--cd-ink);
139
+ }
140
+
141
+ .cd-header__action {
142
+ display: none;
143
+ }
144
+
145
+ /* --- the light/dark control ---------------------------------------------- */
146
+
147
+ .cg-theme-toggle {
148
+ display: inline-grid;
149
+ place-items: center;
150
+ inline-size: 44px;
151
+ block-size: 44px;
152
+ padding: 0;
153
+ border: 0;
154
+ border-radius: var(--cd-radius-control);
155
+ background: transparent;
156
+ color: var(--cd-ink-soft);
157
+ cursor: pointer;
158
+ transition: color var(--cd-duration) var(--cd-ease);
159
+ }
160
+
161
+ .cg-theme-toggle:hover {
162
+ color: var(--cd-ink);
163
+ }
164
+
165
+ .cg-theme-toggle__icon {
166
+ inline-size: 1.125rem;
167
+ block-size: 1.125rem;
168
+ }
169
+
170
+ .cg-theme-toggle__icon--moon {
171
+ display: none;
172
+ }
173
+
174
+ @media (prefers-color-scheme: dark) {
175
+ :root:not([data-theme="light"]) .cg-theme-toggle__icon--sun {
176
+ display: none;
177
+ }
178
+
179
+ :root:not([data-theme="light"]) .cg-theme-toggle__icon--moon {
180
+ display: block;
181
+ }
182
+ }
183
+
184
+ :root[data-theme="dark"] .cg-theme-toggle__icon--sun {
185
+ display: none;
186
+ }
187
+
188
+ :root[data-theme="dark"] .cg-theme-toggle__icon--moon {
189
+ display: block;
190
+ }
191
+
192
+ /* --- the mobile menu: a disclosure, no script ---------------------------- */
193
+
194
+ .cd-menu {
195
+ position: static;
196
+ }
197
+
198
+ .cd-menu__button {
199
+ display: inline-grid;
200
+ align-content: center;
201
+ justify-items: center;
202
+ gap: 5px;
203
+ inline-size: 44px;
204
+ block-size: 44px;
205
+ border-radius: var(--cd-radius-control);
206
+ color: var(--cd-ink);
207
+ cursor: pointer;
208
+ list-style: none;
209
+ }
210
+
211
+ .cd-menu__button::-webkit-details-marker {
212
+ display: none;
213
+ }
214
+
215
+ .cd-menu__bar {
216
+ display: block;
217
+ inline-size: 1.125rem;
218
+ block-size: var(--cd-rule-strong);
219
+ background: var(--cd-ink);
220
+ }
221
+
222
+ .cd-menu__panel {
223
+ position: absolute;
224
+ inset-inline: 0;
225
+ inset-block-start: 100%;
226
+ display: grid;
227
+ gap: var(--cd-s5);
228
+ padding: var(--cd-s5) var(--cd-gutter) var(--cd-s8);
229
+ border-block: var(--cd-rule) solid var(--cd-line);
230
+ background: var(--cd-canvas);
231
+ }
232
+
233
+ .cd-menu__links {
234
+ display: grid;
235
+ margin: 0;
236
+ padding: 0;
237
+ list-style: none;
238
+ }
239
+
240
+ .cd-menu__item a,
241
+ .cd-menu__item span {
242
+ display: flex;
243
+ align-items: center;
244
+ min-block-size: 48px;
245
+ border-block-end: var(--cd-rule) solid var(--cd-line);
246
+ color: var(--cd-ink);
247
+ font-size: var(--cd-text-lg);
248
+ font-weight: var(--cd-weight-medium);
249
+ text-decoration: none;
250
+ }
251
+
252
+ .cd-menu__action {
253
+ justify-self: start;
254
+ }
255
+
256
+ @media (min-width: 64rem) {
257
+ .cd-header__search {
258
+ display: block;
259
+ }
260
+
261
+ .cd-header__nav {
262
+ display: block;
263
+ }
264
+
265
+ .cd-header__search-link,
266
+ .cd-menu {
267
+ display: none;
268
+ }
269
+
270
+ .cd-header__action {
271
+ display: inline-flex;
272
+ }
273
+ }
274
+
275
+ /* --------------------------------------------------------------------------
276
+ Footer: a pale band, the product on the left, the links in columns.
277
+ -------------------------------------------------------------------------- */
278
+
279
+ .cd-footer {
280
+ margin-block-start: 0;
281
+ border-block-start: var(--cd-rule) solid var(--cd-line);
282
+ background: var(--cd-footer);
283
+ color: var(--cd-ink);
284
+ }
285
+
286
+ .cd-footer__inner {
287
+ display: grid;
288
+ grid-template-columns: repeat(var(--cd-columns), minmax(0, 1fr));
289
+ column-gap: var(--cd-col-gap);
290
+ row-gap: var(--cd-s10);
291
+ inline-size: 100%;
292
+ max-inline-size: calc(var(--cd-doc-page) + var(--cd-gutter) * 2);
293
+ margin-inline: auto;
294
+ padding: var(--cd-s16) var(--cd-gutter) var(--cd-s8);
295
+ }
296
+
297
+ .cd-footer__inner > * {
298
+ grid-column: 1 / -1;
299
+ min-inline-size: 0;
300
+ }
301
+
302
+ .cd-footer__about {
303
+ display: grid;
304
+ align-content: start;
305
+ gap: var(--cd-s3);
306
+ }
307
+
308
+ .cd-footer__name {
309
+ justify-self: start;
310
+ color: var(--cd-ink);
311
+ font-size: var(--cd-text-lg);
312
+ font-weight: var(--cd-weight-semibold);
313
+ letter-spacing: var(--cd-tracking-heading);
314
+ text-decoration: none;
315
+ }
316
+
317
+ .cd-footer__tagline,
318
+ .cd-footer__note p {
319
+ margin: 0;
320
+ max-inline-size: 38ch;
321
+ color: var(--cd-ink-muted);
322
+ font-size: var(--cd-text-ui);
323
+ line-height: var(--cd-leading-ui);
324
+ }
325
+
326
+ .cd-footer__note {
327
+ display: grid;
328
+ gap: var(--cd-s2);
329
+ }
330
+
331
+ .cd-footer__social {
332
+ display: flex;
333
+ flex-wrap: wrap;
334
+ gap: var(--cd-s1);
335
+ margin: var(--cd-s1) 0 0 calc(var(--cd-s2) * -1);
336
+ padding: 0;
337
+ list-style: none;
338
+ }
339
+
340
+ .cd-footer__social a {
341
+ display: inline-grid;
342
+ place-items: center;
343
+ inline-size: 44px;
344
+ block-size: 44px;
345
+ color: var(--cd-ink-muted);
346
+ }
347
+
348
+ .cd-footer__social a:hover {
349
+ color: var(--cd-ink);
350
+ }
351
+
352
+ .cd-footer__social .cg-social__icon {
353
+ inline-size: 1.25rem;
354
+ block-size: 1.25rem;
355
+ }
356
+
357
+ .cd-footer__nav {
358
+ display: grid;
359
+ grid-template-columns: repeat(2, minmax(0, 1fr));
360
+ gap: var(--cd-s8) var(--cd-col-gap);
361
+ }
362
+
363
+ .cd-footer__heading {
364
+ margin: 0 0 var(--cd-s3);
365
+ color: var(--cd-ink);
366
+ font-size: var(--cd-text-ui);
367
+ font-weight: var(--cd-weight-semibold);
368
+ }
369
+
370
+ .cd-footer__links {
371
+ display: grid;
372
+ gap: var(--cd-s1);
373
+ margin: 0;
374
+ padding: 0;
375
+ list-style: none;
376
+ }
377
+
378
+ .cd-footer__item a,
379
+ .cd-footer__item span {
380
+ display: inline-block;
381
+ padding-block: var(--cd-s1);
382
+ color: var(--cd-ink-muted);
383
+ font-size: var(--cd-text-ui);
384
+ text-decoration: none;
385
+ }
386
+
387
+ .cd-footer__item a:hover {
388
+ color: var(--cd-ink);
389
+ text-decoration-line: underline;
390
+ }
391
+
392
+ .cd-footer__legal {
393
+ display: flex;
394
+ flex-wrap: wrap;
395
+ align-items: center;
396
+ justify-content: space-between;
397
+ gap: var(--cd-s3) var(--cd-s8);
398
+ padding-block-start: var(--cd-s6);
399
+ border-block-start: var(--cd-rule) solid var(--cd-line);
400
+ color: var(--cd-ink-muted);
401
+ font-size: var(--cd-text-label);
402
+ }
403
+
404
+ .cd-footer__copyright {
405
+ margin: 0;
406
+ font-variant-numeric: tabular-nums;
407
+ }
408
+
409
+ .cd-footer__branding :where(a) {
410
+ color: var(--cd-ink-muted);
411
+ }
412
+
413
+ .cd-footer__branding :where(img) {
414
+ display: inline-block;
415
+ vertical-align: middle;
416
+ max-block-size: 1.25rem;
417
+ inline-size: auto;
418
+ }
419
+
420
+ @media (min-width: 48rem) {
421
+ .cd-footer__nav[data-columns="3"],
422
+ .cd-footer__nav[data-columns="4"] {
423
+ grid-template-columns: repeat(var(--cd-footer-columns, 3), minmax(0, 1fr));
424
+ }
425
+
426
+ .cd-footer__nav[data-columns="4"] {
427
+ --cd-footer-columns: 4;
428
+ }
429
+ }
430
+
431
+ @media (min-width: 64rem) {
432
+ .cd-footer__about {
433
+ grid-column: 1 / span 4;
434
+ }
435
+
436
+ .cd-footer__nav {
437
+ grid-column: 6 / -1;
438
+ }
439
+ }