@24vlh/vds 0.1.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 (65) hide show
  1. package/LICENSE.txt +201 -0
  2. package/README.md +147 -0
  3. package/dist/components/accordion.css +170 -0
  4. package/dist/components/accordion.min.css +1 -0
  5. package/dist/components/authoring.css +332 -0
  6. package/dist/components/authoring.min.css +1 -0
  7. package/dist/components/buttons.css +683 -0
  8. package/dist/components/buttons.min.css +1 -0
  9. package/dist/components/charts.css +502 -0
  10. package/dist/components/charts.min.css +1 -0
  11. package/dist/components/command.css +521 -0
  12. package/dist/components/command.min.css +1 -0
  13. package/dist/components/content-blocks.css +944 -0
  14. package/dist/components/content-blocks.min.css +1 -0
  15. package/dist/components/doc-block.css +782 -0
  16. package/dist/components/doc-block.min.css +1 -0
  17. package/dist/components/feedback.css +657 -0
  18. package/dist/components/feedback.min.css +1 -0
  19. package/dist/components/flows.css +1101 -0
  20. package/dist/components/flows.min.css +1 -0
  21. package/dist/components/forms-advanced.css +462 -0
  22. package/dist/components/forms-advanced.min.css +1 -0
  23. package/dist/components/forms.css +1831 -0
  24. package/dist/components/forms.min.css +1 -0
  25. package/dist/components/header-footer.css +348 -0
  26. package/dist/components/header-footer.min.css +1 -0
  27. package/dist/components/hero.css +498 -0
  28. package/dist/components/hero.min.css +1 -0
  29. package/dist/components/icons.css +937 -0
  30. package/dist/components/icons.min.css +1 -0
  31. package/dist/components/navigation.css +900 -0
  32. package/dist/components/navigation.min.css +1 -0
  33. package/dist/components/overlays.css +498 -0
  34. package/dist/components/overlays.min.css +1 -0
  35. package/dist/components/sections.css +450 -0
  36. package/dist/components/sections.min.css +1 -0
  37. package/dist/components/skeleton.css +385 -0
  38. package/dist/components/skeleton.min.css +1 -0
  39. package/dist/components/tables.css +591 -0
  40. package/dist/components/tables.min.css +1 -0
  41. package/dist/components/tabs.css +307 -0
  42. package/dist/components/tabs.min.css +1 -0
  43. package/dist/components/toasts.css +421 -0
  44. package/dist/components/toasts.min.css +1 -0
  45. package/dist/components/tooltips-popovers.css +447 -0
  46. package/dist/components/tooltips-popovers.min.css +1 -0
  47. package/dist/components/typography.css +250 -0
  48. package/dist/components/typography.min.css +1 -0
  49. package/dist/components/utilities.css +3434 -0
  50. package/dist/components/utilities.min.css +1 -0
  51. package/dist/core.css +866 -0
  52. package/dist/core.min.css +1 -0
  53. package/dist/identity.css +266 -0
  54. package/dist/identity.min.css +1 -0
  55. package/dist/themes/carbon.css +658 -0
  56. package/dist/themes/carbon.min.css +1 -0
  57. package/dist/themes/graphite.css +658 -0
  58. package/dist/themes/graphite.min.css +1 -0
  59. package/dist/themes/navy.css +657 -0
  60. package/dist/themes/navy.min.css +1 -0
  61. package/dist/themes/slate.css +659 -0
  62. package/dist/themes/slate.min.css +1 -0
  63. package/dist/vds.css +20313 -0
  64. package/dist/vds.min.css +1 -0
  65. package/package.json +64 -0
