baseline-foundry 0.1.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 (145) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +588 -0
  3. package/config/experiments/ibm-plex-engine-smoke.json +115 -0
  4. package/config/experiments/ubuntu-engine-smoke.json +115 -0
  5. package/config/foundation-theme.json +117 -0
  6. package/config/tiers/app.json +120 -0
  7. package/config/tiers/documentation.json +120 -0
  8. package/config/tiers/editorial.json +120 -0
  9. package/config/tiers/os.json +120 -0
  10. package/dist/accordion.d.ts +5 -0
  11. package/dist/accordion.js +32 -0
  12. package/dist/application-layout.d.ts +4 -0
  13. package/dist/application-layout.js +181 -0
  14. package/dist/baseline-grid-overlay.d.ts +5 -0
  15. package/dist/baseline-grid-overlay.js +50 -0
  16. package/dist/baseline-grid-theme.d.ts +3 -0
  17. package/dist/baseline-grid-theme.js +3 -0
  18. package/dist/baseline-grid.d.ts +7 -0
  19. package/dist/baseline-grid.js +35 -0
  20. package/dist/build.d.ts +21 -0
  21. package/dist/build.js +440 -0
  22. package/dist/code-snippet.d.ts +6 -0
  23. package/dist/code-snippet.js +95 -0
  24. package/dist/contextual-menu.d.ts +4 -0
  25. package/dist/contextual-menu.js +156 -0
  26. package/dist/css-app-tier.d.ts +1 -0
  27. package/dist/css-app-tier.js +77 -0
  28. package/dist/css-components/article-pagination.d.ts +13 -0
  29. package/dist/css-components/article-pagination.js +151 -0
  30. package/dist/css-components/button-actions.d.ts +7 -0
  31. package/dist/css-components/button-actions.js +165 -0
  32. package/dist/css-components/cards-options.d.ts +6 -0
  33. package/dist/css-components/cards-options.js +180 -0
  34. package/dist/css-components/chip-badge-status.d.ts +10 -0
  35. package/dist/css-components/chip-badge-status.js +162 -0
  36. package/dist/css-components/content-card.d.ts +25 -0
  37. package/dist/css-components/content-card.js +517 -0
  38. package/dist/css-components/control-row.d.ts +2 -0
  39. package/dist/css-components/control-row.js +18 -0
  40. package/dist/css-components/cta-figure-aspect.d.ts +1 -0
  41. package/dist/css-components/cta-figure-aspect.js +123 -0
  42. package/dist/css-components/document-navigation.d.ts +13 -0
  43. package/dist/css-components/document-navigation.js +400 -0
  44. package/dist/css-components/editorial-content.d.ts +6 -0
  45. package/dist/css-components/editorial-content.js +52 -0
  46. package/dist/css-components/icon.d.ts +1 -0
  47. package/dist/css-components/icon.js +75 -0
  48. package/dist/css-components/interactive-feedback.d.ts +2 -0
  49. package/dist/css-components/interactive-feedback.js +230 -0
  50. package/dist/css-components/interactive-tables.d.ts +7 -0
  51. package/dist/css-components/interactive-tables.js +164 -0
  52. package/dist/css-components/linked-logo-site-layout.d.ts +21 -0
  53. package/dist/css-components/linked-logo-site-layout.js +214 -0
  54. package/dist/css-components/list-tree.d.ts +5 -0
  55. package/dist/css-components/list-tree.js +98 -0
  56. package/dist/css-components/list.d.ts +3 -0
  57. package/dist/css-components/list.js +119 -0
  58. package/dist/css-components/logo-media.d.ts +16 -0
  59. package/dist/css-components/logo-media.js +219 -0
  60. package/dist/css-components/navigation-layout.d.ts +5 -0
  61. package/dist/css-components/navigation-layout.js +151 -0
  62. package/dist/css-components/panel.d.ts +6 -0
  63. package/dist/css-components/panel.js +148 -0
  64. package/dist/css-components/search-box-and-filter.d.ts +9 -0
  65. package/dist/css-components/search-box-and-filter.js +267 -0
  66. package/dist/css-components/sites-editorial-ports.d.ts +19 -0
  67. package/dist/css-components/sites-editorial-ports.js +264 -0
  68. package/dist/css-components/sites-foundation.d.ts +17 -0
  69. package/dist/css-components/sites-foundation.js +173 -0
  70. package/dist/css-components/sites-rich-lists.d.ts +18 -0
  71. package/dist/css-components/sites-rich-lists.js +364 -0
  72. package/dist/css-components/static-content-ports.d.ts +14 -0
  73. package/dist/css-components/static-content-ports.js +206 -0
  74. package/dist/css-components/tab-section.d.ts +19 -0
  75. package/dist/css-components/tab-section.js +103 -0
  76. package/dist/css-components/table.d.ts +7 -0
  77. package/dist/css-components/table.js +79 -0
  78. package/dist/css-components/tabs-choice-breadcrumbs.d.ts +9 -0
  79. package/dist/css-components/tabs-choice-breadcrumbs.js +307 -0
  80. package/dist/css-components/tiered-list-equal-height-row.d.ts +1 -0
  81. package/dist/css-components/tiered-list-equal-height-row.js +286 -0
  82. package/dist/css-components.d.ts +2 -0
  83. package/dist/css-components.js +2701 -0
  84. package/dist/css-grid.d.ts +1 -0
  85. package/dist/css-grid.js +179 -0
  86. package/dist/css.d.ts +6 -0
  87. package/dist/css.js +431 -0
  88. package/dist/experiments/ibm-plex-engine-smoke/styles.css +8969 -0
  89. package/dist/experiments/ibm-plex-engine-smoke/surfaces.json +604 -0
  90. package/dist/experiments/ibm-plex-engine-smoke/tokens.json +217 -0
  91. package/dist/in-page-navigation.d.ts +7 -0
  92. package/dist/in-page-navigation.js +136 -0
  93. package/dist/index.d.ts +37 -0
  94. package/dist/index.js +18 -0
  95. package/dist/interactive-feedback.d.ts +14 -0
  96. package/dist/interactive-feedback.js +96 -0
  97. package/dist/interactive-tables.d.ts +28 -0
  98. package/dist/interactive-tables.js +184 -0
  99. package/dist/list-tree.d.ts +4 -0
  100. package/dist/list-tree.js +44 -0
  101. package/dist/panel-drawer.d.ts +4 -0
  102. package/dist/panel-drawer.js +171 -0
  103. package/dist/presets/app-tier/styles.css +9459 -0
  104. package/dist/presets/app-tier/surfaces.json +1225 -0
  105. package/dist/presets/app-tier/tokens.json +221 -0
  106. package/dist/presets/prose/styles.css +9442 -0
  107. package/dist/presets/prose/surfaces.json +1225 -0
  108. package/dist/presets/prose/tokens.json +221 -0
  109. package/dist/presets.d.ts +6 -0
  110. package/dist/presets.js +27 -0
  111. package/dist/range-controls.d.ts +9 -0
  112. package/dist/range-controls.js +73 -0
  113. package/dist/resizable-aside.d.ts +4 -0
  114. package/dist/resizable-aside.js +328 -0
  115. package/dist/side-navigation.d.ts +4 -0
  116. package/dist/side-navigation.js +219 -0
  117. package/dist/styles.css +9442 -0
  118. package/dist/surfaces.json +1225 -0
  119. package/dist/tabs.d.ts +4 -0
  120. package/dist/tabs.js +88 -0
  121. package/dist/tier-registry.d.ts +10 -0
  122. package/dist/tier-registry.js +25 -0
  123. package/dist/tiers/app/styles.css +9459 -0
  124. package/dist/tiers/app/surfaces.json +1225 -0
  125. package/dist/tiers/app/tokens.json +221 -0
  126. package/dist/tiers/documentation/styles.css +9442 -0
  127. package/dist/tiers/documentation/surfaces.json +1225 -0
  128. package/dist/tiers/documentation/tokens.json +221 -0
  129. package/dist/tiers/editorial/styles.css +9442 -0
  130. package/dist/tiers/editorial/surfaces.json +1225 -0
  131. package/dist/tiers/editorial/tokens.json +221 -0
  132. package/dist/tiers/os/styles.css +9442 -0
  133. package/dist/tiers/os/surfaces.json +1225 -0
  134. package/dist/tiers/os/tokens.json +221 -0
  135. package/dist/tokens.json +221 -0
  136. package/dist/tooltip.d.ts +4 -0
  137. package/dist/tooltip.js +70 -0
  138. package/dist/top-navigation.d.ts +4 -0
  139. package/dist/top-navigation.js +354 -0
  140. package/dist/types.d.ts +155 -0
  141. package/dist/types.js +1 -0
  142. package/dist/vanilla-theme-colors.d.ts +5 -0
  143. package/dist/vanilla-theme-colors.js +208 -0
  144. package/docs/publishing.md +66 -0
  145. package/package.json +108 -0
