baseline-foundry 0.1.3 → 0.1.5

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 (84) hide show
  1. package/README.md +577 -553
  2. package/config/experiments/ibm-plex-engine-smoke.json +115 -115
  3. package/config/experiments/ubuntu-engine-smoke.json +115 -115
  4. package/config/foundation-theme.json +110 -110
  5. package/config/tiers/app.json +116 -116
  6. package/config/tiers/documentation.json +116 -116
  7. package/config/tiers/editorial.json +116 -116
  8. package/config/tiers/os.json +116 -116
  9. package/dist/baseline-grid-overlay.js +43 -43
  10. package/dist/build.js +4 -4
  11. package/dist/code-snippet.js +1 -1
  12. package/dist/css-app-tier.js +78 -73
  13. package/dist/css-components/article-pagination.js +141 -140
  14. package/dist/css-components/button-actions.js +181 -161
  15. package/dist/css-components/cards-options.js +176 -176
  16. package/dist/css-components/chip-badge-status.d.ts +0 -3
  17. package/dist/css-components/chip-badge-status.js +174 -159
  18. package/dist/css-components/content-card.d.ts +7 -7
  19. package/dist/css-components/content-card.js +498 -497
  20. package/dist/css-components/control-row.d.ts +1 -1
  21. package/dist/css-components/control-row.js +15 -15
  22. package/dist/css-components/cta-figure-aspect.js +120 -120
  23. package/dist/css-components/document-navigation.js +427 -390
  24. package/dist/css-components/editorial-content.js +42 -42
  25. package/dist/css-components/icon.js +72 -72
  26. package/dist/css-components/interactive-feedback.js +239 -217
  27. package/dist/css-components/interactive-tables.js +160 -155
  28. package/dist/css-components/legacy-navigation.d.ts +8 -0
  29. package/dist/css-components/legacy-navigation.js +816 -0
  30. package/dist/css-components/linked-logo-site-layout.d.ts +3 -3
  31. package/dist/css-components/linked-logo-site-layout.js +177 -180
  32. package/dist/css-components/list-tree.js +96 -94
  33. package/dist/css-components/list.js +9 -7
  34. package/dist/css-components/logo-media.d.ts +6 -6
  35. package/dist/css-components/logo-media.js +218 -207
  36. package/dist/css-components/navigation-layout.js +144 -144
  37. package/dist/css-components/panel.js +148 -144
  38. package/dist/css-components/search-box-and-filter.d.ts +0 -1
  39. package/dist/css-components/search-box-and-filter.js +263 -264
  40. package/dist/css-components/sites-editorial-ports.d.ts +3 -4
  41. package/dist/css-components/sites-editorial-ports.js +279 -247
  42. package/dist/css-components/sites-foundation.js +142 -146
  43. package/dist/css-components/sites-rich-lists.d.ts +5 -5
  44. package/dist/css-components/sites-rich-lists.js +339 -349
  45. package/dist/css-components/static-content-ports.d.ts +3 -3
  46. package/dist/css-components/static-content-ports.js +200 -186
  47. package/dist/css-components/tab-section.d.ts +3 -3
  48. package/dist/css-components/tab-section.js +93 -85
  49. package/dist/css-components/table.js +76 -75
  50. package/dist/css-components/tabs-choice-breadcrumbs.js +307 -303
  51. package/dist/css-components/tiered-list-equal-height-row.js +271 -271
  52. package/dist/css-components.js +1881 -2554
  53. package/dist/css-grid.d.ts +1 -1
  54. package/dist/css-grid.js +183 -173
  55. package/dist/css.js +317 -241
  56. package/dist/experiments/ibm-plex-engine-smoke/styles.css +894 -538
  57. package/dist/experiments/ibm-plex-engine-smoke/surfaces.json +2 -2
  58. package/dist/experiments/ibm-plex-engine-smoke/tokens.json +1 -1
  59. package/dist/in-page-navigation.js +1 -1
  60. package/dist/presets/app-tier/styles.css +928 -568
  61. package/dist/presets/app-tier/surfaces.json +17 -17
  62. package/dist/presets/app-tier/tokens.json +7 -7
  63. package/dist/presets/prose/styles.css +919 -562
  64. package/dist/presets/prose/surfaces.json +17 -17
  65. package/dist/presets/prose/tokens.json +1 -1
  66. package/dist/resizable-aside.js +12 -4
  67. package/dist/styles.css +919 -562
  68. package/dist/surfaces.json +17 -17
  69. package/dist/tiers/app/styles.css +928 -568
  70. package/dist/tiers/app/surfaces.json +17 -17
  71. package/dist/tiers/app/tokens.json +7 -7
  72. package/dist/tiers/documentation/styles.css +920 -563
  73. package/dist/tiers/documentation/surfaces.json +17 -17
  74. package/dist/tiers/documentation/tokens.json +2 -2
  75. package/dist/tiers/editorial/styles.css +919 -562
  76. package/dist/tiers/editorial/surfaces.json +17 -17
  77. package/dist/tiers/editorial/tokens.json +1 -1
  78. package/dist/tiers/os/styles.css +925 -568
  79. package/dist/tiers/os/surfaces.json +17 -17
  80. package/dist/tiers/os/tokens.json +7 -7
  81. package/dist/tokens.json +1 -1
  82. package/dist/types.d.ts +1 -1
  83. package/docs/publishing.md +31 -14
  84. package/package.json +119 -108