@@ -0,0 +1,332 @@
1
+ /************************************************************
2
+ * VLAH DESIGN SYSTEM (VDS) - Authoring Layer
3
+ *
4
+ * Responsibilities:
5
+ * - Provide the semantic toolbox for documentation: admonitions,
6
+ * MDX-style callouts, inline markers, footnotes, anchors, and prose helpers
7
+ * - Define consistent spacing, radii, typography, and borders for long-form
8
+ * content blocks across all VDS documentation pages
9
+ * - Supply robust heading-anchor behaviour and fully tokenised footnote
10
+ * structures for accessible technical writing
11
+ * - Integrate seamlessly with doc-block containers to unify documentation
12
+ * styling and preserve system-wide hierarchy
13
+ *
14
+ * System Notes:
15
+ * - Pure CSS; no JavaScript dependencies or behavioural assumptions
16
+ * - Consumes tokens from primitives + active theme (Carbon/Graphite/Navy/Slate/Titanium)
17
+ * - Safe to compose inside doc-blocks, MDX content, and VDS specification pages
18
+ * - All variants are token-driven: info/success/warning/danger map directly
19
+ * to semantic-* tokens defined in the active theme
20
+ ************************************************************/
21
+
22
+ /* ---------------------------------------------------------
23
+ 1. FOUNDATION / RESET
24
+ --------------------------------------------------------- */
25
+
26
+ [data-vds-authoring],
27
+ .vds-authoring {
28
+ --highlight-border-width: var(--border-width-strong);
29
+
30
+ --admonition-radius: var(--radius-md);
31
+ --admonition-border: var(--highlight-border-width);
32
+ --admonition-gap: var(--space-3);
33
+ --admonition-pad-y: var(--space-3);
34
+ --admonition-pad-x: var(--space-4);
35
+
36
+ --footnote-size: var(--text-xs);
37
+ --footnote-color: var(--footnote-color, var(--color-text-muted));
38
+
39
+ --marker-bg: var(--color-muted-bg);
40
+ --marker-border: var(--color-muted-border);
41
+ }
42
+
43
+ /* ---------------------------------------------------------
44
+ 2. ADMONITION SYSTEM (GitHub-style)
45
+ --------------------------------------------------------- */
46
+
47
+ .admonition {
48
+ margin-top: var(--space-4);
49
+ margin-bottom: var(--space-4);
50
+ padding: var(--admonition-pad-y) var(--admonition-pad-x);
51
+
52
+ display: flex;
53
+ align-items: flex-start;
54
+ gap: var(--admonition-gap);
55
+
56
+ border-radius: var(--admonition-radius);
57
+ border-left: var(--admonition-border) solid var(--color-border-subtle);
58
+ background-color: var(--color-surface-subtle);
59
+ color: var(--color-text);
60
+ }
61
+
62
+ .admonition__icon {
63
+ flex-shrink: 0;
64
+ margin-top: 0.15em;
65
+ font-size: var(--text-lg);
66
+ opacity: 0.85;
67
+ }
68
+
69
+ .admonition__content {
70
+ flex: 1 1 auto;
71
+ min-width: 0;
72
+ }
73
+
74
+ .admonition__title {
75
+ font-size: var(--text-sm);
76
+ font-weight: 600;
77
+ text-transform: uppercase;
78
+ letter-spacing: 0.06em;
79
+ margin-bottom: var(--space-1);
80
+ }
81
+
82
+ .admonition__body {
83
+ font-size: var(--text-sm);
84
+ line-height: var(--line-height-relaxed);
85
+ }
86
+
87
+ .admonition--compact {
88
+ padding-top: var(--space-2);
89
+ padding-bottom: var(--space-2);
90
+ padding-left: var(--space-3);
91
+ padding-right: var(--space-3);
92
+ }
93
+
94
+ /* ---------------------------------------------------------
95
+ 2.1 ADMONITION VARIANTS
96
+ --------------------------------------------------------- */
97
+
98
+ .admonition--note,
99
+ .admonition--info {
100
+ background-color: var(--semantic-info-bg);
101
+ border-color: var(--semantic-info-border);
102
+ color: var(--semantic-info-text);
103
+ }
104
+
105
+ .admonition--tip,
106
+ .admonition--success {
107
+ background-color: var(--semantic-success-bg);
108
+ border-color: var(--semantic-success-border);
109
+ color: var(--semantic-success-text);
110
+ }
111
+
112
+ .admonition--warning {
113
+ background-color: var(--semantic-warning-bg);
114
+ border-color: var(--semantic-warning-border);
115
+ color: var(--semantic-warning-text);
116
+ }
117
+
118
+ .admonition--danger,
119
+ .admonition--important {
120
+ background-color: var(--semantic-danger-bg);
121
+ border-color: var(--semantic-danger-border);
122
+ color: var(--semantic-danger-text);
123
+ }
124
+
125
+ /* ---------------------------------------------------------
126
+ 3. MDX / MARKDOWN CALLOUTS
127
+ --------------------------------------------------------- */
128
+
129
+ .md-note,
130
+ .md-info,
131
+ .md-tip,
132
+ .md-success,
133
+ .md-warning,
134
+ .md-danger,
135
+ .md-important {
136
+ margin-top: var(--space-4);
137
+ margin-bottom: var(--space-4);
138
+ padding: var(--space-3) var(--space-4);
139
+ border-radius: var(--radius-md);
140
+ border-left: var(--highlight-border-width) solid currentColor;
141
+ font-size: var(--text-sm);
142
+ line-height: var(--line-height-relaxed);
143
+ }
144
+
145
+ .md-note,
146
+ .md-info {
147
+ background-color: var(--semantic-info-bg);
148
+ color: var(--semantic-info-text);
149
+ }
150
+
151
+ .md-tip,
152
+ .md-success {
153
+ background-color: var(--semantic-success-bg);
154
+ color: var(--semantic-success-text);
155
+ }
156
+
157
+ .md-warning {
158
+ background-color: var(--semantic-warning-bg);
159
+ color: var(--semantic-warning-text);
160
+ }
161
+
162
+ .md-danger,
163
+ .md-important {
164
+ background-color: var(--semantic-danger-bg);
165
+ color: var(--semantic-danger-text);
166
+ }
167
+
168
+ /* ---------------------------------------------------------
169
+ 4. HEADING ANCHORS (Robust)
170
+ --------------------------------------------------------- */
171
+
172
+ .heading-anchor {
173
+ margin-left: var(--space-1);
174
+ font-size: 0.8em;
175
+ -webkit-text-decoration: none;
176
+ text-decoration: none;
177
+ opacity: 0;
178
+ color: var(--color-text-soft);
179
+ transition: opacity var(--transition-fast);
180
+ }
181
+
182
+ .heading-anchor:hover {
183
+ color: var(--link-text-hover);
184
+ }
185
+
186
+ h1:hover .heading-anchor,
187
+ h2:hover .heading-anchor,
188
+ h3:hover .heading-anchor,
189
+ h4:hover .heading-anchor,
190
+ h5:hover .heading-anchor,
191
+ h6:hover .heading-anchor,
192
+ h1:focus-within .heading-anchor,
193
+ h2:focus-within .heading-anchor,
194
+ h3:focus-within .heading-anchor,
195
+ h4:focus-within .heading-anchor,
196
+ h5:focus-within .heading-anchor,
197
+ h6:focus-within .heading-anchor {
198
+ opacity: 1;
199
+ }
200
+
201
+ /* ---------------------------------------------------------
202
+ 5. FOOTNOTES
203
+ --------------------------------------------------------- */
204
+
205
+ .fn-ref {
206
+ font-size: var(--footnote-size);
207
+ vertical-align: super;
208
+ color: var(--footnote-color);
209
+ -webkit-text-decoration: none;
210
+ text-decoration: none;
211
+ margin-left: 0.15em;
212
+ }
213
+
214
+ .fn-ref:hover {
215
+ color: var(--link-text-hover);
216
+ }
217
+
218
+ .fn-back {
219
+ font-size: var(--footnote-size);
220
+ -webkit-text-decoration: none;
221
+ text-decoration: none;
222
+ color: var(--footnote-color);
223
+ }
224
+
225
+ .footnotes {
226
+ border-top: 1px solid var(--color-border-subtle);
227
+ margin-top: var(--space-8);
228
+ padding-top: var(--space-6);
229
+ font-size: var(--footnote-size);
230
+ }
231
+
232
+ .footnotes ol {
233
+ padding-left: var(--space-6);
234
+ }
235
+
236
+ .footnotes li {
237
+ margin-bottom: var(--space-3);
238
+ }
239
+
240
+ /* ---------------------------------------------------------
241
+ 6. INLINE MARKERS (Highlight, warning, etc.)
242
+ --------------------------------------------------------- */
243
+
244
+ .inline-marker {
245
+ display: inline-block;
246
+ padding: 0 var(--space-1_5);
247
+ border-radius: var(--radius-sm);
248
+ background: var(--marker-bg);
249
+ border: 1px solid var(--marker-border);
250
+ font-size: var(--text-xs);
251
+ line-height: 1.3;
252
+ color: var(--color-text);
253
+ }
254
+
255
+ .inline-marker--info {
256
+ background: var(--semantic-info-bg);
257
+ border-color: var(--semantic-info-border);
258
+ color: var(--semantic-info-text);
259
+ }
260
+
261
+ .inline-marker--success {
262
+ background: var(--semantic-success-bg);
263
+ border-color: var(--semantic-success-border);
264
+ color: var(--semantic-success-text);
265
+ }
266
+
267
+ .inline-marker--warning {
268
+ background: var(--semantic-warning-bg);
269
+ border-color: var(--semantic-warning-border);
270
+ color: var(--semantic-warning-text);
271
+ }
272
+
273
+ .inline-marker--danger {
274
+ background: var(--semantic-danger-bg);
275
+ border-color: var(--semantic-danger-border);
276
+ color: var(--semantic-danger-text);
277
+ }
278
+
279
+ /* ---------------------------------------------------------
280
+ 7. PROSE HELPERS (Authoring convenience)
281
+ --------------------------------------------------------- */
282
+
283
+ .prose-lead {
284
+ font-size: var(--text-md);
285
+ line-height: var(--line-height-relaxed);
286
+ color: var(--color-text);
287
+ }
288
+
289
+ .prose-muted {
290
+ color: var(--color-text-muted);
291
+ }
292
+
293
+ .prose-tight > * + * {
294
+ margin-top: var(--space-2);
295
+ }
296
+
297
+ .prose-relaxed > * + * {
298
+ margin-top: var(--space-6);
299
+ }
300
+
301
+ .prose-grid-2 {
302
+ display: grid;
303
+ grid-template-columns: repeat(2, 1fr);
304
+ grid-gap: var(--space-6);
305
+ gap: var(--space-6);
306
+ }
307
+
308
+ @media (max-width: 1024px) {
309
+ .prose-grid-2 {
310
+ grid-template-columns: 1fr;
311
+ }
312
+ }
313
+
314
+ /* ---------------------------------------------------------
315
+ 8. AUTHORING / DOC-BLOCK INTEGRATION
316
+ --------------------------------------------------------- */
317
+
318
+ .doc-block__body .admonition {
319
+ margin-top: var(--space-3);
320
+ margin-bottom: var(--space-3);
321
+ }
322
+
323
+ .doc-block__body .md-note,
324
+ .doc-block__body .md-info,
325
+ .doc-block__body .md-tip,
326
+ .doc-block__body .md-success,
327
+ .doc-block__body .md-warning,
328
+ .doc-block__body .md-danger,
329
+ .doc-block__body .md-important {
330
+ margin-top: var(--space-3);
331
+ margin-bottom: var(--space-3);
332
+ }
@@ -0,0 +1 @@
1
+ .vds-authoring,[data-vds-authoring]{--highlight-border-width:var(--border-width-strong);--admonition-radius:var(--radius-md);--admonition-border:var(--highlight-border-width);--admonition-gap:var(--space-3);--admonition-pad-y:var(--space-3);--admonition-pad-x:var(--space-4);--footnote-size:var(--text-xs);--footnote-color:var(--footnote-color,var(--color-text-muted));--marker-bg:var(--color-muted-bg);--marker-border:var(--color-muted-border)}.admonition{align-items:flex-start;background-color:var(--color-surface-subtle);border-left:var(--admonition-border) solid var(--color-border-subtle);border-radius:var(--admonition-radius);color:var(--color-text);display:flex;gap:var(--admonition-gap);margin-bottom:var(--space-4);margin-top:var(--space-4);padding:var(--admonition-pad-y) var(--admonition-pad-x)}.admonition__icon{flex-shrink:0;font-size:var(--text-lg);margin-top:.15em;opacity:.85}.admonition__content{flex:1 1 auto;min-width:0}.admonition__title{font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;margin-bottom:var(--space-1);text-transform:uppercase}.admonition__body{font-size:var(--text-sm);line-height:var(--line-height-relaxed)}.admonition--compact{padding:var(--space-2) var(--space-3)}.admonition--info,.admonition--note{background-color:var(--semantic-info-bg);border-color:var(--semantic-info-border);color:var(--semantic-info-text)}.admonition--success,.admonition--tip{background-color:var(--semantic-success-bg);border-color:var(--semantic-success-border);color:var(--semantic-success-text)}.admonition--warning{background-color:var(--semantic-warning-bg);border-color:var(--semantic-warning-border);color:var(--semantic-warning-text)}.admonition--danger,.admonition--important{background-color:var(--semantic-danger-bg);border-color:var(--semantic-danger-border);color:var(--semantic-danger-text)}.md-danger,.md-important,.md-info,.md-note,.md-success,.md-tip,.md-warning{border-left:var(--highlight-border-width) solid;border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4);margin-top:var(--space-4);padding:var(--space-3) var(--space-4)}.md-info,.md-note{background-color:var(--semantic-info-bg);color:var(--semantic-info-text)}.md-success,.md-tip{background-color:var(--semantic-success-bg);color:var(--semantic-success-text)}.md-warning{background-color:var(--semantic-warning-bg);color:var(--semantic-warning-text)}.md-danger,.md-important{background-color:var(--semantic-danger-bg);color:var(--semantic-danger-text)}.heading-anchor{color:var(--color-text-soft);font-size:.8em;margin-left:var(--space-1);opacity:0;-webkit-text-decoration:none;text-decoration:none;transition:opacity var(--transition-fast)}.heading-anchor:hover{color:var(--link-text-hover)}h1:focus-within .heading-anchor,h1:hover .heading-anchor,h2:focus-within .heading-anchor,h2:hover .heading-anchor,h3:focus-within .heading-anchor,h3:hover .heading-anchor,h4:focus-within .heading-anchor,h4:hover .heading-anchor,h5:focus-within .heading-anchor,h5:hover .heading-anchor,h6:focus-within .heading-anchor,h6:hover .heading-anchor{opacity:1}.fn-ref{color:var(--footnote-color);font-size:var(--footnote-size);margin-left:.15em;-webkit-text-decoration:none;text-decoration:none;vertical-align:super}.fn-ref:hover{color:var(--link-text-hover)}.fn-back{color:var(--footnote-color);-webkit-text-decoration:none;text-decoration:none}.fn-back,.footnotes{font-size:var(--footnote-size)}.footnotes{border-top:1px solid var(--color-border-subtle);margin-top:var(--space-8);padding-top:var(--space-6)}.footnotes ol{padding-left:var(--space-6)}.footnotes li{margin-bottom:var(--space-3)}.inline-marker{background:var(--marker-bg);border:1px solid var(--marker-border);border-radius:var(--radius-sm);color:var(--color-text);display:inline-block;font-size:var(--text-xs);line-height:1.3;padding:0 var(--space-1_5)}.inline-marker--info{background:var(--semantic-info-bg);border-color:var(--semantic-info-border);color:var(--semantic-info-text)}.inline-marker--success{background:var(--semantic-success-bg);border-color:var(--semantic-success-border);color:var(--semantic-success-text)}.inline-marker--warning{background:var(--semantic-warning-bg);border-color:var(--semantic-warning-border);color:var(--semantic-warning-text)}.inline-marker--danger{background:var(--semantic-danger-bg);border-color:var(--semantic-danger-border);color:var(--semantic-danger-text)}.prose-lead{color:var(--color-text);font-size:var(--text-md);line-height:var(--line-height-relaxed)}.prose-muted{color:var(--color-text-muted)}.prose-tight>*+*{margin-top:var(--space-2)}.prose-relaxed>*+*{margin-top:var(--space-6)}.prose-grid-2{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(2,1fr)}@media (max-width:1024px){.prose-grid-2{grid-template-columns:1fr}}.doc-block__body .admonition,.doc-block__body .md-danger,.doc-block__body .md-important,.doc-block__body .md-info,.doc-block__body .md-note,.doc-block__body .md-success,.doc-block__body .md-tip,.doc-block__body .md-warning{margin-bottom:var(--space-3);margin-top:var(--space-3)}