@jfrader/storybook-docs 0.0.0-stage → 0.4.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 (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +138 -2
  3. package/dist/app.d.ts +1 -0
  4. package/dist/base.d.ts +3 -0
  5. package/dist/build/catalog.d.ts +20 -0
  6. package/dist/build/code.d.ts +2 -0
  7. package/dist/build/global-styles.d.ts +1 -0
  8. package/dist/build/guidance.d.ts +4 -0
  9. package/dist/build/module-ids.d.ts +2 -0
  10. package/dist/build/props.d.ts +10 -0
  11. package/dist/build/releases.d.ts +7 -0
  12. package/dist/build/site.d.ts +2 -0
  13. package/dist/build/storybook-test.d.ts +2 -0
  14. package/dist/build/tokens.d.ts +2 -0
  15. package/dist/code.d.ts +16 -0
  16. package/dist/component-demo.d.ts +23 -0
  17. package/dist/config.d.ts +98 -0
  18. package/dist/controls.d.ts +49 -0
  19. package/dist/guidance-model.d.ts +74 -0
  20. package/dist/guidance.d.ts +9 -0
  21. package/dist/index.css +424 -0
  22. package/dist/index.d.ts +4 -0
  23. package/dist/index.js +1930 -0
  24. package/dist/pages/component-page.d.ts +4 -0
  25. package/dist/pages/foundations-color.d.ts +3 -0
  26. package/dist/pages/foundations-effects.d.ts +3 -0
  27. package/dist/pages/foundations-spacing.d.ts +3 -0
  28. package/dist/pages/foundations-type.d.ts +3 -0
  29. package/dist/pages/overview.d.ts +3 -0
  30. package/dist/pages/releases.d.ts +3 -0
  31. package/dist/prop-docs.d.ts +20 -0
  32. package/dist/props.d.ts +4 -0
  33. package/dist/scan.d.ts +19 -0
  34. package/dist/search-match.d.ts +21 -0
  35. package/dist/search.d.ts +5 -0
  36. package/dist/sections.d.ts +52 -0
  37. package/dist/skeleton.d.ts +11 -0
  38. package/dist/start.d.ts +4 -0
  39. package/dist/story-view.d.ts +20 -0
  40. package/dist/styles.css +688 -0
  41. package/dist/toc.d.ts +10 -0
  42. package/dist/virtual.d.ts +42 -0
  43. package/dist/vite-plugin.d.ts +10 -0
  44. package/dist/vite-plugin.js +697 -0
  45. package/docs/CONFIG.md +287 -0
  46. package/docs/RELEASING.md +127 -0
  47. package/package.json +83 -4
package/dist/index.css ADDED
@@ -0,0 +1,424 @@
1
+ /* src/guidance.css */
2
+ .guidance p,
3
+ .guidance ul,
4
+ .guidance ol {
5
+ margin: 8px 0;
6
+ line-height: 1.6;
7
+ }
8
+ .guidance li + li {
9
+ margin-top: 4px;
10
+ }
11
+ .guidance a {
12
+ color: var(--sd-accent-text);
13
+ }
14
+ .guidance pre.code {
15
+ margin: 12px 0;
16
+ }
17
+ .guidance hr {
18
+ margin: 22px 0;
19
+ border: 0;
20
+ border-top: 1px solid var(--sd-border);
21
+ }
22
+ .guidance-table {
23
+ overflow-x: auto;
24
+ }
25
+ .guidance-callout {
26
+ --callout-tone: var(--sd-accent);
27
+ margin: 12px 0;
28
+ padding: 14px 18px;
29
+ border: 0;
30
+ border-left: 3px solid var(--callout-tone);
31
+ border-radius: 0 var(--sd-radius) var(--sd-radius) 0;
32
+ background: var(--sd-surface);
33
+ }
34
+ .guidance-callout > :first-child {
35
+ margin-top: 0;
36
+ }
37
+ .guidance-callout > :last-child {
38
+ margin-bottom: 0;
39
+ }
40
+ .guidance-callout-do {
41
+ --callout-tone: var(--sd-success);
42
+ background: color-mix(in srgb, var(--sd-success) 8%, var(--sd-surface));
43
+ }
44
+ .guidance-callout-dont {
45
+ --callout-tone: var(--sd-danger-text, var(--sd-danger));
46
+ background: color-mix(in srgb, var(--sd-danger) 8%, var(--sd-surface));
47
+ }
48
+ .guidance-callout-label {
49
+ font-size: 11px;
50
+ font-weight: 700;
51
+ letter-spacing: 0.07em;
52
+ text-transform: uppercase;
53
+ color: var(--callout-tone);
54
+ }
55
+
56
+ /* src/toc.css */
57
+ [data-toc] {
58
+ scroll-margin-top: 76px;
59
+ }
60
+ [data-toc-slot] {
61
+ margin-left: auto;
62
+ }
63
+ .toc-copy {
64
+ display: inline-flex;
65
+ align-items: center;
66
+ min-block-size: 24px;
67
+ font: inherit;
68
+ color: var(--sd-text-muted);
69
+ background: none;
70
+ border: 1px solid transparent;
71
+ border-radius: 6px;
72
+ padding: 2px 8px;
73
+ cursor: pointer;
74
+ }
75
+ .toc-copy:hover,
76
+ .toc-copy:focus-visible {
77
+ color: var(--sd-text);
78
+ border-color: var(--sd-border);
79
+ }
80
+ .toc-sr,
81
+ .toc-clipboard {
82
+ position: fixed;
83
+ width: 1px;
84
+ height: 1px;
85
+ overflow: hidden;
86
+ clip-path: inset(50%);
87
+ opacity: 0;
88
+ }
89
+ .toc-flash {
90
+ animation: toc-flash 2.4s ease-out;
91
+ }
92
+ @keyframes toc-flash {
93
+ 0%, 45% {
94
+ box-shadow: 0 0 0 3px var(--sd-accent, currentColor);
95
+ }
96
+ 100% {
97
+ box-shadow: 0 0 0 3px transparent;
98
+ }
99
+ }
100
+ @media (prefers-reduced-motion: reduce) {
101
+ .toc-flash {
102
+ animation: none;
103
+ outline: 2px solid var(--sd-accent, currentColor);
104
+ }
105
+ }
106
+ .toc {
107
+ display: none;
108
+ }
109
+ @media (min-width: 1180px) {
110
+ .app.has-toc {
111
+ grid-template-columns: 276px minmax(0, 1fr) 224px;
112
+ }
113
+ .toc {
114
+ display: block;
115
+ grid-column: 3;
116
+ grid-row: 2;
117
+ position: sticky;
118
+ top: var(--sd-header-height, 56px);
119
+ align-self: start;
120
+ max-height: calc(100dvh - var(--sd-header-height, 56px));
121
+ overflow-y: auto;
122
+ padding: 34px 18px 40px 6px;
123
+ font-size: 12.5px;
124
+ }
125
+ .toc-title {
126
+ margin-bottom: 8px;
127
+ color: var(--sd-text-subtle);
128
+ font-size: 11px;
129
+ letter-spacing: 0.08em;
130
+ text-transform: uppercase;
131
+ }
132
+ .toc ul {
133
+ list-style: none;
134
+ margin: 0;
135
+ padding: 0;
136
+ }
137
+ .toc ul ul {
138
+ margin: 2px 0 6px 10px;
139
+ border-left: 1px solid var(--sd-border);
140
+ }
141
+ .toc-link {
142
+ display: flex;
143
+ align-items: center;
144
+ width: 100%;
145
+ min-block-size: 24px;
146
+ padding: 4px 8px;
147
+ font: inherit;
148
+ text-align: left;
149
+ color: var(--sd-text-muted);
150
+ background: none;
151
+ border: 0;
152
+ border-radius: 6px;
153
+ cursor: pointer;
154
+ }
155
+ .toc-link:hover {
156
+ color: var(--sd-text);
157
+ }
158
+ .toc-link[aria-current=location] {
159
+ color: var(--sd-text);
160
+ font-weight: 600;
161
+ }
162
+ .toc-story {
163
+ font-size: 12px;
164
+ }
165
+ .toc-sub {
166
+ font-size: 12.5px;
167
+ color: var(--sd-text-subtle);
168
+ }
169
+ }
170
+
171
+ /* src/controls.css */
172
+ .sd-controls {
173
+ margin: 0;
174
+ padding: 0 20px 18px;
175
+ min-width: 0;
176
+ border: 0;
177
+ background: none;
178
+ color: var(--sd-text-muted);
179
+ font-size: 13px;
180
+ }
181
+ .sd-controls legend {
182
+ padding: 0;
183
+ font-size: 11px;
184
+ font-weight: 600;
185
+ letter-spacing: 0.06em;
186
+ text-transform: uppercase;
187
+ }
188
+ .sd-controls-fields {
189
+ display: flex;
190
+ flex-wrap: wrap;
191
+ align-items: center;
192
+ gap: 16px 24px;
193
+ }
194
+ .sd-control {
195
+ display: flex;
196
+ flex-wrap: wrap;
197
+ align-items: center;
198
+ gap: 8px;
199
+ min-width: 0;
200
+ min-block-size: 32px;
201
+ }
202
+ .sd-control input:not([type=checkbox]),
203
+ .sd-control select,
204
+ .sd-control textarea,
205
+ .sd-controls-reset {
206
+ font: inherit;
207
+ color: var(--sd-text);
208
+ background: var(--sd-surface);
209
+ border: 1px solid var(--sd-text-subtle);
210
+ border-radius: 6px;
211
+ padding: 5px 8px;
212
+ max-width: 100%;
213
+ min-block-size: 32px;
214
+ box-sizing: border-box;
215
+ }
216
+ .sd-control input:not([type=checkbox]) {
217
+ width: 10rem;
218
+ }
219
+ .sd-control textarea {
220
+ width: 16rem;
221
+ min-height: 4rem;
222
+ resize: vertical;
223
+ }
224
+ .sd-control textarea[aria-invalid=true] {
225
+ border-color: var(--sd-danger);
226
+ }
227
+ .sd-control :is(input[type=checkbox], input[type=range]) {
228
+ accent-color: var(--sd-accent);
229
+ }
230
+ .sd-controls-reset {
231
+ margin-left: auto;
232
+ cursor: pointer;
233
+ }
234
+ .sd-controls-reset:disabled {
235
+ opacity: 0.5;
236
+ cursor: default;
237
+ }
238
+ .sd-controls :is(input, select, textarea, button):focus-visible {
239
+ outline: 2px solid var(--sd-focus-ring);
240
+ outline-offset: 2px;
241
+ }
242
+ .sd-controls-note {
243
+ margin: 12px 16px;
244
+ color: var(--sd-text-muted);
245
+ font-size: 13px;
246
+ }
247
+
248
+ /* src/component-demo.css */
249
+ .frame {
250
+ border: 1px solid var(--sd-border-subtle);
251
+ border-radius: var(--sd-radius);
252
+ background: var(--sd-bg);
253
+ margin: 20px 0;
254
+ }
255
+ .frame > .story-blurb {
256
+ margin: 0;
257
+ padding: 12px 20px 0;
258
+ color: var(--sd-text-muted);
259
+ font-size: 0.92em;
260
+ }
261
+ .frame > header {
262
+ display: flex;
263
+ align-items: center;
264
+ gap: 10px;
265
+ padding: 14px 20px;
266
+ background: var(--sd-surface);
267
+ border-radius: var(--sd-radius) var(--sd-radius) 0 0;
268
+ font-size: 13px;
269
+ color: var(--sd-text);
270
+ }
271
+ .frame .shot {
272
+ padding: 36px 24px;
273
+ display: block;
274
+ overflow-x: auto;
275
+ min-inline-size: 0;
276
+ }
277
+ .frame .shot[data-layout=fullscreen] {
278
+ padding: 0;
279
+ }
280
+ .frame .story-lane[data-layout=centered] {
281
+ display: grid;
282
+ place-items: center;
283
+ min-block-size: 96px;
284
+ }
285
+ .frame .story-lane[data-layout=inline] {
286
+ text-align: center;
287
+ }
288
+ .frame > details.code-toggle {
289
+ border-top: 1px solid var(--sd-border-subtle);
290
+ background: var(--sd-surface);
291
+ border-radius: 0 0 var(--sd-radius) var(--sd-radius);
292
+ }
293
+ .frame > details.code-toggle summary {
294
+ cursor: pointer;
295
+ padding: 8px 20px;
296
+ font-size: 12px;
297
+ color: var(--sd-text-muted);
298
+ min-block-size: 24px;
299
+ display: flex;
300
+ align-items: center;
301
+ }
302
+ .sd-demo-code {
303
+ overflow: hidden;
304
+ border-radius: 0 0 var(--sd-radius) var(--sd-radius);
305
+ }
306
+ .frame .sd-demo-code > *,
307
+ .frame .sd-demo-code > * > *,
308
+ .frame .sd-demo-code pre {
309
+ margin: 0;
310
+ border: 0;
311
+ border-radius: 0;
312
+ box-shadow: none;
313
+ background: transparent;
314
+ }
315
+ .sd-demo-code > p {
316
+ padding: 16px 20px;
317
+ font-size: 13px;
318
+ color: var(--sd-text-muted);
319
+ }
320
+ .sd-demo-code-actions {
321
+ display: flex;
322
+ align-items: center;
323
+ gap: 12px;
324
+ }
325
+
326
+ /* src/search.css */
327
+ .search-dropdown {
328
+ position: absolute;
329
+ top: calc(100% + 6px);
330
+ left: 0;
331
+ right: 0;
332
+ margin: 0;
333
+ padding: 0;
334
+ background: var(--sd-surface);
335
+ border: 1px solid var(--sd-border);
336
+ border-radius: var(--sd-radius);
337
+ box-shadow: 0 18px 40px color-mix(in srgb, var(--sd-bg) 70%, transparent);
338
+ z-index: 20;
339
+ display: flex;
340
+ flex-direction: column;
341
+ overflow: hidden;
342
+ }
343
+ .search-dropdown .search-results {
344
+ position: static;
345
+ margin: 0;
346
+ padding: 8px;
347
+ list-style: none;
348
+ background: transparent;
349
+ border: none;
350
+ border-radius: 0;
351
+ box-shadow: none;
352
+ max-height: 320px;
353
+ overflow-y: auto;
354
+ z-index: auto;
355
+ }
356
+ .search-dropdown .search-results li {
357
+ display: flex;
358
+ align-items: center;
359
+ justify-content: space-between;
360
+ gap: 8px;
361
+ padding: 10px 12px;
362
+ border-radius: 8px;
363
+ cursor: pointer;
364
+ }
365
+ .search-results li[aria-selected=true] {
366
+ background: var(--sd-accent-soft);
367
+ }
368
+ .search-result-main {
369
+ display: inline-flex;
370
+ align-items: baseline;
371
+ gap: 4px;
372
+ min-width: 0;
373
+ overflow: hidden;
374
+ text-overflow: ellipsis;
375
+ white-space: nowrap;
376
+ }
377
+ .search-result-name {
378
+ font-size: 13.5px;
379
+ color: var(--sd-text);
380
+ }
381
+ .search-result-sep {
382
+ color: var(--sd-text-subtle);
383
+ font-size: 12px;
384
+ user-select: none;
385
+ }
386
+ .search-result-story {
387
+ font-size: 13px;
388
+ color: var(--sd-text-muted);
389
+ }
390
+ .search-dropdown .search-results li span {
391
+ margin-left: 0;
392
+ }
393
+ .search-dropdown .search-results li span.search-result-meta {
394
+ margin-left: auto;
395
+ font-size: 12px;
396
+ color: var(--sd-text-muted);
397
+ white-space: nowrap;
398
+ flex-shrink: 0;
399
+ }
400
+ .search mark {
401
+ background: var(--sd-accent-soft);
402
+ color: var(--sd-accent-text);
403
+ border-radius: 2px;
404
+ padding: 0 1px;
405
+ font-weight: 700;
406
+ }
407
+ .search-empty {
408
+ padding: 18px 14px;
409
+ font-size: 13px;
410
+ color: var(--sd-text-muted);
411
+ text-align: center;
412
+ }
413
+ .search-footer {
414
+ display: flex;
415
+ align-items: center;
416
+ justify-content: flex-end;
417
+ gap: 8px;
418
+ padding: 10px 16px;
419
+ border-top: 1px solid var(--sd-border-subtle);
420
+ font-size: 11px;
421
+ color: var(--sd-text-muted);
422
+ background: var(--sd-surface-raised);
423
+ user-select: none;
424
+ }
@@ -0,0 +1,4 @@
1
+ /// <reference path="./virtual.d.ts" />
2
+ export { start } from './start.js';
3
+ export { ComponentDemo, type ComponentDemoProps } from './component-demo.js';
4
+ export type { StorybookDocsConfig, CatalogEntry, ThemeRole } from './config.js';