@ivds/core 0.1.1
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/CHANGELOG.md +45 -0
- package/README.md +215 -0
- package/lib/all.css +6802 -0
- package/lib/all.min.css +1 -0
- package/lib/base/base.css +215 -0
- package/lib/base/base.min.css +1 -0
- package/lib/components/_breadcrumb-mixins.scss +173 -0
- package/lib/components/_button-mixin.scss +120 -0
- package/lib/components/_card-mixin.scss +196 -0
- package/lib/components/_checkbox-mixin.scss +208 -0
- package/lib/components/_footer-mixin.scss +385 -0
- package/lib/components/_header-mixin.scss +275 -0
- package/lib/components/_navigation-mixins.scss +270 -0
- package/lib/components/_notification-mixin.scss +239 -0
- package/lib/components/_pagination-mixins.scss +280 -0
- package/lib/components/_radio-button-mixin.scss +207 -0
- package/lib/components/_tag-mixin.scss +261 -0
- package/lib/components/_text-input-mixin.scss +203 -0
- package/lib/components/all.css +3005 -0
- package/lib/components/all.min.css +1 -0
- package/lib/components/breadcrumb/breadcrumb.css +141 -0
- package/lib/components/breadcrumb/breadcrumb.min.css +1 -0
- package/lib/components/button/button.css +221 -0
- package/lib/components/button/button.min.css +1 -0
- package/lib/components/card/card.css +236 -0
- package/lib/components/card/card.min.css +1 -0
- package/lib/components/checkbox/checkbox.css +305 -0
- package/lib/components/checkbox/checkbox.min.css +1 -0
- package/lib/components/footer/footer.css +466 -0
- package/lib/components/footer/footer.min.css +1 -0
- package/lib/components/header/header.css +274 -0
- package/lib/components/header/header.min.css +1 -0
- package/lib/components/navigation/navigation.css +214 -0
- package/lib/components/navigation/navigation.min.css +1 -0
- package/lib/components/notification/notification.css +253 -0
- package/lib/components/notification/notification.min.css +1 -0
- package/lib/components/pagination/pagination.css +221 -0
- package/lib/components/pagination/pagination.min.css +1 -0
- package/lib/components/radio-button/radio-button.css +326 -0
- package/lib/components/radio-button/radio-button.min.css +1 -0
- package/lib/components/tag/tag.css +367 -0
- package/lib/components/tag/tag.min.css +1 -0
- package/lib/components/text-input/text-input.css +243 -0
- package/lib/components/text-input/text-input.min.css +1 -0
- package/lib/icons/icon-arrow-left.css +139 -0
- package/lib/icons/icon-arrow-left.min.css +1 -0
- package/lib/icons/icon-arrow-right.css +139 -0
- package/lib/icons/icon-arrow-right.min.css +1 -0
- package/lib/icons/icon-check.css +139 -0
- package/lib/icons/icon-check.min.css +1 -0
- package/lib/icons/icon-close.css +140 -0
- package/lib/icons/icon-close.min.css +1 -0
- package/lib/icons/icon-error.css +140 -0
- package/lib/icons/icon-error.min.css +1 -0
- package/lib/icons/icon-info.css +140 -0
- package/lib/icons/icon-info.min.css +1 -0
- package/lib/icons/icon-success.css +139 -0
- package/lib/icons/icon-success.min.css +1 -0
- package/lib/icons/icon-warning.css +139 -0
- package/lib/icons/icon-warning.min.css +1 -0
- package/lib/icons/icons.css +1158 -0
- package/lib/icons/icons.min.css +1 -0
- package/lib/utils/_flex.scss +200 -0
- package/lib/utils/_grid.scss +211 -0
- package/lib/utils/_layout.scss +253 -0
- package/lib/utils/_spacing.scss +260 -0
- package/lib/utils/_typography.scss +111 -0
- package/lib/utils/utils.css +2434 -0
- package/lib/utils/utils.min.css +1 -0
- package/lib/utils-only.css +2801 -0
- package/lib/utils-only.min.css +1 -0
- package/lib/variables/variables.css +2 -0
- package/lib/variables/variables.min.css +0 -0
- package/package.json +194 -0
- package/src/__tests__/example.test.scss +12 -0
- package/src/accessibility.stories.js +416 -0
- package/src/all.scss +9 -0
- package/src/base/_layout.scss +97 -0
- package/src/base/_reset.scss +85 -0
- package/src/base/_typography.scss +105 -0
- package/src/base/base.scss +6 -0
- package/src/components/all.scss +22 -0
- package/src/components/breadcrumb/_breadcrumb-mixins.scss +173 -0
- package/src/components/breadcrumb/breadcrumb.scss +68 -0
- package/src/components/breadcrumb/breadcrumb.stories.js +483 -0
- package/src/components/button/__tests__/button-mixins.test.scss +35 -0
- package/src/components/button/_button-mixin.scss +120 -0
- package/src/components/button/button.scss +126 -0
- package/src/components/button/button.stories.js +364 -0
- package/src/components/card/__tests__/card-mixins.test.scss +36 -0
- package/src/components/card/_card-mixin.scss +196 -0
- package/src/components/card/card.scss +193 -0
- package/src/components/card/card.stories.js +635 -0
- package/src/components/checkbox/_checkbox-mixin.scss +208 -0
- package/src/components/checkbox/checkbox.scss +141 -0
- package/src/components/checkbox/checkbox.stories.js +303 -0
- package/src/components/footer/_footer-mixin.scss +385 -0
- package/src/components/footer/footer.scss +86 -0
- package/src/components/footer/footer.stories.js +740 -0
- package/src/components/header/_header-mixin.scss +275 -0
- package/src/components/header/header.scss +84 -0
- package/src/components/header/header.stories.js +450 -0
- package/src/components/navigation/_navigation-mixins.scss +270 -0
- package/src/components/navigation/navigation.scss +64 -0
- package/src/components/navigation/navigation.stories.js +410 -0
- package/src/components/notification/_notification-mixin.scss +239 -0
- package/src/components/notification/notification.scss +118 -0
- package/src/components/notification/notification.stories.js +378 -0
- package/src/components/overview.stories.js +473 -0
- package/src/components/pagination/_pagination-mixins.scss +280 -0
- package/src/components/pagination/pagination.scss +76 -0
- package/src/components/pagination/pagination.stories.js +729 -0
- package/src/components/radio-button/_radio-button-mixin.scss +207 -0
- package/src/components/radio-button/radio-button.scss +178 -0
- package/src/components/radio-button/radio-button.stories.js +379 -0
- package/src/components/tag/_tag-mixin.scss +261 -0
- package/src/components/tag/tag.scss +244 -0
- package/src/components/tag/tag.stories.js +482 -0
- package/src/components/text-input/_text-input-mixin.scss +203 -0
- package/src/components/text-input/text-input.scss +150 -0
- package/src/components/text-input/text-input.stories.js +723 -0
- package/src/icons/_icon.scss +121 -0
- package/src/icons/icon-arrow-left.scss +23 -0
- package/src/icons/icon-arrow-right.scss +23 -0
- package/src/icons/icon-check.scss +23 -0
- package/src/icons/icon-close.scss +24 -0
- package/src/icons/icon-error.scss +24 -0
- package/src/icons/icon-info.scss +24 -0
- package/src/icons/icon-success.scss +23 -0
- package/src/icons/icon-warning.scss +23 -0
- package/src/icons/icons.scss +12 -0
- package/src/icons/icons.stories.js +249 -0
- package/src/icons/svg/arrow-left.svg +3 -0
- package/src/icons/svg/arrow-right.svg +3 -0
- package/src/icons/svg/check.svg +3 -0
- package/src/icons/svg/close.svg +4 -0
- package/src/icons/svg/error.svg +5 -0
- package/src/icons/svg/info.svg +5 -0
- package/src/icons/svg/success.svg +4 -0
- package/src/icons/svg/warning.svg +5 -0
- package/src/utils/__tests__/utilities.test.scss +37 -0
- package/src/utils/_flex.scss +200 -0
- package/src/utils/_grid.scss +211 -0
- package/src/utils/_layout.scss +253 -0
- package/src/utils/_spacing.scss +260 -0
- package/src/utils/_typography.scss +111 -0
- package/src/utils/utils.scss +8 -0
- package/src/variables/_borders.scss +15 -0
- package/src/variables/_breakpoints.scss +11 -0
- package/src/variables/_colors.scss +97 -0
- package/src/variables/_shadows.scss +14 -0
- package/src/variables/_spacing.scss +24 -0
- package/src/variables/_typography.scss +47 -0
- package/src/variables/variables.scss +9 -0
|
@@ -0,0 +1,740 @@
|
|
|
1
|
+
// Footer component stories for Storybook
|
|
2
|
+
// Showcases footer layouts, multi-column organization, and responsive stacking patterns
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
title: 'Core/Footer',
|
|
6
|
+
parameters: {
|
|
7
|
+
docs: {
|
|
8
|
+
description: {
|
|
9
|
+
component: 'CSS-only footer component using IVDS design tokens. Provides flexible multi-column layout options with responsive stacking, proper semantic structure, and accessibility features. Includes mixins for different column layouts and theming.'
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
a11y: {
|
|
13
|
+
config: {
|
|
14
|
+
rules: [
|
|
15
|
+
{
|
|
16
|
+
id: 'color-contrast',
|
|
17
|
+
enabled: true
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
id: 'focus-order-semantics',
|
|
21
|
+
enabled: true
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
id: 'landmark-one-main',
|
|
25
|
+
enabled: false // Footer is not main content
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
// Basic footer
|
|
34
|
+
export const Basic = () => `
|
|
35
|
+
<footer class="ivds-footer">
|
|
36
|
+
<div class="ivds-footer__content">
|
|
37
|
+
<div class="ivds-footer__grid">
|
|
38
|
+
<div>
|
|
39
|
+
<h3 class="ivds-footer__section-title">Company</h3>
|
|
40
|
+
<ul class="ivds-footer__section-list">
|
|
41
|
+
<li class="ivds-footer__section-item">
|
|
42
|
+
<a href="#" class="ivds-footer__section-link">About Us</a>
|
|
43
|
+
</li>
|
|
44
|
+
<li class="ivds-footer__section-item">
|
|
45
|
+
<a href="#" class="ivds-footer__section-link">Careers</a>
|
|
46
|
+
</li>
|
|
47
|
+
<li class="ivds-footer__section-item">
|
|
48
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
49
|
+
</li>
|
|
50
|
+
</ul>
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
<div>
|
|
54
|
+
<h3 class="ivds-footer__section-title">Products</h3>
|
|
55
|
+
<ul class="ivds-footer__section-list">
|
|
56
|
+
<li class="ivds-footer__section-item">
|
|
57
|
+
<a href="#" class="ivds-footer__section-link">Design System</a>
|
|
58
|
+
</li>
|
|
59
|
+
<li class="ivds-footer__section-item">
|
|
60
|
+
<a href="#" class="ivds-footer__section-link">Components</a>
|
|
61
|
+
</li>
|
|
62
|
+
<li class="ivds-footer__section-item">
|
|
63
|
+
<a href="#" class="ivds-footer__section-link">Templates</a>
|
|
64
|
+
</li>
|
|
65
|
+
</ul>
|
|
66
|
+
</div>
|
|
67
|
+
|
|
68
|
+
<div>
|
|
69
|
+
<h3 class="ivds-footer__section-title">Support</h3>
|
|
70
|
+
<ul class="ivds-footer__section-list">
|
|
71
|
+
<li class="ivds-footer__section-item">
|
|
72
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
73
|
+
</li>
|
|
74
|
+
<li class="ivds-footer__section-item">
|
|
75
|
+
<a href="#" class="ivds-footer__section-link">Help Center</a>
|
|
76
|
+
</li>
|
|
77
|
+
<li class="ivds-footer__section-item">
|
|
78
|
+
<a href="#" class="ivds-footer__section-link">Community</a>
|
|
79
|
+
</li>
|
|
80
|
+
</ul>
|
|
81
|
+
</div>
|
|
82
|
+
</div>
|
|
83
|
+
|
|
84
|
+
<div class="ivds-footer__bottom">
|
|
85
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</footer>
|
|
89
|
+
`;
|
|
90
|
+
|
|
91
|
+
// Comprehensive footer
|
|
92
|
+
export const Comprehensive = () => `
|
|
93
|
+
<footer class="ivds-footer">
|
|
94
|
+
<div class="ivds-footer__content">
|
|
95
|
+
<div class="ivds-footer__grid">
|
|
96
|
+
<div>
|
|
97
|
+
<h3 class="ivds-footer__section-title">Company</h3>
|
|
98
|
+
<ul class="ivds-footer__section-list">
|
|
99
|
+
<li class="ivds-footer__section-item">
|
|
100
|
+
<a href="#" class="ivds-footer__section-link">About Us</a>
|
|
101
|
+
</li>
|
|
102
|
+
<li class="ivds-footer__section-item">
|
|
103
|
+
<a href="#" class="ivds-footer__section-link">Our Team</a>
|
|
104
|
+
</li>
|
|
105
|
+
<li class="ivds-footer__section-item">
|
|
106
|
+
<a href="#" class="ivds-footer__section-link">Careers</a>
|
|
107
|
+
</li>
|
|
108
|
+
<li class="ivds-footer__section-item">
|
|
109
|
+
<a href="#" class="ivds-footer__section-link">Press</a>
|
|
110
|
+
</li>
|
|
111
|
+
<li class="ivds-footer__section-item">
|
|
112
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
113
|
+
</li>
|
|
114
|
+
</ul>
|
|
115
|
+
</div>
|
|
116
|
+
|
|
117
|
+
<div>
|
|
118
|
+
<h3 class="ivds-footer__section-title">Products</h3>
|
|
119
|
+
<ul class="ivds-footer__section-list">
|
|
120
|
+
<li class="ivds-footer__section-item">
|
|
121
|
+
<a href="#" class="ivds-footer__section-link">Design Tokens</a>
|
|
122
|
+
</li>
|
|
123
|
+
<li class="ivds-footer__section-item">
|
|
124
|
+
<a href="#" class="ivds-footer__section-link">Core Styles</a>
|
|
125
|
+
</li>
|
|
126
|
+
<li class="ivds-footer__section-item">
|
|
127
|
+
<a href="#" class="ivds-footer__section-link">React Components</a>
|
|
128
|
+
</li>
|
|
129
|
+
<li class="ivds-footer__section-item">
|
|
130
|
+
<a href="#" class="ivds-footer__section-link">Templates</a>
|
|
131
|
+
</li>
|
|
132
|
+
<li class="ivds-footer__section-item">
|
|
133
|
+
<a href="#" class="ivds-footer__section-link">Figma Kit</a>
|
|
134
|
+
</li>
|
|
135
|
+
</ul>
|
|
136
|
+
</div>
|
|
137
|
+
|
|
138
|
+
<div>
|
|
139
|
+
<h3 class="ivds-footer__section-title">Resources</h3>
|
|
140
|
+
<ul class="ivds-footer__section-list">
|
|
141
|
+
<li class="ivds-footer__section-item">
|
|
142
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
143
|
+
</li>
|
|
144
|
+
<li class="ivds-footer__section-item">
|
|
145
|
+
<a href="#" class="ivds-footer__section-link">Getting Started</a>
|
|
146
|
+
</li>
|
|
147
|
+
<li class="ivds-footer__section-item">
|
|
148
|
+
<a href="#" class="ivds-footer__section-link">Examples</a>
|
|
149
|
+
</li>
|
|
150
|
+
<li class="ivds-footer__section-item">
|
|
151
|
+
<a href="#" class="ivds-footer__section-link">Blog</a>
|
|
152
|
+
</li>
|
|
153
|
+
<li class="ivds-footer__section-item">
|
|
154
|
+
<a href="#" class="ivds-footer__section-link">Changelog</a>
|
|
155
|
+
</li>
|
|
156
|
+
</ul>
|
|
157
|
+
</div>
|
|
158
|
+
|
|
159
|
+
<div>
|
|
160
|
+
<h3 class="ivds-footer__section-title">Support</h3>
|
|
161
|
+
<ul class="ivds-footer__section-list">
|
|
162
|
+
<li class="ivds-footer__section-item">
|
|
163
|
+
<a href="#" class="ivds-footer__section-link">Help Center</a>
|
|
164
|
+
</li>
|
|
165
|
+
<li class="ivds-footer__section-item">
|
|
166
|
+
<a href="#" class="ivds-footer__section-link">Community</a>
|
|
167
|
+
</li>
|
|
168
|
+
<li class="ivds-footer__section-item">
|
|
169
|
+
<a href="#" class="ivds-footer__section-link">GitHub</a>
|
|
170
|
+
</li>
|
|
171
|
+
<li class="ivds-footer__section-item">
|
|
172
|
+
<a href="#" class="ivds-footer__section-link">Report Issues</a>
|
|
173
|
+
</li>
|
|
174
|
+
<li class="ivds-footer__section-item">
|
|
175
|
+
<a href="#" class="ivds-footer__section-link">Feature Requests</a>
|
|
176
|
+
</li>
|
|
177
|
+
</ul>
|
|
178
|
+
</div>
|
|
179
|
+
</div>
|
|
180
|
+
|
|
181
|
+
<div class="ivds-footer__bottom">
|
|
182
|
+
<p>© 2024 Ivoire Design System. All rights reserved. |
|
|
183
|
+
<a href="#" class="ivds-footer__section-link">Privacy Policy</a> |
|
|
184
|
+
<a href="#" class="ivds-footer__section-link">Terms of Service</a>
|
|
185
|
+
</p>
|
|
186
|
+
</div>
|
|
187
|
+
</div>
|
|
188
|
+
</footer>
|
|
189
|
+
`;
|
|
190
|
+
|
|
191
|
+
// Simple footer
|
|
192
|
+
export const Simple = () => `
|
|
193
|
+
<footer class="ivds-footer">
|
|
194
|
+
<div class="ivds-footer__content">
|
|
195
|
+
<div class="ivds-footer__bottom">
|
|
196
|
+
<p>© 2024 IVDS. Built with ❤️ for the community.</p>
|
|
197
|
+
</div>
|
|
198
|
+
</div>
|
|
199
|
+
</footer>
|
|
200
|
+
`;
|
|
201
|
+
|
|
202
|
+
// Footer with social links
|
|
203
|
+
export const WithSocialLinks = () => `
|
|
204
|
+
<footer class="ivds-footer">
|
|
205
|
+
<div class="ivds-footer__content">
|
|
206
|
+
<div class="ivds-footer__grid">
|
|
207
|
+
<div>
|
|
208
|
+
<h3 class="ivds-footer__section-title">Company</h3>
|
|
209
|
+
<ul class="ivds-footer__section-list">
|
|
210
|
+
<li class="ivds-footer__section-item">
|
|
211
|
+
<a href="#" class="ivds-footer__section-link">About</a>
|
|
212
|
+
</li>
|
|
213
|
+
<li class="ivds-footer__section-item">
|
|
214
|
+
<a href="#" class="ivds-footer__section-link">Careers</a>
|
|
215
|
+
</li>
|
|
216
|
+
<li class="ivds-footer__section-item">
|
|
217
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
218
|
+
</li>
|
|
219
|
+
</ul>
|
|
220
|
+
</div>
|
|
221
|
+
|
|
222
|
+
<div>
|
|
223
|
+
<h3 class="ivds-footer__section-title">Follow Us</h3>
|
|
224
|
+
<ul class="ivds-footer__section-list">
|
|
225
|
+
<li class="ivds-footer__section-item">
|
|
226
|
+
<a href="#" class="ivds-footer__section-link" aria-label="Follow us on Twitter">
|
|
227
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="margin-right: 0.5rem; vertical-align: middle;">
|
|
228
|
+
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"/>
|
|
229
|
+
</svg>
|
|
230
|
+
Twitter
|
|
231
|
+
</a>
|
|
232
|
+
</li>
|
|
233
|
+
<li class="ivds-footer__section-item">
|
|
234
|
+
<a href="#" class="ivds-footer__section-link" aria-label="Follow us on GitHub">
|
|
235
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="margin-right: 0.5rem; vertical-align: middle;">
|
|
236
|
+
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"/>
|
|
237
|
+
</svg>
|
|
238
|
+
GitHub
|
|
239
|
+
</a>
|
|
240
|
+
</li>
|
|
241
|
+
<li class="ivds-footer__section-item">
|
|
242
|
+
<a href="#" class="ivds-footer__section-link" aria-label="Follow us on LinkedIn">
|
|
243
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="margin-right: 0.5rem; vertical-align: middle;">
|
|
244
|
+
<path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"/>
|
|
245
|
+
<rect x="2" y="9" width="4" height="12"/>
|
|
246
|
+
<circle cx="4" cy="4" r="2"/>
|
|
247
|
+
</svg>
|
|
248
|
+
LinkedIn
|
|
249
|
+
</a>
|
|
250
|
+
</li>
|
|
251
|
+
</ul>
|
|
252
|
+
</div>
|
|
253
|
+
|
|
254
|
+
<div>
|
|
255
|
+
<h3 class="ivds-footer__section-title">Newsletter</h3>
|
|
256
|
+
<p style="margin-bottom: 1rem; font-size: 0.875rem;">Stay updated with our latest releases and news.</p>
|
|
257
|
+
<div style="display: flex; gap: 0.5rem;">
|
|
258
|
+
<input
|
|
259
|
+
type="email"
|
|
260
|
+
placeholder="Enter your email"
|
|
261
|
+
style="flex: 1; padding: 0.5rem; border: 1px solid #475569; border-radius: 0.25rem; background-color: #1e293b; color: #cbd5e1;"
|
|
262
|
+
aria-label="Email address for newsletter"
|
|
263
|
+
/>
|
|
264
|
+
<button
|
|
265
|
+
style="padding: 0.5rem 1rem; background-color: #0ea5e9; color: white; border: none; border-radius: 0.25rem; cursor: pointer;"
|
|
266
|
+
aria-label="Subscribe to newsletter"
|
|
267
|
+
>
|
|
268
|
+
Subscribe
|
|
269
|
+
</button>
|
|
270
|
+
</div>
|
|
271
|
+
</div>
|
|
272
|
+
</div>
|
|
273
|
+
|
|
274
|
+
<div class="ivds-footer__bottom">
|
|
275
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
276
|
+
</div>
|
|
277
|
+
</div>
|
|
278
|
+
</footer>
|
|
279
|
+
`;
|
|
280
|
+
|
|
281
|
+
// Two column layout
|
|
282
|
+
export const TwoColumns = () => `
|
|
283
|
+
<footer class="ivds-footer ivds-footer--two-columns">
|
|
284
|
+
<div class="ivds-footer__content">
|
|
285
|
+
<div class="ivds-footer__grid">
|
|
286
|
+
<div>
|
|
287
|
+
<div class="ivds-footer__brand">
|
|
288
|
+
<svg class="ivds-footer__brand-logo" width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
289
|
+
<rect width="32" height="32" rx="8" fill="#f97316"/>
|
|
290
|
+
<path d="M8 12h16v2H8v-2zm0 4h16v2H8v-2zm0 4h10v2H8v-2z" fill="white"/>
|
|
291
|
+
</svg>
|
|
292
|
+
<h3 class="ivds-footer__brand-name">IVDS</h3>
|
|
293
|
+
<p class="ivds-footer__brand-description">
|
|
294
|
+
A comprehensive design system built for modern web applications.
|
|
295
|
+
Create consistent, accessible, and beautiful user interfaces.
|
|
296
|
+
</p>
|
|
297
|
+
</div>
|
|
298
|
+
|
|
299
|
+
<div class="ivds-footer__social">
|
|
300
|
+
<a href="#" aria-label="Follow us on Twitter">
|
|
301
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
|
302
|
+
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"/>
|
|
303
|
+
</svg>
|
|
304
|
+
</a>
|
|
305
|
+
<a href="#" aria-label="Follow us on GitHub">
|
|
306
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
|
307
|
+
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"/>
|
|
308
|
+
</svg>
|
|
309
|
+
</a>
|
|
310
|
+
<a href="#" aria-label="Follow us on LinkedIn">
|
|
311
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
|
312
|
+
<path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"/>
|
|
313
|
+
<rect x="2" y="9" width="4" height="12"/>
|
|
314
|
+
<circle cx="4" cy="4" r="2"/>
|
|
315
|
+
</svg>
|
|
316
|
+
</a>
|
|
317
|
+
</div>
|
|
318
|
+
</div>
|
|
319
|
+
|
|
320
|
+
<div>
|
|
321
|
+
<h3 class="ivds-footer__section-title">Quick Links</h3>
|
|
322
|
+
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 1rem;">
|
|
323
|
+
<ul class="ivds-footer__section-list">
|
|
324
|
+
<li class="ivds-footer__section-item">
|
|
325
|
+
<a href="#" class="ivds-footer__section-link">Components</a>
|
|
326
|
+
</li>
|
|
327
|
+
<li class="ivds-footer__section-item">
|
|
328
|
+
<a href="#" class="ivds-footer__section-link">Design Tokens</a>
|
|
329
|
+
</li>
|
|
330
|
+
<li class="ivds-footer__section-item">
|
|
331
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
332
|
+
</li>
|
|
333
|
+
<li class="ivds-footer__section-item">
|
|
334
|
+
<a href="#" class="ivds-footer__section-link">Examples</a>
|
|
335
|
+
</li>
|
|
336
|
+
</ul>
|
|
337
|
+
<ul class="ivds-footer__section-list">
|
|
338
|
+
<li class="ivds-footer__section-item">
|
|
339
|
+
<a href="#" class="ivds-footer__section-link">About</a>
|
|
340
|
+
</li>
|
|
341
|
+
<li class="ivds-footer__section-item">
|
|
342
|
+
<a href="#" class="ivds-footer__section-link">Blog</a>
|
|
343
|
+
</li>
|
|
344
|
+
<li class="ivds-footer__section-item">
|
|
345
|
+
<a href="#" class="ivds-footer__section-link">Support</a>
|
|
346
|
+
</li>
|
|
347
|
+
<li class="ivds-footer__section-item">
|
|
348
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
349
|
+
</li>
|
|
350
|
+
</ul>
|
|
351
|
+
</div>
|
|
352
|
+
</div>
|
|
353
|
+
</div>
|
|
354
|
+
|
|
355
|
+
<div class="ivds-footer__bottom">
|
|
356
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
357
|
+
</div>
|
|
358
|
+
</div>
|
|
359
|
+
</footer>
|
|
360
|
+
`;
|
|
361
|
+
|
|
362
|
+
// Light theme footer
|
|
363
|
+
export const LightTheme = () => `
|
|
364
|
+
<footer class="ivds-footer ivds-footer--light">
|
|
365
|
+
<div class="ivds-footer__content">
|
|
366
|
+
<div class="ivds-footer__grid">
|
|
367
|
+
<div>
|
|
368
|
+
<h3 class="ivds-footer__section-title">Company</h3>
|
|
369
|
+
<ul class="ivds-footer__section-list">
|
|
370
|
+
<li class="ivds-footer__section-item">
|
|
371
|
+
<a href="#" class="ivds-footer__section-link">About Us</a>
|
|
372
|
+
</li>
|
|
373
|
+
<li class="ivds-footer__section-item">
|
|
374
|
+
<a href="#" class="ivds-footer__section-link">Careers</a>
|
|
375
|
+
</li>
|
|
376
|
+
<li class="ivds-footer__section-item">
|
|
377
|
+
<a href="#" class="ivds-footer__section-link">Press</a>
|
|
378
|
+
</li>
|
|
379
|
+
<li class="ivds-footer__section-item">
|
|
380
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
381
|
+
</li>
|
|
382
|
+
</ul>
|
|
383
|
+
</div>
|
|
384
|
+
|
|
385
|
+
<div>
|
|
386
|
+
<h3 class="ivds-footer__section-title">Products</h3>
|
|
387
|
+
<ul class="ivds-footer__section-list">
|
|
388
|
+
<li class="ivds-footer__section-item">
|
|
389
|
+
<a href="#" class="ivds-footer__section-link">Design System</a>
|
|
390
|
+
</li>
|
|
391
|
+
<li class="ivds-footer__section-item">
|
|
392
|
+
<a href="#" class="ivds-footer__section-link">Components</a>
|
|
393
|
+
</li>
|
|
394
|
+
<li class="ivds-footer__section-item">
|
|
395
|
+
<a href="#" class="ivds-footer__section-link">Templates</a>
|
|
396
|
+
</li>
|
|
397
|
+
<li class="ivds-footer__section-item">
|
|
398
|
+
<a href="#" class="ivds-footer__section-link">Resources</a>
|
|
399
|
+
</li>
|
|
400
|
+
</ul>
|
|
401
|
+
</div>
|
|
402
|
+
|
|
403
|
+
<div>
|
|
404
|
+
<h3 class="ivds-footer__section-title">Support</h3>
|
|
405
|
+
<ul class="ivds-footer__section-list">
|
|
406
|
+
<li class="ivds-footer__section-item">
|
|
407
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
408
|
+
</li>
|
|
409
|
+
<li class="ivds-footer__section-item">
|
|
410
|
+
<a href="#" class="ivds-footer__section-link">Help Center</a>
|
|
411
|
+
</li>
|
|
412
|
+
<li class="ivds-footer__section-item">
|
|
413
|
+
<a href="#" class="ivds-footer__section-link">Community</a>
|
|
414
|
+
</li>
|
|
415
|
+
<li class="ivds-footer__section-item">
|
|
416
|
+
<a href="#" class="ivds-footer__section-link">Contact Support</a>
|
|
417
|
+
</li>
|
|
418
|
+
</ul>
|
|
419
|
+
</div>
|
|
420
|
+
</div>
|
|
421
|
+
|
|
422
|
+
<div class="ivds-footer__bottom">
|
|
423
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
424
|
+
</div>
|
|
425
|
+
</div>
|
|
426
|
+
</footer>
|
|
427
|
+
`;
|
|
428
|
+
|
|
429
|
+
// Minimal footer
|
|
430
|
+
export const Minimal = () => `
|
|
431
|
+
<footer class="ivds-footer ivds-footer--minimal">
|
|
432
|
+
<div class="ivds-footer__content">
|
|
433
|
+
<div class="ivds-footer__bottom">
|
|
434
|
+
<p>© 2024 IVDS. Built with ❤️ for developers everywhere.</p>
|
|
435
|
+
</div>
|
|
436
|
+
</div>
|
|
437
|
+
</footer>
|
|
438
|
+
`;
|
|
439
|
+
|
|
440
|
+
// Footer with newsletter signup
|
|
441
|
+
export const WithNewsletter = () => `
|
|
442
|
+
<footer class="ivds-footer">
|
|
443
|
+
<div class="ivds-footer__content">
|
|
444
|
+
<div class="ivds-footer__grid">
|
|
445
|
+
<div>
|
|
446
|
+
<h3 class="ivds-footer__section-title">Company</h3>
|
|
447
|
+
<ul class="ivds-footer__section-list">
|
|
448
|
+
<li class="ivds-footer__section-item">
|
|
449
|
+
<a href="#" class="ivds-footer__section-link">About</a>
|
|
450
|
+
</li>
|
|
451
|
+
<li class="ivds-footer__section-item">
|
|
452
|
+
<a href="#" class="ivds-footer__section-link">Careers</a>
|
|
453
|
+
</li>
|
|
454
|
+
<li class="ivds-footer__section-item">
|
|
455
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
456
|
+
</li>
|
|
457
|
+
</ul>
|
|
458
|
+
</div>
|
|
459
|
+
|
|
460
|
+
<div>
|
|
461
|
+
<h3 class="ivds-footer__section-title">Resources</h3>
|
|
462
|
+
<ul class="ivds-footer__section-list">
|
|
463
|
+
<li class="ivds-footer__section-item">
|
|
464
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
465
|
+
</li>
|
|
466
|
+
<li class="ivds-footer__section-item">
|
|
467
|
+
<a href="#" class="ivds-footer__section-link">Examples</a>
|
|
468
|
+
</li>
|
|
469
|
+
<li class="ivds-footer__section-item">
|
|
470
|
+
<a href="#" class="ivds-footer__section-link">Blog</a>
|
|
471
|
+
</li>
|
|
472
|
+
</ul>
|
|
473
|
+
</div>
|
|
474
|
+
|
|
475
|
+
<div>
|
|
476
|
+
<h3 class="ivds-footer__section-title">Stay Updated</h3>
|
|
477
|
+
<div class="ivds-footer__newsletter">
|
|
478
|
+
<p class="ivds-footer__newsletter-description">
|
|
479
|
+
Get the latest updates on new components, design tokens, and best practices.
|
|
480
|
+
</p>
|
|
481
|
+
<form class="ivds-footer__newsletter-form" aria-label="Newsletter signup">
|
|
482
|
+
<input
|
|
483
|
+
type="email"
|
|
484
|
+
class="ivds-footer__newsletter-input"
|
|
485
|
+
placeholder="Enter your email"
|
|
486
|
+
aria-label="Email address for newsletter"
|
|
487
|
+
required
|
|
488
|
+
/>
|
|
489
|
+
<button
|
|
490
|
+
type="submit"
|
|
491
|
+
class="ivds-footer__newsletter-button"
|
|
492
|
+
aria-label="Subscribe to newsletter"
|
|
493
|
+
>
|
|
494
|
+
Subscribe
|
|
495
|
+
</button>
|
|
496
|
+
</form>
|
|
497
|
+
</div>
|
|
498
|
+
</div>
|
|
499
|
+
</div>
|
|
500
|
+
|
|
501
|
+
<div class="ivds-footer__bottom">
|
|
502
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
503
|
+
</div>
|
|
504
|
+
</div>
|
|
505
|
+
</footer>
|
|
506
|
+
`;
|
|
507
|
+
|
|
508
|
+
// Five column layout
|
|
509
|
+
export const FiveColumns = () => `
|
|
510
|
+
<footer class="ivds-footer ivds-footer--five-columns">
|
|
511
|
+
<div class="ivds-footer__content">
|
|
512
|
+
<div class="ivds-footer__grid">
|
|
513
|
+
<div>
|
|
514
|
+
<h3 class="ivds-footer__section-title">Products</h3>
|
|
515
|
+
<ul class="ivds-footer__section-list">
|
|
516
|
+
<li class="ivds-footer__section-item">
|
|
517
|
+
<a href="#" class="ivds-footer__section-link">Design Tokens</a>
|
|
518
|
+
</li>
|
|
519
|
+
<li class="ivds-footer__section-item">
|
|
520
|
+
<a href="#" class="ivds-footer__section-link">Core Styles</a>
|
|
521
|
+
</li>
|
|
522
|
+
<li class="ivds-footer__section-item">
|
|
523
|
+
<a href="#" class="ivds-footer__section-link">React Components</a>
|
|
524
|
+
</li>
|
|
525
|
+
</ul>
|
|
526
|
+
</div>
|
|
527
|
+
|
|
528
|
+
<div>
|
|
529
|
+
<h3 class="ivds-footer__section-title">Resources</h3>
|
|
530
|
+
<ul class="ivds-footer__section-list">
|
|
531
|
+
<li class="ivds-footer__section-item">
|
|
532
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
533
|
+
</li>
|
|
534
|
+
<li class="ivds-footer__section-item">
|
|
535
|
+
<a href="#" class="ivds-footer__section-link">Getting Started</a>
|
|
536
|
+
</li>
|
|
537
|
+
<li class="ivds-footer__section-item">
|
|
538
|
+
<a href="#" class="ivds-footer__section-link">Examples</a>
|
|
539
|
+
</li>
|
|
540
|
+
</ul>
|
|
541
|
+
</div>
|
|
542
|
+
|
|
543
|
+
<div>
|
|
544
|
+
<h3 class="ivds-footer__section-title">Community</h3>
|
|
545
|
+
<ul class="ivds-footer__section-list">
|
|
546
|
+
<li class="ivds-footer__section-item">
|
|
547
|
+
<a href="#" class="ivds-footer__section-link">GitHub</a>
|
|
548
|
+
</li>
|
|
549
|
+
<li class="ivds-footer__section-item">
|
|
550
|
+
<a href="#" class="ivds-footer__section-link">Discord</a>
|
|
551
|
+
</li>
|
|
552
|
+
<li class="ivds-footer__section-item">
|
|
553
|
+
<a href="#" class="ivds-footer__section-link">Discussions</a>
|
|
554
|
+
</li>
|
|
555
|
+
</ul>
|
|
556
|
+
</div>
|
|
557
|
+
|
|
558
|
+
<div>
|
|
559
|
+
<h3 class="ivds-footer__section-title">Support</h3>
|
|
560
|
+
<ul class="ivds-footer__section-list">
|
|
561
|
+
<li class="ivds-footer__section-item">
|
|
562
|
+
<a href="#" class="ivds-footer__section-link">Help Center</a>
|
|
563
|
+
</li>
|
|
564
|
+
<li class="ivds-footer__section-item">
|
|
565
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
566
|
+
</li>
|
|
567
|
+
<li class="ivds-footer__section-item">
|
|
568
|
+
<a href="#" class="ivds-footer__section-link">Bug Reports</a>
|
|
569
|
+
</li>
|
|
570
|
+
</ul>
|
|
571
|
+
</div>
|
|
572
|
+
|
|
573
|
+
<div>
|
|
574
|
+
<h3 class="ivds-footer__section-title">Legal</h3>
|
|
575
|
+
<ul class="ivds-footer__section-list">
|
|
576
|
+
<li class="ivds-footer__section-item">
|
|
577
|
+
<a href="#" class="ivds-footer__section-link">Privacy</a>
|
|
578
|
+
</li>
|
|
579
|
+
<li class="ivds-footer__section-item">
|
|
580
|
+
<a href="#" class="ivds-footer__section-link">Terms</a>
|
|
581
|
+
</li>
|
|
582
|
+
<li class="ivds-footer__section-item">
|
|
583
|
+
<a href="#" class="ivds-footer__section-link">License</a>
|
|
584
|
+
</li>
|
|
585
|
+
</ul>
|
|
586
|
+
</div>
|
|
587
|
+
</div>
|
|
588
|
+
|
|
589
|
+
<div class="ivds-footer__bottom">
|
|
590
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
591
|
+
</div>
|
|
592
|
+
</div>
|
|
593
|
+
</footer>
|
|
594
|
+
`;
|
|
595
|
+
|
|
596
|
+
// Mobile responsive view
|
|
597
|
+
export const MobileView = () => `
|
|
598
|
+
<div style="max-width: 375px; margin: 0 auto; border: 1px solid #374151; border-radius: 0.5rem; overflow: hidden;">
|
|
599
|
+
<footer class="ivds-footer">
|
|
600
|
+
<div class="ivds-footer__content">
|
|
601
|
+
<div class="ivds-footer__grid">
|
|
602
|
+
<div>
|
|
603
|
+
<div class="ivds-footer__brand">
|
|
604
|
+
<svg class="ivds-footer__brand-logo" width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
605
|
+
<rect width="32" height="32" rx="8" fill="#f97316"/>
|
|
606
|
+
<path d="M8 12h16v2H8v-2zm0 4h16v2H8v-2zm0 4h10v2H8v-2z" fill="white"/>
|
|
607
|
+
</svg>
|
|
608
|
+
<h3 class="ivds-footer__brand-name">IVDS</h3>
|
|
609
|
+
<p class="ivds-footer__brand-description">
|
|
610
|
+
A comprehensive design system for modern applications.
|
|
611
|
+
</p>
|
|
612
|
+
</div>
|
|
613
|
+
</div>
|
|
614
|
+
|
|
615
|
+
<div>
|
|
616
|
+
<h3 class="ivds-footer__section-title">Quick Links</h3>
|
|
617
|
+
<ul class="ivds-footer__section-list">
|
|
618
|
+
<li class="ivds-footer__section-item">
|
|
619
|
+
<a href="#" class="ivds-footer__section-link">Components</a>
|
|
620
|
+
</li>
|
|
621
|
+
<li class="ivds-footer__section-item">
|
|
622
|
+
<a href="#" class="ivds-footer__section-link">Documentation</a>
|
|
623
|
+
</li>
|
|
624
|
+
<li class="ivds-footer__section-item">
|
|
625
|
+
<a href="#" class="ivds-footer__section-link">Support</a>
|
|
626
|
+
</li>
|
|
627
|
+
</ul>
|
|
628
|
+
</div>
|
|
629
|
+
|
|
630
|
+
<div>
|
|
631
|
+
<h3 class="ivds-footer__section-title">Connect</h3>
|
|
632
|
+
<div class="ivds-footer__social">
|
|
633
|
+
<a href="#" aria-label="GitHub">
|
|
634
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
|
635
|
+
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"/>
|
|
636
|
+
</svg>
|
|
637
|
+
</a>
|
|
638
|
+
<a href="#" aria-label="Twitter">
|
|
639
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
|
|
640
|
+
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"/>
|
|
641
|
+
</svg>
|
|
642
|
+
</a>
|
|
643
|
+
</div>
|
|
644
|
+
</div>
|
|
645
|
+
</div>
|
|
646
|
+
|
|
647
|
+
<div class="ivds-footer__bottom">
|
|
648
|
+
<p>© 2024 IVDS. All rights reserved.</p>
|
|
649
|
+
</div>
|
|
650
|
+
</div>
|
|
651
|
+
</footer>
|
|
652
|
+
|
|
653
|
+
<div style="padding: 1rem; background-color: #1e293b; color: #cbd5e1; text-align: center; font-size: 0.875rem;">
|
|
654
|
+
Mobile view (375px width) - Columns stack vertically
|
|
655
|
+
</div>
|
|
656
|
+
</div>
|
|
657
|
+
`;
|
|
658
|
+
|
|
659
|
+
// Accessibility example
|
|
660
|
+
export const AccessibilityFeatures = () => `
|
|
661
|
+
<footer class="ivds-footer" role="contentinfo">
|
|
662
|
+
<div class="ivds-footer__content">
|
|
663
|
+
<div class="ivds-footer__grid">
|
|
664
|
+
<div>
|
|
665
|
+
<h3 class="ivds-footer__section-title">Navigation</h3>
|
|
666
|
+
<nav aria-label="Footer navigation">
|
|
667
|
+
<ul class="ivds-footer__section-list">
|
|
668
|
+
<li class="ivds-footer__section-item">
|
|
669
|
+
<a href="#" class="ivds-footer__section-link">Home</a>
|
|
670
|
+
</li>
|
|
671
|
+
<li class="ivds-footer__section-item">
|
|
672
|
+
<a href="#" class="ivds-footer__section-link">About</a>
|
|
673
|
+
</li>
|
|
674
|
+
<li class="ivds-footer__section-item">
|
|
675
|
+
<a href="#" class="ivds-footer__section-link">Services</a>
|
|
676
|
+
</li>
|
|
677
|
+
<li class="ivds-footer__section-item">
|
|
678
|
+
<a href="#" class="ivds-footer__section-link">Contact</a>
|
|
679
|
+
</li>
|
|
680
|
+
</ul>
|
|
681
|
+
</nav>
|
|
682
|
+
</div>
|
|
683
|
+
|
|
684
|
+
<div>
|
|
685
|
+
<h3 class="ivds-footer__section-title">Legal</h3>
|
|
686
|
+
<ul class="ivds-footer__section-list">
|
|
687
|
+
<li class="ivds-footer__section-item">
|
|
688
|
+
<a href="#" class="ivds-footer__section-link">Privacy Policy</a>
|
|
689
|
+
</li>
|
|
690
|
+
<li class="ivds-footer__section-item">
|
|
691
|
+
<a href="#" class="ivds-footer__section-link">Terms of Service</a>
|
|
692
|
+
</li>
|
|
693
|
+
<li class="ivds-footer__section-item">
|
|
694
|
+
<a href="#" class="ivds-footer__section-link">Cookie Policy</a>
|
|
695
|
+
</li>
|
|
696
|
+
<li class="ivds-footer__section-item">
|
|
697
|
+
<a href="#" class="ivds-footer__section-link">Accessibility Statement</a>
|
|
698
|
+
</li>
|
|
699
|
+
</ul>
|
|
700
|
+
</div>
|
|
701
|
+
|
|
702
|
+
<div>
|
|
703
|
+
<h3 class="ivds-footer__section-title">Contact Information</h3>
|
|
704
|
+
<address>
|
|
705
|
+
<p>
|
|
706
|
+
<strong>Email:</strong>
|
|
707
|
+
<a href="mailto:hello@ivds.com" class="ivds-footer__section-link">hello@ivds.com</a>
|
|
708
|
+
</p>
|
|
709
|
+
<p>
|
|
710
|
+
<strong>Phone:</strong>
|
|
711
|
+
<a href="tel:+1234567890" class="ivds-footer__section-link">+1 (234) 567-890</a>
|
|
712
|
+
</p>
|
|
713
|
+
<p>
|
|
714
|
+
<strong>Address:</strong><br>
|
|
715
|
+
123 Design Street<br>
|
|
716
|
+
UI City, UX 12345
|
|
717
|
+
</p>
|
|
718
|
+
</address>
|
|
719
|
+
</div>
|
|
720
|
+
</div>
|
|
721
|
+
|
|
722
|
+
<div class="ivds-footer__bottom">
|
|
723
|
+
<p>© 2024 IVDS. All rights reserved. This site follows WCAG 2.1 AA accessibility guidelines.</p>
|
|
724
|
+
</div>
|
|
725
|
+
</div>
|
|
726
|
+
</footer>
|
|
727
|
+
|
|
728
|
+
<div style="padding: 2rem; background-color: #1e293b; color: #cbd5e1;">
|
|
729
|
+
<h2 style="color: #f1f5f9; margin-bottom: 1rem;">Accessibility Features</h2>
|
|
730
|
+
<ul style="line-height: 1.6;">
|
|
731
|
+
<li><strong>Semantic HTML:</strong> Uses proper footer, nav, and address elements</li>
|
|
732
|
+
<li><strong>ARIA Labels:</strong> Navigation sections have descriptive labels</li>
|
|
733
|
+
<li><strong>Focus Management:</strong> All interactive elements have visible focus indicators</li>
|
|
734
|
+
<li><strong>Color Contrast:</strong> Meets WCAG AA standards for text contrast</li>
|
|
735
|
+
<li><strong>Responsive Design:</strong> Content reflows properly on mobile devices</li>
|
|
736
|
+
<li><strong>Screen Reader Support:</strong> Proper heading hierarchy and semantic structure</li>
|
|
737
|
+
<li><strong>Keyboard Navigation:</strong> All links and buttons are keyboard accessible</li>
|
|
738
|
+
</ul>
|
|
739
|
+
</div>
|
|
740
|
+
`;
|