@@ -0,0 +1,221 @@
1
+ {
2
+ "baselineUnit": "0.25rem",
3
+ "fontFiles": [
4
+ {
5
+ "family": "ubuntu-sans",
6
+ "path": "../../../assets/fonts/UbuntuSans[wdth,wght].ttf",
7
+ "cssFamily": "Ubuntu Sans",
8
+ "fontStyle": "normal",
9
+ "fontWeight": "100 800",
10
+ "fontStretch": "75% 100%",
11
+ "fontDisplay": "swap",
12
+ "emitFontFace": false
13
+ }
14
+ ],
15
+ "fontStacks": {
16
+ "ubuntu-sans": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif"
17
+ },
18
+ "roles": {
19
+ "body": {
20
+ "fontSize": "0.75rem",
21
+ "lineHeight": "1rem",
22
+ "fontFamily": "ubuntu-sans",
23
+ "fontWeight": 400,
24
+ "fontStyle": "normal",
25
+ "spaceAfter": "0.75rem",
26
+ "nudgeTop": "0.245rem",
27
+ "identifier": "body",
28
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
29
+ "marginBottom": "0.005rem"
30
+ },
31
+ "h1": {
32
+ "fontSize": "1.5rem",
33
+ "lineHeight": "1.5rem",
34
+ "fontFamily": "ubuntu-sans",
35
+ "fontWeight": 500,
36
+ "fontStyle": "normal",
37
+ "spaceAfter": "0.75rem",
38
+ "nudgeTop": "0.21917rem",
39
+ "identifier": "h1",
40
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
41
+ "marginBottom": "0.03083rem"
42
+ },
43
+ "h2": {
44
+ "fontSize": "1.5rem",
45
+ "lineHeight": "1.5rem",
46
+ "fontFamily": "ubuntu-sans",
47
+ "fontWeight": 200,
48
+ "fontStyle": "normal",
49
+ "spaceAfter": "0.75rem",
50
+ "nudgeTop": "0.21917rem",
51
+ "identifier": "h2",
52
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
53
+ "marginBottom": "0.03083rem"
54
+ },
55
+ "h3": {
56
+ "fontSize": "1rem",
57
+ "lineHeight": "1rem",
58
+ "fontFamily": "ubuntu-sans",
59
+ "fontWeight": 500,
60
+ "fontStyle": "normal",
61
+ "spaceAfter": "0.75rem",
62
+ "nudgeTop": "0.16rem",
63
+ "identifier": "h3",
64
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
65
+ "marginBottom": "0.09rem"
66
+ },
67
+ "h4": {
68
+ "fontSize": "1rem",
69
+ "lineHeight": "1rem",
70
+ "fontFamily": "ubuntu-sans",
71
+ "fontWeight": 300,
72
+ "fontStyle": "normal",
73
+ "spaceAfter": "0.75rem",
74
+ "nudgeTop": "0.16rem",
75
+ "identifier": "h4",
76
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
77
+ "marginBottom": "0.09rem"
78
+ },
79
+ "h5": {
80
+ "fontSize": "0.75rem",
81
+ "lineHeight": "1rem",
82
+ "fontFamily": "ubuntu-sans",
83
+ "fontWeight": 550,
84
+ "fontStyle": "normal",
85
+ "spaceAfter": "0.75rem",
86
+ "nudgeTop": "0.245rem",
87
+ "identifier": "h5",
88
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
89
+ "marginBottom": "0.005rem",
90
+ "fontVariantCaps": "all-small-caps",
91
+ "letterSpacing": "0.05em"
92
+ },
93
+ "h6": {
94
+ "fontSize": "0.75rem",
95
+ "lineHeight": "1rem",
96
+ "fontFamily": "ubuntu-sans",
97
+ "fontWeight": 550,
98
+ "fontStyle": "normal",
99
+ "spaceAfter": "0.75rem",
100
+ "nudgeTop": "0.245rem",
101
+ "identifier": "h6",
102
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
103
+ "marginBottom": "0.005rem"
104
+ }
105
+ },
106
+ "elements": {
107
+ "body": {
108
+ "fontSize": "0.75rem",
109
+ "lineHeight": "1rem",
110
+ "fontFamily": "ubuntu-sans",
111
+ "fontWeight": 400,
112
+ "fontStyle": "normal",
113
+ "spaceAfter": "0.75rem",
114
+ "nudgeTop": "0.245rem",
115
+ "identifier": "body",
116
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
117
+ "marginBottom": "0.005rem"
118
+ },
119
+ "h6": {
120
+ "fontSize": "0.75rem",
121
+ "lineHeight": "1rem",
122
+ "fontFamily": "ubuntu-sans",
123
+ "fontWeight": 550,
124
+ "fontStyle": "normal",
125
+ "spaceAfter": "0.75rem",
126
+ "nudgeTop": "0.245rem",
127
+ "identifier": "h6",
128
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
129
+ "marginBottom": "0.005rem"
130
+ },
131
+ "h5": {
132
+ "fontSize": "0.75rem",
133
+ "lineHeight": "1rem",
134
+ "fontFamily": "ubuntu-sans",
135
+ "fontWeight": 550,
136
+ "fontStyle": "normal",
137
+ "spaceAfter": "0.75rem",
138
+ "nudgeTop": "0.245rem",
139
+ "identifier": "h5",
140
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
141
+ "marginBottom": "0.005rem",
142
+ "fontVariantCaps": "all-small-caps",
143
+ "letterSpacing": "0.05em"
144
+ },
145
+ "h4": {
146
+ "fontSize": "1rem",
147
+ "lineHeight": "1rem",
148
+ "fontFamily": "ubuntu-sans",
149
+ "fontWeight": 300,
150
+ "fontStyle": "normal",
151
+ "spaceAfter": "0.75rem",
152
+ "nudgeTop": "0.16rem",
153
+ "identifier": "h4",
154
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
155
+ "marginBottom": "0.09rem"
156
+ },
157
+ "h3": {
158
+ "fontSize": "1rem",
159
+ "lineHeight": "1rem",
160
+ "fontFamily": "ubuntu-sans",
161
+ "fontWeight": 500,
162
+ "fontStyle": "normal",
163
+ "spaceAfter": "0.75rem",
164
+ "nudgeTop": "0.16rem",
165
+ "identifier": "h3",
166
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
167
+ "marginBottom": "0.09rem"
168
+ },
169
+ "h2": {
170
+ "fontSize": "1.5rem",
171
+ "lineHeight": "1.5rem",
172
+ "fontFamily": "ubuntu-sans",
173
+ "fontWeight": 200,
174
+ "fontStyle": "normal",
175
+ "spaceAfter": "0.75rem",
176
+ "nudgeTop": "0.21917rem",
177
+ "identifier": "h2",
178
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
179
+ "marginBottom": "0.03083rem"
180
+ },
181
+ "h1": {
182
+ "fontSize": "1.5rem",
183
+ "lineHeight": "1.5rem",
184
+ "fontFamily": "ubuntu-sans",
185
+ "fontWeight": 500,
186
+ "fontStyle": "normal",
187
+ "spaceAfter": "0.75rem",
188
+ "nudgeTop": "0.21917rem",
189
+ "identifier": "h1",
190
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
191
+ "marginBottom": "0.03083rem"
192
+ }
193
+ },
194
+ "layout": {
195
+ "contentMaxWidth": "67.5rem",
196
+ "contentPaddingInline": "0.75rem",
197
+ "measure": "30rem",
198
+ "sectionSpace": "3rem",
199
+ "sectionSpaceShallow": "1.5rem",
200
+ "sectionSpaceDeep": "6rem",
201
+ "stripSpace": "3rem",
202
+ "gridGapInline": "1rem",
203
+ "gridGapBlock": "1rem",
204
+ "pageMargin": "1rem"
205
+ },
206
+ "components": {
207
+ "borderWidth": "1px",
208
+ "barThickness": "0.1875rem",
209
+ "radius": "0rem",
210
+ "controlBlockPadding": "0.375rem",
211
+ "controlCompactBlockPadding": "0.25rem",
212
+ "controlInlinePadding": "0.5rem",
213
+ "controlInlinePaddingAction": "0.5rem",
214
+ "controlInlinePaddingField": "0.25rem",
215
+ "controlVisualSize": "0.75rem",
216
+ "fieldGap": "0.25rem",
217
+ "panelPaddingInline": "1rem",
218
+ "panelPaddingBlock": "1rem",
219
+ "accordionIndent": "0.75rem"
220
+ }
221
+ }
@@ -0,0 +1,221 @@
1
+ {
2
+ "baselineUnit": "0.5rem",
3
+ "fontFiles": [
4
+ {
5
+ "family": "ubuntu-sans",
6
+ "path": "../assets/fonts/UbuntuSans[wdth,wght].ttf",
7
+ "cssFamily": "Ubuntu Sans",
8
+ "fontStyle": "normal",
9
+ "fontWeight": "100 800",
10
+ "fontStretch": "75% 100%",
11
+ "fontDisplay": "swap",
12
+ "emitFontFace": false
13
+ }
14
+ ],
15
+ "fontStacks": {
16
+ "ubuntu-sans": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif"
17
+ },
18
+ "roles": {
19
+ "body": {
20
+ "fontSize": "1rem",
21
+ "lineHeight": "1.5rem",
22
+ "fontFamily": "ubuntu-sans",
23
+ "fontWeight": 400,
24
+ "fontStyle": "normal",
25
+ "spaceAfter": "1rem",
26
+ "nudgeTop": "0.41rem",
27
+ "identifier": "body",
28
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
29
+ "marginBottom": "0.09rem"
30
+ },
31
+ "h1": {
32
+ "fontSize": "2.625rem",
33
+ "lineHeight": "3rem",
34
+ "fontFamily": "ubuntu-sans",
35
+ "fontWeight": 500,
36
+ "fontStyle": "normal",
37
+ "spaceAfter": "1rem",
38
+ "nudgeTop": "0.06881rem",
39
+ "identifier": "h1",
40
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
41
+ "marginBottom": "0.43119rem"
42
+ },
43
+ "h2": {
44
+ "fontSize": "2.625rem",
45
+ "lineHeight": "3rem",
46
+ "fontFamily": "ubuntu-sans",
47
+ "fontWeight": 200,
48
+ "fontStyle": "normal",
49
+ "spaceAfter": "1rem",
50
+ "nudgeTop": "0.06881rem",
51
+ "identifier": "h2",
52
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
53
+ "marginBottom": "0.43119rem"
54
+ },
55
+ "h3": {
56
+ "fontSize": "1.5rem",
57
+ "lineHeight": "2rem",
58
+ "fontFamily": "ubuntu-sans",
59
+ "fontWeight": 500,
60
+ "fontStyle": "normal",
61
+ "spaceAfter": "1rem",
62
+ "nudgeTop": "0.46917rem",
63
+ "identifier": "h3",
64
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
65
+ "marginBottom": "0.03083rem"
66
+ },
67
+ "h4": {
68
+ "fontSize": "1.5rem",
69
+ "lineHeight": "2rem",
70
+ "fontFamily": "ubuntu-sans",
71
+ "fontWeight": 300,
72
+ "fontStyle": "normal",
73
+ "spaceAfter": "1rem",
74
+ "nudgeTop": "0.46917rem",
75
+ "identifier": "h4",
76
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
77
+ "marginBottom": "0.03083rem"
78
+ },
79
+ "h5": {
80
+ "fontSize": "1rem",
81
+ "lineHeight": "1.5rem",
82
+ "fontFamily": "ubuntu-sans",
83
+ "fontWeight": 550,
84
+ "fontStyle": "normal",
85
+ "spaceAfter": "1rem",
86
+ "nudgeTop": "0.41rem",
87
+ "identifier": "h5",
88
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
89
+ "marginBottom": "0.09rem",
90
+ "fontVariantCaps": "all-small-caps",
91
+ "letterSpacing": "0.05em"
92
+ },
93
+ "h6": {
94
+ "fontSize": "1rem",
95
+ "lineHeight": "1.5rem",
96
+ "fontFamily": "ubuntu-sans",
97
+ "fontWeight": 550,
98
+ "fontStyle": "normal",
99
+ "spaceAfter": "1rem",
100
+ "nudgeTop": "0.41rem",
101
+ "identifier": "h6",
102
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
103
+ "marginBottom": "0.09rem"
104
+ }
105
+ },
106
+ "elements": {
107
+ "body": {
108
+ "fontSize": "1rem",
109
+ "lineHeight": "1.5rem",
110
+ "fontFamily": "ubuntu-sans",
111
+ "fontWeight": 400,
112
+ "fontStyle": "normal",
113
+ "spaceAfter": "1rem",
114
+ "nudgeTop": "0.41rem",
115
+ "identifier": "body",
116
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
117
+ "marginBottom": "0.09rem"
118
+ },
119
+ "h6": {
120
+ "fontSize": "1rem",
121
+ "lineHeight": "1.5rem",
122
+ "fontFamily": "ubuntu-sans",
123
+ "fontWeight": 550,
124
+ "fontStyle": "normal",
125
+ "spaceAfter": "1rem",
126
+ "nudgeTop": "0.41rem",
127
+ "identifier": "h6",
128
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
129
+ "marginBottom": "0.09rem"
130
+ },
131
+ "h5": {
132
+ "fontSize": "1rem",
133
+ "lineHeight": "1.5rem",
134
+ "fontFamily": "ubuntu-sans",
135
+ "fontWeight": 550,
136
+ "fontStyle": "normal",
137
+ "spaceAfter": "1rem",
138
+ "nudgeTop": "0.41rem",
139
+ "identifier": "h5",
140
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
141
+ "marginBottom": "0.09rem",
142
+ "fontVariantCaps": "all-small-caps",
143
+ "letterSpacing": "0.05em"
144
+ },
145
+ "h4": {
146
+ "fontSize": "1.5rem",
147
+ "lineHeight": "2rem",
148
+ "fontFamily": "ubuntu-sans",
149
+ "fontWeight": 300,
150
+ "fontStyle": "normal",
151
+ "spaceAfter": "1rem",
152
+ "nudgeTop": "0.46917rem",
153
+ "identifier": "h4",
154
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
155
+ "marginBottom": "0.03083rem"
156
+ },
157
+ "h3": {
158
+ "fontSize": "1.5rem",
159
+ "lineHeight": "2rem",
160
+ "fontFamily": "ubuntu-sans",
161
+ "fontWeight": 500,
162
+ "fontStyle": "normal",
163
+ "spaceAfter": "1rem",
164
+ "nudgeTop": "0.46917rem",
165
+ "identifier": "h3",
166
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
167
+ "marginBottom": "0.03083rem"
168
+ },
169
+ "h2": {
170
+ "fontSize": "2.625rem",
171
+ "lineHeight": "3rem",
172
+ "fontFamily": "ubuntu-sans",
173
+ "fontWeight": 200,
174
+ "fontStyle": "normal",
175
+ "spaceAfter": "1rem",
176
+ "nudgeTop": "0.06881rem",
177
+ "identifier": "h2",
178
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
179
+ "marginBottom": "0.43119rem"
180
+ },
181
+ "h1": {
182
+ "fontSize": "2.625rem",
183
+ "lineHeight": "3rem",
184
+ "fontFamily": "ubuntu-sans",
185
+ "fontWeight": 500,
186
+ "fontStyle": "normal",
187
+ "spaceAfter": "1rem",
188
+ "nudgeTop": "0.06881rem",
189
+ "identifier": "h1",
190
+ "fontStack": "\"Ubuntu Sans\", \"Segoe UI\", system-ui, sans-serif",
191
+ "marginBottom": "0.43119rem"
192
+ }
193
+ },
194
+ "layout": {
195
+ "contentMaxWidth": "90rem",
196
+ "contentPaddingInline": "1rem",
197
+ "measure": "40rem",
198
+ "sectionSpace": "4rem",
199
+ "sectionSpaceShallow": "1.5rem",
200
+ "sectionSpaceDeep": "8rem",
201
+ "stripSpace": "4rem",
202
+ "gridGapInline": "1rem",
203
+ "gridGapBlock": "1rem",
204
+ "pageMargin": "1rem"
205
+ },
206
+ "components": {
207
+ "borderWidth": "1px",
208
+ "barThickness": "0.1875rem",
209
+ "radius": "0rem",
210
+ "controlBlockPadding": "0.5rem",
211
+ "controlCompactBlockPadding": "0.25rem",
212
+ "controlInlinePadding": "1rem",
213
+ "controlInlinePaddingAction": "1rem",
214
+ "controlInlinePaddingField": "0.5rem",
215
+ "controlVisualSize": "1rem",
216
+ "fieldGap": "0.5rem",
217
+ "panelPaddingInline": "1rem",
218
+ "panelPaddingBlock": "1rem",
219
+ "accordionIndent": "1.5rem"
220
+ }
221
+ }
@@ -0,0 +1,4 @@
1
+ export interface TooltipInitOptions {
2
+ root?: ParentNode;
3
+ }
4
+ export declare function initTooltips(options?: TooltipInitOptions): () => void;
@@ -0,0 +1,70 @@
1
+ const TOOLTIP_SELECTOR = ".bf-tooltip";
2
+ const MESSAGE_SELECTOR = ".bf-tooltip-message";
3
+ export function initTooltips(options = {}) {
4
+ const root = options.root ?? document;
5
+ const isWithinTooltip = (tooltip, relatedTarget) => {
6
+ return relatedTarget instanceof Node && tooltip.contains(relatedTarget);
7
+ };
8
+ const show = (tooltip) => {
9
+ const message = tooltip.querySelector(MESSAGE_SELECTOR);
10
+ if (message) {
11
+ message.setAttribute("aria-hidden", "false");
12
+ }
13
+ };
14
+ const hide = (tooltip) => {
15
+ const message = tooltip.querySelector(MESSAGE_SELECTOR);
16
+ if (message) {
17
+ message.setAttribute("aria-hidden", "true");
18
+ }
19
+ };
20
+ const onFocusIn = (event) => {
21
+ const target = event.target;
22
+ if (!(target instanceof Element)) {
23
+ return;
24
+ }
25
+ const tooltip = target.closest(TOOLTIP_SELECTOR);
26
+ if (tooltip) {
27
+ show(tooltip);
28
+ }
29
+ };
30
+ const onFocusOut = (event) => {
31
+ const target = event.target;
32
+ if (!(target instanceof Element)) {
33
+ return;
34
+ }
35
+ const tooltip = target.closest(TOOLTIP_SELECTOR);
36
+ if (tooltip && !isWithinTooltip(tooltip, event.relatedTarget)) {
37
+ hide(tooltip);
38
+ }
39
+ };
40
+ const onMouseOver = (event) => {
41
+ const target = event.target;
42
+ if (!(target instanceof Element)) {
43
+ return;
44
+ }
45
+ const tooltip = target.closest(TOOLTIP_SELECTOR);
46
+ if (tooltip) {
47
+ show(tooltip);
48
+ }
49
+ };
50
+ const onMouseOut = (event) => {
51
+ const target = event.target;
52
+ if (!(target instanceof Element)) {
53
+ return;
54
+ }
55
+ const tooltip = target.closest(TOOLTIP_SELECTOR);
56
+ if (tooltip && !isWithinTooltip(tooltip, event.relatedTarget)) {
57
+ hide(tooltip);
58
+ }
59
+ };
60
+ root.addEventListener("focusin", onFocusIn);
61
+ root.addEventListener("focusout", onFocusOut);
62
+ root.addEventListener("mouseover", onMouseOver);
63
+ root.addEventListener("mouseout", onMouseOut);
64
+ return () => {
65
+ root.removeEventListener("focusin", onFocusIn);
66
+ root.removeEventListener("focusout", onFocusOut);
67
+ root.removeEventListener("mouseover", onMouseOver);
68
+ root.removeEventListener("mouseout", onMouseOut);
69
+ };
70
+ }
@@ -0,0 +1,4 @@
1
+ export interface TopNavigationInitOptions {
2
+ root?: ParentNode;
3
+ }
4
+ export declare function initTopNavigations(options?: TopNavigationInitOptions): () => void;