@dnanpm/ui-components 0.6.0 → 0.7.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.
- package/dist/components/AccordionItem/AccordionItem.css +16 -16
- package/dist/components/AccordionItem/AccordionItem.module.css.cjs +11 -11
- package/dist/components/AccordionItem/AccordionItem.module.css.js +11 -11
- package/dist/components/Footer/Footer.cjs +272 -0
- package/dist/components/Footer/Footer.cjs.map +1 -0
- package/dist/components/Footer/Footer.css +466 -0
- package/dist/components/Footer/Footer.d.ts +3 -0
- package/dist/components/Footer/Footer.d.ts.map +1 -0
- package/dist/components/Footer/Footer.js +272 -0
- package/dist/components/Footer/Footer.js.map +1 -0
- package/dist/components/Footer/Footer.module.css.cjs +80 -0
- package/dist/components/Footer/Footer.module.css.cjs.map +1 -0
- package/dist/components/Footer/Footer.module.css.js +80 -0
- package/dist/components/Footer/Footer.module.css.js.map +1 -0
- package/dist/components/Footer/Footer.types.d.ts +128 -0
- package/dist/components/Footer/Footer.types.d.ts.map +1 -0
- package/dist/components/Footer/Footer.utils.cjs +41 -0
- package/dist/components/Footer/Footer.utils.cjs.map +1 -0
- package/dist/components/Footer/Footer.utils.d.ts +13 -0
- package/dist/components/Footer/Footer.utils.d.ts.map +1 -0
- package/dist/components/Footer/Footer.utils.js +41 -0
- package/dist/components/Footer/Footer.utils.js.map +1 -0
- package/dist/components/Footer/assets/app-store-badge.svg.cjs +4 -0
- package/dist/components/Footer/assets/app-store-badge.svg.cjs.map +1 -0
- package/dist/components/Footer/assets/app-store-badge.svg.js +5 -0
- package/dist/components/Footer/assets/app-store-badge.svg.js.map +1 -0
- package/dist/components/Footer/assets/google-play-badge.svg.cjs +4 -0
- package/dist/components/Footer/assets/google-play-badge.svg.cjs.map +1 -0
- package/dist/components/Footer/assets/google-play-badge.svg.js +5 -0
- package/dist/components/Footer/assets/google-play-badge.svg.js.map +1 -0
- package/dist/components/Footer/index.d.ts +3 -0
- package/dist/components/Footer/index.d.ts.map +1 -0
- package/dist/components/Hero/Hero.cjs +44 -30
- package/dist/components/Hero/Hero.cjs.map +1 -1
- package/dist/components/Hero/Hero.css +89 -100
- package/dist/components/Hero/Hero.d.ts +1 -1
- package/dist/components/Hero/Hero.d.ts.map +1 -1
- package/dist/components/Hero/Hero.js +45 -31
- package/dist/components/Hero/Hero.js.map +1 -1
- package/dist/components/Hero/Hero.module.css.cjs +17 -20
- package/dist/components/Hero/Hero.module.css.cjs.map +1 -1
- package/dist/components/Hero/Hero.module.css.js +17 -20
- package/dist/components/Hero/Hero.module.css.js.map +1 -1
- package/dist/components/Hero/Hero.types.d.ts +8 -3
- package/dist/components/Hero/Hero.types.d.ts.map +1 -1
- package/dist/components/Hero/Hero.utils.cjs +5 -8
- package/dist/components/Hero/Hero.utils.cjs.map +1 -1
- package/dist/components/Hero/Hero.utils.d.ts +2 -2
- package/dist/components/Hero/Hero.utils.d.ts.map +1 -1
- package/dist/components/Hero/Hero.utils.js +5 -8
- package/dist/components/Hero/Hero.utils.js.map +1 -1
- package/dist/components/MainNavigation/MainNavigation.cjs +1110 -0
- package/dist/components/MainNavigation/MainNavigation.cjs.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.css +946 -0
- package/dist/components/MainNavigation/MainNavigation.d.ts +3 -0
- package/dist/components/MainNavigation/MainNavigation.d.ts.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.js +1110 -0
- package/dist/components/MainNavigation/MainNavigation.js.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.module.css.cjs +74 -0
- package/dist/components/MainNavigation/MainNavigation.module.css.cjs.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.module.css.js +75 -0
- package/dist/components/MainNavigation/MainNavigation.module.css.js.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.types.d.ts +149 -0
- package/dist/components/MainNavigation/MainNavigation.types.d.ts.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.utils.cjs +168 -0
- package/dist/components/MainNavigation/MainNavigation.utils.cjs.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.utils.d.ts +29 -0
- package/dist/components/MainNavigation/MainNavigation.utils.d.ts.map +1 -0
- package/dist/components/MainNavigation/MainNavigation.utils.js +168 -0
- package/dist/components/MainNavigation/MainNavigation.utils.js.map +1 -0
- package/dist/components/MainNavigation/index.d.ts +3 -0
- package/dist/components/MainNavigation/index.d.ts.map +1 -0
- package/dist/components/Pictograph/Pictograph.css +69 -57
- package/dist/components/Pictograph/Pictograph.module.css.cjs +11 -11
- package/dist/components/Pictograph/Pictograph.module.css.js +11 -11
- package/dist/components/Pictograph/Pictograph.types.d.ts +2 -2
- package/dist/components/Pictograph/PictographItem.cjs +15 -4
- package/dist/components/Pictograph/PictographItem.cjs.map +1 -1
- package/dist/components/Pictograph/PictographItem.css +26 -23
- package/dist/components/Pictograph/PictographItem.d.ts.map +1 -1
- package/dist/components/Pictograph/PictographItem.js +15 -4
- package/dist/components/Pictograph/PictographItem.js.map +1 -1
- package/dist/components/Pictograph/PictographItem.module.css.cjs +3 -3
- package/dist/components/Pictograph/PictographItem.module.css.js +3 -3
- package/dist/components/Quote/Quote.cjs +32 -0
- package/dist/components/Quote/Quote.cjs.map +1 -0
- package/dist/components/Quote/Quote.css +95 -0
- package/dist/components/Quote/Quote.d.ts +3 -0
- package/dist/components/Quote/Quote.d.ts.map +1 -0
- package/dist/components/Quote/Quote.js +32 -0
- package/dist/components/Quote/Quote.js.map +1 -0
- package/dist/components/Quote/Quote.module.css.cjs +22 -0
- package/dist/components/Quote/Quote.module.css.cjs.map +1 -0
- package/dist/components/Quote/Quote.module.css.js +22 -0
- package/dist/components/Quote/Quote.module.css.js.map +1 -0
- package/dist/components/Quote/Quote.types.d.ts +12 -0
- package/dist/components/Quote/Quote.types.d.ts.map +1 -0
- package/dist/components/Quote/index.d.ts +3 -0
- package/dist/components/Quote/index.d.ts.map +1 -0
- package/dist/index.cjs +6 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/styles/utils/focus.css +22 -13
- package/dist/styles/utils/focus.module.css.cjs +6 -3
- package/dist/styles/utils/focus.module.css.cjs.map +1 -1
- package/dist/styles/utils/focus.module.css.js +7 -4
- package/dist/styles/utils/focus.module.css.js.map +1 -1
- package/dist/styles/utils/overlay.css +37 -0
- package/dist/styles/utils/overlay.module.css.cjs +13 -0
- package/dist/styles/utils/overlay.module.css.cjs.map +1 -0
- package/dist/styles/utils/overlay.module.css.js +13 -0
- package/dist/styles/utils/overlay.module.css.js.map +1 -0
- package/dist/styles/utils/text-decoration.css +8 -1
- package/dist/styles/utils/text-decoration.module.css.cjs +5 -2
- package/dist/styles/utils/text-decoration.module.css.cjs.map +1 -1
- package/dist/styles/utils/text-decoration.module.css.js +6 -3
- package/dist/styles/utils/text-decoration.module.css.js.map +1 -1
- package/dist/styles.css +24 -7
- package/package.json +2 -1
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
@layer dds-components {/**
|
|
2
|
+
* The root carries data-color-scheme="dark" because the light-scheme focus
|
|
3
|
+
* ring puts focus-strong on the outer edge, which only reaches 2.42:1 against
|
|
4
|
+
* the plum surface and fails SC 1.4.11. The dark scope swaps the ring order
|
|
5
|
+
* so focus-soft sits outside at 10.49:1.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
._footer_1kfrt_8 {
|
|
9
|
+
container-name: footer;
|
|
10
|
+
container-type: inline-size;
|
|
11
|
+
color: var(--color-semantic-foreground-inverse);
|
|
12
|
+
background: var(--color-semantic-surface-secondary-strong);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* Zero specificity so modifier classes can still set their own colour. */
|
|
16
|
+
:where(._footer_1kfrt_8 a) {
|
|
17
|
+
color: inherit;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/* Resets the base list styles from styles/typography.css (li carries margin). */
|
|
21
|
+
._footer_1kfrt_8 ul {
|
|
22
|
+
margin: 0;
|
|
23
|
+
padding: 0;
|
|
24
|
+
list-style: none;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
._footer_1kfrt_8 li {
|
|
28
|
+
margin: 0;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
._footer__inner_1kfrt_31 {
|
|
32
|
+
max-width: 1280px;
|
|
33
|
+
margin-inline: auto;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
._footer__top_1kfrt_36,
|
|
37
|
+
._footer__bottom_1kfrt_37 {
|
|
38
|
+
padding: var(--spacing-space-32) var(--spacing-space-16);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@container footer (min-width: 768px) {
|
|
42
|
+
._footer__top_1kfrt_36,
|
|
43
|
+
._footer__bottom_1kfrt_37 {
|
|
44
|
+
padding: var(--spacing-space-40) var(--spacing-space-32);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@container footer (min-width: 1024px) {
|
|
49
|
+
._footer__top_1kfrt_36,
|
|
50
|
+
._footer__bottom_1kfrt_37 {
|
|
51
|
+
padding: var(--spacing-space-40) var(--spacing-space-40);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/* === Top section === */
|
|
56
|
+
|
|
57
|
+
._footer__top_1kfrt_36 {
|
|
58
|
+
background: var(--color-semantic-surface-secondary-mid);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
._footer__top-row_1kfrt_61 {
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-direction: column;
|
|
64
|
+
gap: var(--spacing-space-32);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@container footer (min-width: 768px) {
|
|
68
|
+
._footer__top-row_1kfrt_61 {
|
|
69
|
+
flex-direction: row;
|
|
70
|
+
align-items: flex-start;
|
|
71
|
+
justify-content: space-between;
|
|
72
|
+
gap: var(--spacing-space-32);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
._footer__top-column_1kfrt_76 {
|
|
77
|
+
display: flex;
|
|
78
|
+
flex: 1 0 0;
|
|
79
|
+
flex-direction: column;
|
|
80
|
+
gap: var(--spacing-space-16);
|
|
81
|
+
min-width: 0;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
._footer__top-heading_1kfrt_84 {
|
|
85
|
+
display: flex;
|
|
86
|
+
flex-direction: column;
|
|
87
|
+
gap: var(--spacing-space-20);
|
|
88
|
+
align-items: flex-start;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
._footer__top-icon_1kfrt_91 {
|
|
92
|
+
width: 48px;
|
|
93
|
+
height: 48px;
|
|
94
|
+
fill: currentColor;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
._footer__top-title_1kfrt_97 {
|
|
98
|
+
margin: 0;
|
|
99
|
+
font: var(--typography-heading-xs);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
._footer__top-links_1kfrt_102 {
|
|
103
|
+
display: flex;
|
|
104
|
+
flex-direction: column;
|
|
105
|
+
gap: var(--spacing-space-8);
|
|
106
|
+
align-items: flex-start;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/* Removes the line box around the inline-flex child so the gap is exactly space/8. */
|
|
110
|
+
._footer__top-links_1kfrt_102 li,
|
|
111
|
+
._footer__link-list_1kfrt_111 li {
|
|
112
|
+
display: flex;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/* IconButton owns its own label typography and underline behaviour. */
|
|
116
|
+
._footer__top-link_1kfrt_102 {
|
|
117
|
+
max-width: 100%;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/* === Bottom section === */
|
|
121
|
+
|
|
122
|
+
._footer__container_1kfrt_122 {
|
|
123
|
+
display: flex;
|
|
124
|
+
flex-direction: column;
|
|
125
|
+
gap: var(--spacing-space-40);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/*
|
|
129
|
+
* The accordion and column layouts are separate DOM branches toggled with
|
|
130
|
+
* display:none. A single <details> cannot serve both: forcing it open at
|
|
131
|
+
* desktop would leave <summary> focusable and announced as a collapsible
|
|
132
|
+
* button, which is wrong when the content is permanently visible. display:none
|
|
133
|
+
* removes the inactive branch from both the tab order and the a11y tree.
|
|
134
|
+
*/
|
|
135
|
+
._footer__nav-accordions_1kfrt_135 {
|
|
136
|
+
display: block;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
._footer__nav-columns_1kfrt_139 {
|
|
140
|
+
display: none;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
@container footer (min-width: 768px) {
|
|
144
|
+
._footer__nav-accordions_1kfrt_135 {
|
|
145
|
+
display: none;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
._footer__nav-columns_1kfrt_139 {
|
|
149
|
+
display: flex;
|
|
150
|
+
align-items: flex-start;
|
|
151
|
+
justify-content: space-between;
|
|
152
|
+
gap: var(--spacing-space-32);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
._footer__column_1kfrt_156 {
|
|
157
|
+
display: flex;
|
|
158
|
+
flex: 1 0 0;
|
|
159
|
+
flex-direction: column;
|
|
160
|
+
gap: var(--spacing-space-20);
|
|
161
|
+
min-width: 0;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
._footer__column-heading_1kfrt_164 {
|
|
165
|
+
margin: 0;
|
|
166
|
+
font: var(--typography-heading-xs);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
._footer__link-list_1kfrt_111 {
|
|
170
|
+
display: flex;
|
|
171
|
+
flex-direction: column;
|
|
172
|
+
gap: var(--spacing-space-8);
|
|
173
|
+
align-items: stretch;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/*
|
|
177
|
+
* Navigation links fill their column row. Visually identical (text stays
|
|
178
|
+
* left-aligned) but it stops narrow labels sitting between wider neighbours,
|
|
179
|
+
* which leaves overlapping target regions under SC 2.5.8.
|
|
180
|
+
*/
|
|
181
|
+
._footer__link-list_1kfrt_111 a,
|
|
182
|
+
._footer__link-list_1kfrt_111 button {
|
|
183
|
+
flex: 1 1 auto;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/*
|
|
187
|
+
* Underline styling comes from the shared text-decoration utility; only its
|
|
188
|
+
* visibility is toggled here, matching how IconButton handles the same case.
|
|
189
|
+
*/
|
|
190
|
+
._footer__link_1kfrt_111,
|
|
191
|
+
._footer__action_1kfrt_191 {
|
|
192
|
+
display: inline-block;
|
|
193
|
+
max-width: 100%;
|
|
194
|
+
/* Keeps short labels such as "5G" at the 24px minimum target size (SC 2.5.8). */
|
|
195
|
+
min-width: 24px;
|
|
196
|
+
font: var(--typography-body-md);
|
|
197
|
+
overflow-wrap: anywhere;
|
|
198
|
+
text-decoration-color: transparent;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
._footer__link_1kfrt_111:hover,
|
|
202
|
+
._footer__action_1kfrt_191:hover {
|
|
203
|
+
color: var(--color-semantic-foreground-link-inverse-hover);
|
|
204
|
+
text-decoration-color: currentColor;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
._footer__action_1kfrt_191 {
|
|
208
|
+
padding: 0;
|
|
209
|
+
color: inherit;
|
|
210
|
+
background: none;
|
|
211
|
+
border: 0;
|
|
212
|
+
font-family: inherit;
|
|
213
|
+
text-align: start;
|
|
214
|
+
cursor: pointer;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
/*
|
|
218
|
+
* Accordion navigation reuses AccordionItem's panel variant; only the padding
|
|
219
|
+
* is adjusted so link text aligns with the footer gutter. The block-start
|
|
220
|
+
* padding also keeps the first link off the ::details-content clip edge.
|
|
221
|
+
*/
|
|
222
|
+
._footer__accordion_1kfrt_222 > summary {
|
|
223
|
+
padding-inline: 0;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
._footer__accordion_1kfrt_222 > summary + div {
|
|
227
|
+
padding-block: var(--spacing-space-8) var(--spacing-space-16);
|
|
228
|
+
padding-inline: 0;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
/* === Divider === */
|
|
232
|
+
|
|
233
|
+
._footer__divider_1kfrt_233 {
|
|
234
|
+
height: 1px;
|
|
235
|
+
background: var(--color-semantic-border-neutral-mid);
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/* The accordion branch already ends with a rule, so avoid doubling it. */
|
|
239
|
+
@container footer (max-width: 767px) {
|
|
240
|
+
._footer__divider--after-nav_1kfrt_240 {
|
|
241
|
+
display: none;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/* === Meta row === */
|
|
246
|
+
|
|
247
|
+
._footer__meta_1kfrt_247 {
|
|
248
|
+
display: flex;
|
|
249
|
+
flex-direction: column;
|
|
250
|
+
gap: var(--spacing-space-32);
|
|
251
|
+
align-items: center;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
@container footer (min-width: 768px) {
|
|
255
|
+
._footer__meta_1kfrt_247 {
|
|
256
|
+
flex-direction: row;
|
|
257
|
+
align-items: flex-start;
|
|
258
|
+
justify-content: center;
|
|
259
|
+
gap: var(--spacing-space-24);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
._footer__meta-center_1kfrt_263 {
|
|
264
|
+
display: flex;
|
|
265
|
+
flex-direction: column;
|
|
266
|
+
gap: var(--spacing-space-32);
|
|
267
|
+
align-items: center;
|
|
268
|
+
min-width: 0;
|
|
269
|
+
margin-inline: auto;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
/* === Language selector === */
|
|
273
|
+
|
|
274
|
+
._footer__language-list_1kfrt_274 {
|
|
275
|
+
display: flex;
|
|
276
|
+
gap: var(--spacing-space-4);
|
|
277
|
+
align-items: center;
|
|
278
|
+
flex: 0 0 auto;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
._footer__language_1kfrt_274 {
|
|
282
|
+
display: inline-flex;
|
|
283
|
+
align-items: center;
|
|
284
|
+
justify-content: center;
|
|
285
|
+
width: 32px;
|
|
286
|
+
height: 32px;
|
|
287
|
+
font: var(--typography-body-md-medium);
|
|
288
|
+
text-decoration: none;
|
|
289
|
+
border-radius: var(--radius-semantic-full);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
._footer__language_1kfrt_274:hover {
|
|
293
|
+
background: var(--color-semantic-surface-secondary-soft);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
/*
|
|
297
|
+
* The active entry is marked with aria-current plus a filled pill, so selection
|
|
298
|
+
* is never conveyed by colour alone.
|
|
299
|
+
*/
|
|
300
|
+
._footer__language--current_1kfrt_300 {
|
|
301
|
+
color: var(--color-semantic-foreground-default);
|
|
302
|
+
background: var(--color-semantic-surface-base);
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
._footer__language--current_1kfrt_300:hover {
|
|
306
|
+
background: var(--color-semantic-surface-base);
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
/* === Social media === */
|
|
310
|
+
|
|
311
|
+
._footer__social-list_1kfrt_311 {
|
|
312
|
+
display: flex;
|
|
313
|
+
flex-wrap: wrap;
|
|
314
|
+
gap: var(--spacing-space-16);
|
|
315
|
+
align-items: center;
|
|
316
|
+
justify-content: center;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
._footer__social-link_1kfrt_319 {
|
|
320
|
+
display: inline-flex;
|
|
321
|
+
align-items: center;
|
|
322
|
+
justify-content: center;
|
|
323
|
+
/* Icons are 24px in the design; padding lifts the target to 32px. */
|
|
324
|
+
width: 32px;
|
|
325
|
+
height: 32px;
|
|
326
|
+
border-radius: var(--radius-semantic-full);
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
._footer__social-link_1kfrt_319:hover {
|
|
330
|
+
background: var(--color-semantic-surface-secondary-soft);
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
._footer__social-icon_1kfrt_333 {
|
|
334
|
+
width: 24px;
|
|
335
|
+
height: 24px;
|
|
336
|
+
fill: currentColor;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
/* === Organization selector === */
|
|
340
|
+
|
|
341
|
+
._footer__organization-list_1kfrt_341 {
|
|
342
|
+
display: flex;
|
|
343
|
+
flex-wrap: wrap;
|
|
344
|
+
gap: var(--spacing-space-8);
|
|
345
|
+
align-items: center;
|
|
346
|
+
justify-content: center;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
._footer__organization_1kfrt_341 {
|
|
350
|
+
display: inline-flex;
|
|
351
|
+
align-items: center;
|
|
352
|
+
justify-content: center;
|
|
353
|
+
min-height: 28px;
|
|
354
|
+
padding: var(--spacing-space-4) var(--spacing-space-8);
|
|
355
|
+
font: var(--typography-body-sm);
|
|
356
|
+
text-decoration: none;
|
|
357
|
+
border-radius: var(--radius-semantic-full);
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
._footer__organization_1kfrt_341:hover {
|
|
361
|
+
background: var(--color-semantic-surface-secondary-soft);
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
._footer__organization--current_1kfrt_364 {
|
|
365
|
+
font: var(--typography-body-sm-medium);
|
|
366
|
+
color: var(--color-semantic-foreground-default);
|
|
367
|
+
background: var(--color-semantic-surface-base);
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
._footer__organization--current_1kfrt_364:hover {
|
|
371
|
+
background: var(--color-semantic-surface-base);
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
/* === Legal links === */
|
|
375
|
+
|
|
376
|
+
._footer__legal-list_1kfrt_376 {
|
|
377
|
+
display: flex;
|
|
378
|
+
flex-wrap: wrap;
|
|
379
|
+
gap: var(--spacing-space-8) var(--spacing-space-16);
|
|
380
|
+
align-items: center;
|
|
381
|
+
justify-content: center;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
._footer__legal-list_1kfrt_376 li {
|
|
385
|
+
display: flex;
|
|
386
|
+
gap: var(--spacing-space-16);
|
|
387
|
+
align-items: center;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
/* Decorative; kept out of the accessibility tree by using ::before rather than a real element. */
|
|
391
|
+
._footer__legal-list_1kfrt_376 li + li::before {
|
|
392
|
+
content: '';
|
|
393
|
+
width: 1px;
|
|
394
|
+
height: 12px;
|
|
395
|
+
background: var(--color-semantic-foreground-inverse);
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
._footer__legal-list_1kfrt_376 ._footer__link_1kfrt_111,
|
|
399
|
+
._footer__legal-list_1kfrt_376 ._footer__action_1kfrt_191,
|
|
400
|
+
._footer__copyright_1kfrt_400 {
|
|
401
|
+
font: var(--typography-body-sm);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
/* === App badges === */
|
|
405
|
+
|
|
406
|
+
._footer__apps_1kfrt_406 {
|
|
407
|
+
display: flex;
|
|
408
|
+
flex-direction: column;
|
|
409
|
+
gap: var(--spacing-space-8);
|
|
410
|
+
align-items: center;
|
|
411
|
+
flex: 0 0 auto;
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
@container footer (min-width: 768px) {
|
|
415
|
+
._footer__apps_1kfrt_406 {
|
|
416
|
+
align-items: flex-start;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
._footer__apps-title_1kfrt_420 {
|
|
421
|
+
font: var(--typography-body-md-medium);
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
._footer__badges_1kfrt_424 {
|
|
425
|
+
display: flex;
|
|
426
|
+
flex-wrap: wrap;
|
|
427
|
+
gap: var(--spacing-space-8);
|
|
428
|
+
justify-content: center;
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
@container footer (min-width: 768px) {
|
|
432
|
+
._footer__badges_1kfrt_424 {
|
|
433
|
+
flex-direction: column;
|
|
434
|
+
align-items: flex-start;
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
._footer__badge_1kfrt_424 {
|
|
439
|
+
display: inline-flex;
|
|
440
|
+
border-radius: var(--radius-semantic-md);
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
._footer__badge_1kfrt_424 img {
|
|
444
|
+
display: block;
|
|
445
|
+
width: 140px;
|
|
446
|
+
height: 40px;
|
|
447
|
+
/*
|
|
448
|
+
* Store badges are brand artwork with mandated colours. Recolouring them in
|
|
449
|
+
* forced-colors mode would destroy the wordmark and Google's four-colour
|
|
450
|
+
* glyph. The badge is decorative (aria-hidden); the link keeps its
|
|
451
|
+
* accessible name and focus ring, so nothing is lost for these users.
|
|
452
|
+
*/
|
|
453
|
+
forced-color-adjust: none;
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
@media (forced-colors: active) {
|
|
457
|
+
._footer__divider_1kfrt_233 {
|
|
458
|
+
background: CanvasText;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
._footer__language--current_1kfrt_300,
|
|
462
|
+
._footer__organization--current_1kfrt_364 {
|
|
463
|
+
outline: 2px solid Highlight;
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FooterProps } from './Footer.types';
|
|
2
|
+
export declare const Footer: ({ topSection, navigation, socialLinks, organizations, currentOrganizationId, languages, currentLanguageCode, appLinks, mandatoryLinks, copyrightLabel, renderLink, onChatOpen, onCookieSettingsClick, navigationLabel, socialLabel, organizationsLabel, languagesLabel, mandatoryLinksLabel, className, ref, ...props }: FooterProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=Footer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../src/components/Footer/Footer.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAIR,WAAW,EAEd,MAAM,gBAAgB,CAAC;AAgCxB,eAAO,MAAM,MAAM,GAAI,yTAsBpB,WAAW,4CA2Sb,CAAC"}
|