@@ -1,2 +1,2 @@
1
- /** A wrapping form composition whose children retain their owned spacing. */
1
+ /** A wrapping form composition whose children retain their metric geometry. */
2
2
  export declare function controlRowCss(): string;
@@ -1,18 +1,18 @@
1
- /** A wrapping form composition whose children retain their owned spacing. */
1
+ /** A wrapping form composition whose children retain their metric geometry. */
2
2
  export function controlRowCss() {
3
- return `:where(.bf-theme) :where(.bf-control-row) {
4
- align-items: end;
5
- display: flex;
6
- flex-wrap: wrap;
7
- gap: var(--bf-field-gap);
8
- margin: 0;
9
- min-inline-size: 0;
10
- }
11
-
12
- :where(.bf-theme) :where(.bf-control-row) > :where(.bf-field, .bf-control) {
13
- align-self: end;
14
- flex: 1 1 min(100%, 16rem);
15
- min-inline-size: 0;
16
- }
3
+ return `:where(.bf-theme) :where(.bf-control-row) {
4
+ align-items: end;
5
+ display: flex;
6
+ flex-wrap: wrap;
7
+ gap: var(--bf-field-gap);
8
+ margin: 0;
9
+ min-inline-size: 0;
10
+ }
11
+
12
+ :where(.bf-theme) :where(.bf-control-row) > :where(.bf-field, .bf-control) {
13
+ align-self: end;
14
+ flex: 1 1 min(100%, 16rem);
15
+ min-inline-size: 0;
16
+ }
17
17
  `;
18
18
  }
@@ -1,123 +1,123 @@
1
1
  export function ctaFigureAspectCss() {
2
- return `/* ------------------------------------------------------------------ */
3
- /* CTA block (Vanilla parity). */
4
- /* Inline-row of call-to-action items (typically a heading and one or */
5
- /* more buttons or links). Container-owned spacing: borderless by */
6
- /* default, .is-bordered adds a top divider rule and small padding. */
7
- /* (Vanilla ships the same modifier as has-border; renamed for the BF */
8
- /* is-* convention.) */
9
- /* ------------------------------------------------------------------ */
10
- /* ------------------------------------------------------------------ */
11
-
12
- :where(.bf-theme) :where(.bf-cta-block) {
13
- align-items: baseline;
14
- column-gap: var(--bf-space-2);
15
- display: flex;
16
- flex-wrap: wrap;
17
- margin-block-end: 0;
18
- row-gap: var(--bf-space-1);
19
- }
20
-
21
- :where(.bf-theme) :where(.bf-cta-block.is-bordered) {
22
- border-block-start: var(--bf-border-width) solid var(--bf-color-border-low-contrast);
23
- padding-block-start: calc(var(--bf-space-1) - var(--bf-border-width));
24
- }
25
-
26
- /* ------------------------------------------------------------------ */
27
- /* Figure (Vanilla parity). */
28
- /* Native <figure> wrapper for an image, video, or other media plus */
29
- /* an italic caption. The owning stack sets external spacing; the */
30
- /* caption owns its own top space so the */
31
- /* image sits flush against the next baseline above its caption. */
32
- /* ------------------------------------------------------------------ */
33
-
34
- :where(.bf-theme) :where(.bf-figure) {
35
- display: block;
36
- inline-size: 100%;
37
- margin: 0;
38
- }
39
-
40
- :where(.bf-theme) :where(.bf-figure) > :where(img, picture, video, canvas, svg) {
41
- block-size: auto;
42
- display: block;
43
- inline-size: 100%;
44
- max-inline-size: 100%;
45
- }
46
-
47
- /* Keep light artwork legible when the surrounding theme is dark. */
48
- :where(.bf-theme) :where(.bf-figure.is-light-inset) > :where(img, picture, video, canvas, svg, .bf-aspect) {
49
- background: #fff;
50
- box-sizing: border-box;
51
- padding: var(--bf-space-2);
52
- }
53
-
54
- :where(.bf-theme) :where(.bf-figure-caption) {
55
- color: var(--bf-color-text-default);
56
- display: block;
57
- font-style: italic;
58
- inline-size: 100%;
59
- margin-block: var(--bf-space-1) 0;
60
- }
61
-
62
- /* ------------------------------------------------------------------ */
63
- /* Aspect — generic aspect-ratio slot. */
64
- /* Reserves a fixed-ratio box so embedded media (img/picture/video/ */
65
- /* canvas/iframe) load without layout shift. Composes inside bf-figure */
66
- /* when a constrained captioned image is needed. */
67
- /* ------------------------------------------------------------------ */
68
-
69
- :where(.bf-theme) :where(.bf-aspect) {
70
- aspect-ratio: 16 / 9;
71
- display: block;
72
- inline-size: 100%;
73
- overflow: hidden;
74
- position: relative;
75
- }
76
-
77
- :where(.bf-theme) :where(.bf-aspect.is-16-9) {
78
- aspect-ratio: 16 / 9;
79
- }
80
-
81
- :where(.bf-theme) :where(.bf-aspect.is-3-2) {
82
- aspect-ratio: 3 / 2;
83
- }
84
-
85
- :where(.bf-theme) :where(.bf-aspect.is-4-3) {
86
- aspect-ratio: 4 / 3;
87
- }
88
-
89
- :where(.bf-theme) :where(.bf-aspect.is-2-3) {
90
- aspect-ratio: 2 / 3;
91
- }
92
-
93
- :where(.bf-theme) :where(.bf-aspect.is-cinematic) {
94
- aspect-ratio: 12 / 5;
95
- }
96
-
97
- :where(.bf-theme) :where(.bf-aspect.is-square) {
98
- aspect-ratio: 1 / 1;
99
- }
100
-
101
- :where(.bf-theme) :where(.bf-aspect) > :where(img, picture, video, canvas, iframe) {
102
- block-size: 100%;
103
- display: block;
104
- inline-size: 100%;
105
- object-fit: cover;
106
- }
107
-
108
- :where(.bf-theme) :where(.bf-aspect) > :where(picture) > :where(img) {
109
- block-size: 100%;
110
- display: block;
111
- inline-size: 100%;
112
- object-fit: cover;
113
- }
114
-
115
- :where(.bf-theme) :where(.bf-aspect.is-contain) > :where(img, video, canvas, iframe) {
116
- object-fit: contain;
117
- }
118
-
119
- :where(.bf-theme) :where(.bf-aspect.is-contain) > :where(picture) > :where(img) {
120
- object-fit: contain;
121
- }
2
+ return `/* ------------------------------------------------------------------ */
3
+ /* CTA block (Vanilla parity). */
4
+ /* Inline-row of call-to-action items (typically a heading and one or */
5
+ /* more buttons or links). Container-owned spacing: borderless by */
6
+ /* default, .is-bordered adds a top divider rule and small padding. */
7
+ /* (Vanilla ships the same modifier as has-border; renamed for the BF */
8
+ /* is-* convention.) */
9
+ /* ------------------------------------------------------------------ */
10
+ /* ------------------------------------------------------------------ */
11
+
12
+ :where(.bf-theme) :where(.bf-cta-block) {
13
+ align-items: baseline;
14
+ column-gap: var(--bf-space-2);
15
+ display: flex;
16
+ flex-wrap: wrap;
17
+ margin-block-end: 0;
18
+ row-gap: var(--bf-space-1);
19
+ }
20
+
21
+ :where(.bf-theme) :where(.bf-cta-block.is-bordered) {
22
+ border-block-start: var(--bf-border-width) solid var(--bf-color-border-low-contrast);
23
+ padding-block-start: calc(var(--bf-space-1) - var(--bf-border-width));
24
+ }
25
+
26
+ /* ------------------------------------------------------------------ */
27
+ /* Figure (Vanilla parity). */
28
+ /* Native <figure> wrapper for an image, video, or other media plus */
29
+ /* an italic caption. The owning stack sets external spacing; the */
30
+ /* caption owns its own top space so the */
31
+ /* image sits flush against the next baseline above its caption. */
32
+ /* ------------------------------------------------------------------ */
33
+
34
+ :where(.bf-theme) :where(.bf-figure) {
35
+ display: block;
36
+ inline-size: 100%;
37
+ margin: 0;
38
+ }
39
+
40
+ :where(.bf-theme) :where(.bf-figure) > :where(img, picture, video, canvas, svg) {
41
+ block-size: auto;
42
+ display: block;
43
+ inline-size: 100%;
44
+ max-inline-size: 100%;
45
+ }
46
+
47
+ /* Keep light artwork legible when the surrounding theme is dark. */
48
+ :where(.bf-theme) :where(.bf-figure.is-light-inset) > :where(img, picture, video, canvas, svg, .bf-aspect) {
49
+ background: #fff;
50
+ box-sizing: border-box;
51
+ padding: var(--bf-space-2);
52
+ }
53
+
54
+ :where(.bf-theme) :where(.bf-figure-caption) {
55
+ color: var(--bf-color-text-default);
56
+ display: block;
57
+ font-style: italic;
58
+ inline-size: 100%;
59
+ margin-block: var(--bf-space-1) 0;
60
+ }
61
+
62
+ /* ------------------------------------------------------------------ */
63
+ /* Aspect — generic aspect-ratio slot. */
64
+ /* Reserves a fixed-ratio box so embedded media (img/picture/video/ */
65
+ /* canvas/iframe) load without layout shift. Composes inside bf-figure */
66
+ /* when a constrained captioned image is needed. */
67
+ /* ------------------------------------------------------------------ */
68
+
69
+ :where(.bf-theme) :where(.bf-aspect) {
70
+ aspect-ratio: 16 / 9;
71
+ display: block;
72
+ inline-size: 100%;
73
+ overflow: hidden;
74
+ position: relative;
75
+ }
76
+
77
+ :where(.bf-theme) :where(.bf-aspect.is-16-9) {
78
+ aspect-ratio: 16 / 9;
79
+ }
80
+
81
+ :where(.bf-theme) :where(.bf-aspect.is-3-2) {
82
+ aspect-ratio: 3 / 2;
83
+ }
84
+
85
+ :where(.bf-theme) :where(.bf-aspect.is-4-3) {
86
+ aspect-ratio: 4 / 3;
87
+ }
88
+
89
+ :where(.bf-theme) :where(.bf-aspect.is-2-3) {
90
+ aspect-ratio: 2 / 3;
91
+ }
92
+
93
+ :where(.bf-theme) :where(.bf-aspect.is-cinematic) {
94
+ aspect-ratio: 12 / 5;
95
+ }
96
+
97
+ :where(.bf-theme) :where(.bf-aspect.is-square) {
98
+ aspect-ratio: 1 / 1;
99
+ }
100
+
101
+ :where(.bf-theme) :where(.bf-aspect) > :where(img, picture, video, canvas, iframe) {
102
+ block-size: 100%;
103
+ display: block;
104
+ inline-size: 100%;
105
+ object-fit: cover;
106
+ }
107
+
108
+ :where(.bf-theme) :where(.bf-aspect) > :where(picture) > :where(img) {
109
+ block-size: 100%;
110
+ display: block;
111
+ inline-size: 100%;
112
+ object-fit: cover;
113
+ }
114
+
115
+ :where(.bf-theme) :where(.bf-aspect.is-contain) > :where(img, video, canvas, iframe) {
116
+ object-fit: contain;
117
+ }
118
+
119
+ :where(.bf-theme) :where(.bf-aspect.is-contain) > :where(picture) > :where(img) {
120
+ object-fit: contain;
121
+ }
122
122
  `;
123
123
  }