@fpkit/acss 2.1.0 → 3.0.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/libs/{chunk-R7NLLZU2.cjs → chunk-C622WBGW.cjs} +3 -3
- package/libs/{chunk-UJAQVHWC.js → chunk-D2PSO7MU.js} +2 -2
- package/libs/chunk-KG4GHIQJ.js +8 -0
- package/libs/chunk-KG4GHIQJ.js.map +1 -0
- package/libs/chunk-ZOBAJTNE.cjs +17 -0
- package/libs/chunk-ZOBAJTNE.cjs.map +1 -0
- package/libs/components/alert/alert.min.min.css +2 -0
- package/libs/components/badge/badge.min.min.css +2 -0
- package/libs/components/breadcrumbs/breadcrumb.cjs +5 -5
- package/libs/components/breadcrumbs/breadcrumb.d.cts +2 -2
- package/libs/components/breadcrumbs/breadcrumb.d.ts +2 -2
- package/libs/components/breadcrumbs/breadcrumb.js +2 -2
- package/libs/components/breadcrumbs/breadcrumb.min.min.css +2 -0
- package/libs/components/buttons/button.min.min.css +2 -0
- package/libs/components/cards/card-style.min.min.css +2 -0
- package/libs/components/cards/card.min.min.css +2 -0
- package/libs/components/details/details.min.min.css +2 -0
- package/libs/components/dialog/dialog.min.min.css +2 -0
- package/libs/components/form/form.min.min.css +2 -0
- package/libs/components/icons/icon.min.min.css +2 -0
- package/libs/components/images/img.min.min.css +2 -0
- package/libs/components/layout/landmarks.min.min.css +2 -0
- package/libs/components/link/link.cjs +5 -5
- package/libs/components/link/link.css +1 -1
- package/libs/components/link/link.css.map +1 -1
- package/libs/components/link/link.d.cts +2 -131
- package/libs/components/link/link.d.ts +2 -131
- package/libs/components/link/link.js +1 -1
- package/libs/components/link/link.min.css +2 -2
- package/libs/components/link/link.min.min.css +2 -0
- package/libs/components/list/list.min.min.css +2 -0
- package/libs/components/nav/nav.css +1 -1
- package/libs/components/nav/nav.css.map +1 -1
- package/libs/components/nav/nav.min.css +2 -2
- package/libs/components/nav/nav.min.min.css +2 -0
- package/libs/components/progress/progress.min.min.css +2 -0
- package/libs/components/styles/index.min.min.css +2 -0
- package/libs/components/tag/tag.min.min.css +2 -0
- package/libs/components/text-to-speech/text-to-speech.min.min.css +2 -0
- package/libs/hooks.cjs +3 -3
- package/libs/hooks.d.cts +1 -1
- package/libs/hooks.d.ts +1 -1
- package/libs/hooks.js +2 -2
- package/libs/index.cjs +21 -21
- package/libs/index.cjs.map +1 -1
- package/libs/index.css +1 -1
- package/libs/index.css.map +1 -1
- package/libs/index.d.cts +4 -239
- package/libs/index.d.ts +4 -239
- package/libs/index.js +6 -6
- package/libs/index.js.map +1 -1
- package/libs/link-59ad884f.d.ts +371 -0
- package/package.json +2 -2
- package/src/components/link/link.scss +4 -10
- package/src/components/link/link.tsx +17 -2
- package/src/components/nav/nav.scss +1 -1
- package/src/components/nav/nav.stories.tsx +4 -0
- package/src/index.ts +2 -2
- package/src/patterns/page/page-header.tsx +1 -3
- package/src/styles/index.css +6 -10
- package/src/styles/index.css.map +1 -1
- package/src/styles/link/link.css +3 -7
- package/src/styles/link/link.css.map +1 -1
- package/src/styles/nav/nav.css +3 -3
- package/libs/chunk-5PJYLVFY.cjs +0 -17
- package/libs/chunk-5PJYLVFY.cjs.map +0 -1
- package/libs/chunk-NNTBIHSD.js +0 -8
- package/libs/chunk-NNTBIHSD.js.map +0 -1
- /package/libs/{chunk-R7NLLZU2.cjs.map → chunk-C622WBGW.cjs.map} +0 -0
- /package/libs/{chunk-UJAQVHWC.js.map → chunk-D2PSO7MU.js.map} +0 -0
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Props for the Link component.
|
|
5
|
+
*
|
|
6
|
+
* The Link component renders accessible anchor elements with enhanced security,
|
|
7
|
+
* styling variants, and WCAG 2.1 AA compliance. It supports both traditional
|
|
8
|
+
* text links and button-styled links for call-to-action scenarios.
|
|
9
|
+
*
|
|
10
|
+
* ## Accessibility Considerations
|
|
11
|
+
*
|
|
12
|
+
* - External links automatically include `rel="noopener noreferrer"` for security
|
|
13
|
+
* - Links should have descriptive text or `aria-label` for screen readers
|
|
14
|
+
* - Focus indicators must meet WCAG 2.4.7 contrast requirements (3:1 minimum)
|
|
15
|
+
* - Button-styled links maintain semantic `<a>` element for proper navigation
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* // Basic link
|
|
20
|
+
* <Link href="/about">About Us</Link>
|
|
21
|
+
*
|
|
22
|
+
* // External link with prefetch
|
|
23
|
+
* <Link href="https://example.com" target="_blank" prefetch>
|
|
24
|
+
* Visit Example
|
|
25
|
+
* </Link>
|
|
26
|
+
*
|
|
27
|
+
* // Button-styled link
|
|
28
|
+
* <Link href="/signup" btnStyle="primary">
|
|
29
|
+
* <b>Sign Up Now</b>
|
|
30
|
+
* </Link>
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
type LinkProps = {
|
|
34
|
+
/**
|
|
35
|
+
* The URL that the hyperlink points to.
|
|
36
|
+
* Can be relative or absolute, internal or external.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```tsx
|
|
40
|
+
* href="/products"
|
|
41
|
+
* href="https://example.com"
|
|
42
|
+
* href="mailto:hello@example.com"
|
|
43
|
+
* href="tel:+1234567890"
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
href?: string;
|
|
47
|
+
/**
|
|
48
|
+
* Where to display the linked URL.
|
|
49
|
+
*
|
|
50
|
+
* - `_self` (default): Current browsing context
|
|
51
|
+
* - `_blank`: New tab/window (automatically adds security attributes)
|
|
52
|
+
* - `_parent`: Parent browsing context
|
|
53
|
+
* - `_top`: Top-level browsing context
|
|
54
|
+
*
|
|
55
|
+
* Note: When `target="_blank"`, `rel="noopener noreferrer"` is automatically
|
|
56
|
+
* added for security unless explicitly overridden.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```tsx
|
|
60
|
+
* target="_blank" // Opens in new tab with security
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
target?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Relationship between current document and linked URL.
|
|
66
|
+
*
|
|
67
|
+
* Common values:
|
|
68
|
+
* - `noopener`: Prevents window.opener access (security)
|
|
69
|
+
* - `noreferrer`: Prevents referrer header (privacy)
|
|
70
|
+
* - `nofollow`: Hints search engines not to follow (SEO)
|
|
71
|
+
* - `prefetch`: Hints to prefetch the resource (performance)
|
|
72
|
+
*
|
|
73
|
+
* Note: For `target="_blank"`, this component automatically merges
|
|
74
|
+
* `noopener noreferrer` with any user-provided values for security.
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```tsx
|
|
78
|
+
* rel="nofollow noopener"
|
|
79
|
+
* rel="author"
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
rel?: string;
|
|
83
|
+
/**
|
|
84
|
+
* Content to display inside the link.
|
|
85
|
+
*
|
|
86
|
+
* For accessibility, ensure link text is descriptive and meaningful.
|
|
87
|
+
* Avoid generic text like "click here" or "read more" without context.
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```tsx
|
|
91
|
+
* // ✅ Good: Descriptive link text
|
|
92
|
+
* <Link href="/products">View all products</Link>
|
|
93
|
+
*
|
|
94
|
+
* // ❌ Bad: Generic link text without context
|
|
95
|
+
* <Link href="/products">Click here</Link>
|
|
96
|
+
*
|
|
97
|
+
* // ✅ Good: Icon with accessible label
|
|
98
|
+
* <Link href="/home" aria-label="Return to homepage">
|
|
99
|
+
* <HomeIcon aria-hidden="true" />
|
|
100
|
+
* </Link>
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
children: React.ReactNode;
|
|
104
|
+
/**
|
|
105
|
+
* Inline CSS styles to apply to the link element.
|
|
106
|
+
* Can be used to override CSS custom properties.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```tsx
|
|
110
|
+
* styles={{
|
|
111
|
+
* '--link-color': '#ff0000',
|
|
112
|
+
* '--link-decoration': 'underline',
|
|
113
|
+
* }}
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
styles?: React.CSSProperties;
|
|
117
|
+
/**
|
|
118
|
+
* Hints to the browser to prefetch the linked resource.
|
|
119
|
+
*
|
|
120
|
+
* When `true` and `target="_blank"`, adds `rel="prefetch"` along with
|
|
121
|
+
* security attributes. This can improve perceived performance but should
|
|
122
|
+
* be used judiciously as it consumes bandwidth.
|
|
123
|
+
*
|
|
124
|
+
* Note: Browser support varies. Modern browsers may ignore this hint.
|
|
125
|
+
*
|
|
126
|
+
* @default false
|
|
127
|
+
* @example
|
|
128
|
+
* ```tsx
|
|
129
|
+
* <Link href="/next-page" prefetch>Next Page</Link>
|
|
130
|
+
* ```
|
|
131
|
+
*/
|
|
132
|
+
prefetch?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* Applies button-like styling to the link.
|
|
135
|
+
*
|
|
136
|
+
* When set, the link renders with button styling including padding,
|
|
137
|
+
* borders, and hover effects while maintaining semantic anchor behavior.
|
|
138
|
+
*
|
|
139
|
+
* Common values:
|
|
140
|
+
* - `"btn"`: Standard button styling
|
|
141
|
+
* - `"pill"`: Rounded pill button styling
|
|
142
|
+
*
|
|
143
|
+
* Alternative: Wrap children in `<b>` or `<i>` tags for automatic styling:
|
|
144
|
+
* - `<b>`: Applies button styling
|
|
145
|
+
* - `<i>`: Applies pill styling
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```tsx
|
|
149
|
+
* // Using btnStyle prop
|
|
150
|
+
* <Link href="/signup" btnStyle="btn">Sign Up</Link>
|
|
151
|
+
*
|
|
152
|
+
* // Using child wrapper (automatic detection)
|
|
153
|
+
* <Link href="/signup"><b>Sign Up</b></Link>
|
|
154
|
+
* <Link href="/signup"><i>Pill Button</i></Link>
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
btnStyle?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Event handler called when the link is clicked or activated.
|
|
160
|
+
*
|
|
161
|
+
* **Recommended for most use cases**, especially analytics and tracking.
|
|
162
|
+
* This event fires for:
|
|
163
|
+
* - Mouse clicks
|
|
164
|
+
* - Touch/tap interactions
|
|
165
|
+
* - Keyboard activation (Enter key)
|
|
166
|
+
* - Assistive technology activation
|
|
167
|
+
*
|
|
168
|
+
* Use `onClick` when you need to track ALL user activations, including
|
|
169
|
+
* keyboard users. This ensures full accessibility coverage.
|
|
170
|
+
*
|
|
171
|
+
* @param event - The mouse event
|
|
172
|
+
* @example
|
|
173
|
+
* ```tsx
|
|
174
|
+
* // ✅ RECOMMENDED: onClick tracks all activation methods
|
|
175
|
+
* <Link
|
|
176
|
+
* href="/products"
|
|
177
|
+
* onClick={(e) => {
|
|
178
|
+
* trackEvent('link_click', { href: '/products' });
|
|
179
|
+
* }}
|
|
180
|
+
* >
|
|
181
|
+
* Products
|
|
182
|
+
* </Link>
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
|
|
186
|
+
/**
|
|
187
|
+
* Event handler called when a pointer device button is pressed on the link.
|
|
188
|
+
*
|
|
189
|
+
* Use this for specific pointer interactions like:
|
|
190
|
+
* - Drag-and-drop detection
|
|
191
|
+
* - Touch gesture recognition
|
|
192
|
+
* - Distinguishing input types (mouse vs touch vs pen)
|
|
193
|
+
* - Providing early visual feedback before click completes
|
|
194
|
+
*
|
|
195
|
+
* **⚠️ Accessibility Note**: Unlike `onClick`, this does NOT fire for
|
|
196
|
+
* keyboard activation (Enter key). If you need to track all user interactions
|
|
197
|
+
* including keyboard users, use `onClick` instead.
|
|
198
|
+
*
|
|
199
|
+
* @param event - The pointer event
|
|
200
|
+
* @example
|
|
201
|
+
* ```tsx
|
|
202
|
+
* // Use onPointerDown for pointer-specific interactions
|
|
203
|
+
* <Link
|
|
204
|
+
* href="/products"
|
|
205
|
+
* onPointerDown={(e) => {
|
|
206
|
+
* // Distinguish between mouse (2), touch (5), and pen (3)
|
|
207
|
+
* console.log('Pointer type:', e.pointerType);
|
|
208
|
+
* }}
|
|
209
|
+
* >
|
|
210
|
+
* Products
|
|
211
|
+
* </Link>
|
|
212
|
+
* ```
|
|
213
|
+
*
|
|
214
|
+
* @example
|
|
215
|
+
* ```tsx
|
|
216
|
+
* // ✅ Use both handlers together for comprehensive tracking
|
|
217
|
+
* <Link
|
|
218
|
+
* href="/products"
|
|
219
|
+
* onClick={(e) => trackAllActivations(e)}
|
|
220
|
+
* onPointerDown={(e) => provideFeedback(e)}
|
|
221
|
+
* >
|
|
222
|
+
* Products
|
|
223
|
+
* </Link>
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
onPointerDown?: (event: React.PointerEvent<HTMLAnchorElement>) => void;
|
|
227
|
+
/**
|
|
228
|
+
* Icon element to display in the link (used by IconLink).
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```tsx
|
|
232
|
+
* <IconLink href="/home" icon={<HomeIcon />} />
|
|
233
|
+
* ```
|
|
234
|
+
*/
|
|
235
|
+
icon?: React.ReactNode;
|
|
236
|
+
} & Omit<React.ComponentPropsWithoutRef<"a">, 'style'>;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Link - A semantic, accessible anchor component with enhanced security and styling.
|
|
240
|
+
*
|
|
241
|
+
* The Link component renders accessible `<a>` elements with automatic security
|
|
242
|
+
* attributes for external links, customizable styling variants, and full WCAG 2.1
|
|
243
|
+
* AA compliance. It supports traditional text links, button-styled links, and
|
|
244
|
+
* programmatic focus management via ref forwarding.
|
|
245
|
+
*
|
|
246
|
+
* ## Features
|
|
247
|
+
*
|
|
248
|
+
* - 🔒 **Automatic Security**: External links get `rel="noopener noreferrer"`
|
|
249
|
+
* - ♿ **WCAG 2.1 AA Compliant**: Accessible focus indicators and semantic HTML
|
|
250
|
+
* - 🎨 **Flexible Styling**: Text links, button links, and pill variants
|
|
251
|
+
* - ⚡ **Performance**: Optional prefetch hints for faster navigation
|
|
252
|
+
* - 🎯 **Ref Forwarding**: Direct DOM access for focus management and scroll
|
|
253
|
+
* - 🧪 **Type-Safe**: Full TypeScript support with comprehensive prop types
|
|
254
|
+
*
|
|
255
|
+
* ## Accessibility
|
|
256
|
+
*
|
|
257
|
+
* - ✅ Semantic `<a>` element for proper keyboard navigation
|
|
258
|
+
* - ✅ Focus indicators meet WCAG 2.4.7 (3:1 contrast ratio)
|
|
259
|
+
* - ✅ Screen readers announce link purpose and destination
|
|
260
|
+
* - ✅ External links include security attributes automatically
|
|
261
|
+
* - ✅ Supports `aria-label` for icon-only or ambiguous links
|
|
262
|
+
* - ✅ Ref forwarding enables skip-link patterns
|
|
263
|
+
*
|
|
264
|
+
* @example
|
|
265
|
+
* // Basic internal link
|
|
266
|
+
* <Link href="/about">About Us</Link>
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* // External link with automatic security
|
|
270
|
+
* <Link href="https://example.com" target="_blank">
|
|
271
|
+
* Visit Example
|
|
272
|
+
* </Link>
|
|
273
|
+
*
|
|
274
|
+
* @example
|
|
275
|
+
* // Button-styled call-to-action link
|
|
276
|
+
* <Link href="/signup">
|
|
277
|
+
* <b>Get Started</b>
|
|
278
|
+
* </Link>
|
|
279
|
+
*
|
|
280
|
+
* @example
|
|
281
|
+
* // Icon-only link with accessible label
|
|
282
|
+
* <Link href="/settings" aria-label="Open settings">
|
|
283
|
+
* <SettingsIcon aria-hidden="true" />
|
|
284
|
+
* </Link>
|
|
285
|
+
*
|
|
286
|
+
* @example
|
|
287
|
+
* // Analytics tracking with onClick (includes keyboard users)
|
|
288
|
+
* <Link
|
|
289
|
+
* href="/products"
|
|
290
|
+
* onClick={(e) => trackEvent('link_click', { href: '/products' })}
|
|
291
|
+
* >
|
|
292
|
+
* Browse Products
|
|
293
|
+
* </Link>
|
|
294
|
+
*
|
|
295
|
+
* @example
|
|
296
|
+
* // Skip link with ref forwarding for focus management
|
|
297
|
+
* const mainRef = useRef<HTMLAnchorElement>(null);
|
|
298
|
+
*
|
|
299
|
+
* <Link ref={mainRef} href="#main-content">
|
|
300
|
+
* Skip to main content
|
|
301
|
+
* </Link>
|
|
302
|
+
*
|
|
303
|
+
* @example
|
|
304
|
+
* // Custom styled link with CSS variables
|
|
305
|
+
* <Link
|
|
306
|
+
* href="/products"
|
|
307
|
+
* styles={{
|
|
308
|
+
* '--link-color': '#0066cc',
|
|
309
|
+
* '--link-decoration': 'underline',
|
|
310
|
+
* }}
|
|
311
|
+
* >
|
|
312
|
+
* Browse Products
|
|
313
|
+
* </Link>
|
|
314
|
+
*
|
|
315
|
+
* @example
|
|
316
|
+
* // ✅ GOOD: Descriptive link text
|
|
317
|
+
* <Link href="/docs/installation">
|
|
318
|
+
* Read installation guide
|
|
319
|
+
* </Link>
|
|
320
|
+
*
|
|
321
|
+
* @example
|
|
322
|
+
* // ❌ BAD: Generic link text (poor for screen readers)
|
|
323
|
+
* <Link href="/docs/installation">
|
|
324
|
+
* Click here
|
|
325
|
+
* </Link>
|
|
326
|
+
*
|
|
327
|
+
* @see {@link LinkProps} for complete prop documentation
|
|
328
|
+
*/
|
|
329
|
+
declare const Link: React.ForwardRefExoticComponent<{
|
|
330
|
+
href?: string | undefined;
|
|
331
|
+
target?: string | undefined;
|
|
332
|
+
rel?: string | undefined;
|
|
333
|
+
children: React.ReactNode;
|
|
334
|
+
styles?: React.CSSProperties | undefined;
|
|
335
|
+
prefetch?: boolean | undefined;
|
|
336
|
+
btnStyle?: string | undefined;
|
|
337
|
+
onClick?: ((event: React.MouseEvent<HTMLAnchorElement, MouseEvent>) => void) | undefined;
|
|
338
|
+
onPointerDown?: ((event: React.PointerEvent<HTMLAnchorElement>) => void) | undefined;
|
|
339
|
+
icon?: React.ReactNode;
|
|
340
|
+
} & Omit<Omit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "ref">, "style"> & React.RefAttributes<HTMLAnchorElement>>;
|
|
341
|
+
declare const IconLink: React.ForwardRefExoticComponent<{
|
|
342
|
+
href?: string | undefined;
|
|
343
|
+
target?: string | undefined;
|
|
344
|
+
rel?: string | undefined;
|
|
345
|
+
children: React.ReactNode;
|
|
346
|
+
styles?: React.CSSProperties | undefined;
|
|
347
|
+
prefetch?: boolean | undefined;
|
|
348
|
+
btnStyle?: string | undefined;
|
|
349
|
+
onClick?: ((event: React.MouseEvent<HTMLAnchorElement, MouseEvent>) => void) | undefined;
|
|
350
|
+
onPointerDown?: ((event: React.PointerEvent<HTMLAnchorElement>) => void) | undefined;
|
|
351
|
+
icon?: React.ReactNode;
|
|
352
|
+
} & Omit<Omit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "ref">, "style"> & React.RefAttributes<HTMLAnchorElement>>;
|
|
353
|
+
declare const LinkButton: React.ForwardRefExoticComponent<{
|
|
354
|
+
href?: string | undefined;
|
|
355
|
+
target?: string | undefined;
|
|
356
|
+
rel?: string | undefined;
|
|
357
|
+
children: React.ReactNode;
|
|
358
|
+
styles?: React.CSSProperties | undefined;
|
|
359
|
+
prefetch?: boolean | undefined;
|
|
360
|
+
btnStyle?: string | undefined;
|
|
361
|
+
onClick?: ((event: React.MouseEvent<HTMLAnchorElement, MouseEvent>) => void) | undefined;
|
|
362
|
+
onPointerDown?: ((event: React.PointerEvent<HTMLAnchorElement>) => void) | undefined;
|
|
363
|
+
icon?: React.ReactNode;
|
|
364
|
+
} & Omit<Omit<React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "ref">, "style"> & React.RefAttributes<HTMLAnchorElement>>;
|
|
365
|
+
interface LinkComponent extends React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>> {
|
|
366
|
+
LinkButton: typeof LinkButton;
|
|
367
|
+
IconLink: typeof IconLink;
|
|
368
|
+
}
|
|
369
|
+
declare const _default: LinkComponent;
|
|
370
|
+
|
|
371
|
+
export { IconLink as I, LinkProps as L, _default as _, Link as a, LinkButton as b, LinkComponent as c };
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@fpkit/acss",
|
|
3
3
|
"description": "A lightweight React UI library for building modern and accessible components that leverage CSS custom properties for reactive Styles.",
|
|
4
4
|
"private": false,
|
|
5
|
-
"version": "
|
|
5
|
+
"version": "3.0.0",
|
|
6
6
|
"engines": {
|
|
7
7
|
"node": ">=22.12.0",
|
|
8
8
|
"npm": ">=8.0.0"
|
|
@@ -126,5 +126,5 @@
|
|
|
126
126
|
"publishConfig": {
|
|
127
127
|
"access": "public"
|
|
128
128
|
},
|
|
129
|
-
"gitHead": "
|
|
129
|
+
"gitHead": "8859374ed9b44a9db531f81052a77f401e1ce572"
|
|
130
130
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@use
|
|
1
|
+
@use "../../sass/mixins";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Link Component Styles
|
|
@@ -33,7 +33,7 @@ a[href] {
|
|
|
33
33
|
--link-padding-block: 0;
|
|
34
34
|
|
|
35
35
|
// Transitions
|
|
36
|
-
--link-transition: all 0.
|
|
36
|
+
--link-transition: all 0.35s ease-in-out;
|
|
37
37
|
|
|
38
38
|
// Focus Indicator (WCAG 2.4.7 - 3:1 contrast minimum)
|
|
39
39
|
--link-focus-color: currentColor;
|
|
@@ -66,18 +66,12 @@ a[href] {
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
// Focus state - WCAG 2.4.7 compliant focus indicator
|
|
69
|
-
&:focus {
|
|
70
|
-
outline: var(--link-focus-width) var(--link-focus-style)
|
|
71
|
-
var(--link-focus-color);
|
|
72
|
-
outline-offset: var(--link-focus-offset);
|
|
73
|
-
--link-decoration: underline;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
69
|
// Focus-visible for better UX (only show outline on keyboard focus)
|
|
77
70
|
&:focus-visible {
|
|
78
71
|
outline: var(--link-focus-width) var(--link-focus-style)
|
|
79
72
|
var(--link-focus-color);
|
|
80
73
|
outline-offset: var(--link-focus-offset);
|
|
74
|
+
font-weight: bold;
|
|
81
75
|
}
|
|
82
76
|
|
|
83
77
|
// Visited and active states
|
|
@@ -130,7 +124,7 @@ a[href] {
|
|
|
130
124
|
}
|
|
131
125
|
|
|
132
126
|
// Pill variant (rounded corners)
|
|
133
|
-
&[data-link~=
|
|
127
|
+
&[data-link~="pill"],
|
|
134
128
|
&:has(> i) {
|
|
135
129
|
--link-radius: 99rem;
|
|
136
130
|
--link-decoration: none;
|
|
@@ -182,8 +182,23 @@ export const LinkButton = React.forwardRef<HTMLAnchorElement, LinkProps>(
|
|
|
182
182
|
}
|
|
183
183
|
);
|
|
184
184
|
|
|
185
|
+
Link.displayName = "Link";
|
|
185
186
|
IconLink.displayName = "IconLink";
|
|
186
187
|
LinkButton.displayName = "LinkButton";
|
|
187
|
-
Link.displayName = "Link";
|
|
188
188
|
|
|
189
|
-
|
|
189
|
+
// Compound component pattern - attach subcomponents to Link with proper typing
|
|
190
|
+
export interface LinkComponent
|
|
191
|
+
extends React.ForwardRefExoticComponent<
|
|
192
|
+
LinkProps & React.RefAttributes<HTMLAnchorElement>
|
|
193
|
+
> {
|
|
194
|
+
LinkButton: typeof LinkButton;
|
|
195
|
+
IconLink: typeof IconLink;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// Attach subcomponents to Link using Object.assign for better type inference
|
|
199
|
+
const LinkWithSubcomponents = Object.assign(Link, {
|
|
200
|
+
LinkButton,
|
|
201
|
+
IconLink,
|
|
202
|
+
});
|
|
203
|
+
|
|
204
|
+
export default LinkWithSubcomponents as LinkComponent;
|
|
@@ -5,6 +5,7 @@ import React from "react";
|
|
|
5
5
|
|
|
6
6
|
import Nav from "./nav";
|
|
7
7
|
import Link from "../link/link";
|
|
8
|
+
import Button from "../buttons/button";
|
|
8
9
|
|
|
9
10
|
const meta: Meta<typeof Nav> = {
|
|
10
11
|
title: "FP.REACT Components/Nav",
|
|
@@ -61,6 +62,9 @@ const meta: Meta<typeof Nav> = {
|
|
|
61
62
|
<Nav.Item>
|
|
62
63
|
<Link href="/">Link 2</Link>
|
|
63
64
|
</Nav.Item>
|
|
65
|
+
<Nav.Item>
|
|
66
|
+
<Button type="button">Button</Button>
|
|
67
|
+
</Nav.Item>
|
|
64
68
|
</Nav.List>
|
|
65
69
|
),
|
|
66
70
|
id: "nav",
|
package/src/index.ts
CHANGED
|
@@ -23,9 +23,9 @@ export { Input, type InputProps } from "./components/form/inputs";
|
|
|
23
23
|
export { Icon, type IconProps } from "./components/icons/icon";
|
|
24
24
|
export { Img } from "./components/images/img";
|
|
25
25
|
export type { ImgProps } from "./components/images/img.types";
|
|
26
|
-
export { Link } from "./components/link/link";
|
|
26
|
+
export { default as Link } from "./components/link/link";
|
|
27
27
|
export type { LinkProps } from "./components/link/link.types";
|
|
28
|
-
export { List, type ListItemProps } from "./components/list/list";
|
|
28
|
+
export { default as List, type ListProps, type ListItemProps } from "./components/list/list";
|
|
29
29
|
export { Modal, type ModalProps } from "./components/modal/modal";
|
|
30
30
|
export { Popover, type PopoverProps } from "./components/popover/popover";
|
|
31
31
|
export { RenderTable as TBL, type TableProps } from "./components/tables/table";
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react'
|
|
2
2
|
import Landmarks from '#components/layout/landmarks'
|
|
3
3
|
import Heading from '#components/heading/heading'
|
|
4
|
-
import { Link } from '#components/link/link'
|
|
5
|
-
import { ComponentProps } from '#types'
|
|
6
4
|
|
|
7
5
|
export enum HeaderVariants {
|
|
8
6
|
Cover = 'cover',
|
package/src/styles/index.css
CHANGED
|
@@ -1088,11 +1088,11 @@ a[href] {
|
|
|
1088
1088
|
--link-radius: 0.25rem;
|
|
1089
1089
|
--link-padding-inline: 0;
|
|
1090
1090
|
--link-padding-block: 0;
|
|
1091
|
-
--link-transition: all 0.
|
|
1091
|
+
--link-transition: all 0.35s ease-in-out;
|
|
1092
1092
|
--link-focus-color: currentColor;
|
|
1093
1093
|
--link-focus-width: 0.125rem;
|
|
1094
1094
|
--link-focus-offset: 0.125rem;
|
|
1095
|
-
--link-focus-style:
|
|
1095
|
+
--link-focus-style: none;
|
|
1096
1096
|
color: var(--link-color);
|
|
1097
1097
|
font-size: var(--link-fs);
|
|
1098
1098
|
font-weight: var(--link-fw);
|
|
@@ -1112,14 +1112,10 @@ a[href] > b {
|
|
|
1112
1112
|
a[href]:hover {
|
|
1113
1113
|
--link-decoration: underline;
|
|
1114
1114
|
}
|
|
1115
|
-
a[href]:focus {
|
|
1116
|
-
outline: var(--link-focus-width) var(--link-focus-style) var(--link-focus-color);
|
|
1117
|
-
outline-offset: var(--link-focus-offset);
|
|
1118
|
-
--link-decoration: underline;
|
|
1119
|
-
}
|
|
1120
1115
|
a[href]:focus-visible {
|
|
1121
1116
|
outline: var(--link-focus-width) var(--link-focus-style) var(--link-focus-color);
|
|
1122
1117
|
outline-offset: var(--link-focus-offset);
|
|
1118
|
+
font-weight: bold;
|
|
1123
1119
|
}
|
|
1124
1120
|
a[href]:visited, a[href]:active {
|
|
1125
1121
|
--link-color: currentColor;
|
|
@@ -1606,9 +1602,9 @@ body > nav ul > li:hover,
|
|
|
1606
1602
|
.navbar ul > li:hover {
|
|
1607
1603
|
background-color: var(--nav-hover-bg, #e8e8e8);
|
|
1608
1604
|
}
|
|
1609
|
-
body > nav ul > li:hover:
|
|
1610
|
-
[aria-label~=navbar] ul > li:hover:
|
|
1611
|
-
.navbar ul > li:hover:
|
|
1605
|
+
body > nav ul > li:hover:has(img, button),
|
|
1606
|
+
[aria-label~=navbar] ul > li:hover:has(img, button),
|
|
1607
|
+
.navbar ul > li:hover:has(img, button) {
|
|
1612
1608
|
background-color: transparent;
|
|
1613
1609
|
}
|
|
1614
1610
|
|
package/src/styles/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../sass/_reset.scss","../sass/_properties.scss","../sass/_globals.scss","../sass/_elements.scss","utilities/_disabled.scss","../components/buttons/button.scss","../components/tag/tag.scss","../components/images/img.scss","../components/cards/card.scss","../components/progress/progress.scss","../components/details/details.scss","../components/link/link.scss","../sass/_mixins.scss","../components/layout/_header.scss","../components/layout/landmarks.scss","../components/dialog/dialog.scss","../sass/_grid.scss","../components/badge/badge.scss","../components/nav/nav.scss","../components/form/form.scss","../components/breadcrumbs/breadcrumb.scss","../components/list/list.scss","../components/alert/alert.scss","../components/text-to-speech/text-to-speech.scss","../sass/styles/_shadows.scss","../sass/styles/_colors.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;EAGE;;;AAGF;AACE;AACA;EACA;AAEA;AACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;AAAA;EAEE;EACA;;;AAGF;AACA;EACE;;;AAGF;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAUE;;;AAGF;AAWA;AACA;EACE;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AACA;AAAA;AAAA;AAAA;EAIE;EACA;EACA;;;AAGF;AAAA;AAAA;EAGE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AACA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;AACA;EACE;IACE;;EAGF;AAAA;AAAA;IAGE;IACA;IACA;IACA;;;AAIJ;AACA;AAAA;EAEE;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAOE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AACA;EACE;;;AAGF;EACE;AAEA;AAGA;EACA;;AAEA;EACE;EACA;EACA;;;ACpLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EAGA;EAEA;EAEA;EAEA;EAEA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;;ACzGF;EACE;AAAA;AAAA;EAGA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AACA;EACE;;;AAKN;EACE;;;AAGF;AAAA;AAAA;AAAA;EAIE;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;;AAEF;AAAA;AAAA;AAAA;EACE;;;AAKF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;AAAA;EAEE;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;EAEE;EACA;EACA;;AAEF;AAAA;EACE;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACrIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACdJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBA;AAAA;AAEE;EACA;EACA;AACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAgBA;AAAA;AACE;EACA;EACA;EACA;AACA;EACA;;;ACxDJ;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EAEE;EACA;;AAGF;EAEE;;AAGA;EACE;;AAOJ;EAEE;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EAGE;;AAGF;AAAA;EAEE;EACA;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;;;AClJN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIE;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;AAAA;AASA;AAKA;AAAA;AAAA;AAAA;AAAA;AAMA;AAcA;AAcA;AAcA;;AA1DA;AAAA;AAAA;AAAA;EACE;EACA;;AAIF;AAAA;AAAA;AAAA;EACE;;AAUF;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;;AAKN;AAAA;AAAA;AAAA;AAIA;EACE;EACA;;;AChIF;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;AAEA;EACA;EACA;AAEA;EACA;;;AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;;ACvDN;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAEA;EAEA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;AAAA;EAEE;EACA;;AAEF;AAAA;EACE;;AAEF;AAAA;EACE;EACA;EACA;;AAGF;AAAA;EACE;;AAEF;AAAA;EAEE;;AAEF;AAAA;EACE;;AAIF;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;;AAGF;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;;;AAKJ;EACE;EACA;;AAEA;EACE;EACA;;AAIF;EACE;EACA;;AAIF;EACE;;;ACjGJ;AACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;AACA;AACA;AA8BA;;AA7BA;EAEE;EACA;EACA;EACA;AAgBA;;AAbA;AACE;EACA;EACA;;AAIF;AACE;EACA;EACA;;AAIF;AACE;EACA;EACA;;AAKJ;EAEE;EACA;EAEA;AAcA;;AAZA;AACE;EAEA;;AAGF;EAGE;;AAIF;AACE;EAEA;;;ACjEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAjCF;IAkCI;IACA;;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAIF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAYA;;AAVA;EACE;;AAGF;EACE;EACA;EACA;;AAIF;EACE;;AAEF;EACE;;AAKF;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;;AACA;EACE;;AAEF;EACE;;AACA;EAFF;IAGI;;;AAKN;EACE;IAxHJ;MAyHM;MACA;;;;;ACxHN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EAEE;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;EAEE;EACA;;AAIF;EACE;;AAIF;EACE;EAEA;EACA;;AAIF;EACE;EAEA;;AAIF;EAEE;;AAIF;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EC7GF;EACA;EACA;EACA;EACA;;AD6GE;EAEE;EAEA;EACA;;AAIF;EACE;;ACtHJ;EACE;;AD6HF;EAEE;EACA;EACA;;AAEA;EAGE;;;AE7IN;AAAA;AAAA;EAIE;EAEA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;EACE;EAEA;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;;AChEN;AAAA;EAEE;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;;AACA;AAAA;EAEE;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AAEF;AAAA;EACE;EACA;;;AAON;EACE;EACA;EACA;EACA;EACA;;;AChDJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;IACE;IACA;IACA;IACA;IACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;AAOA;AAQA;;AAbA;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;;AAIF;EACE;;;AAKN;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;AAAA;EACE;EACA;;AAGF;AAAA;EACE;;;AC3HJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EAEA;EACA;EACA;;AACA;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EAIA;EACA;EACA;EACA;EACA;;;AClGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;;ACnCN;AAAA;AAAA;EAGE;EACA;;AAEA;EANF;AAAA;AAAA;IAOI;IACA;IACA;IACA;IACA;;;AAGA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;EACE;;;AAMR;EAEE;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;;AAKF;EACE;;AAKF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAIF;EACE;EAEA;;AAGF;EACE;EAEA;;AAGF;EACE;EAEA;;AAGF;EACE;EAEA;;;ACxHJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EAEA;EACA;;;AAGF;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AAGF;EACE;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;AAKA;AAAA;AAAA;EACE;EACA;;AACA;AAAA;AAAA;EACE;;AAKN;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACrGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;;AAEF;AAAA;EACE;;AACA;AAAA;EACE;EACA;;;AC7BV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;EAIE;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;;;AAOF;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;EACA;;;AAQJ;EACE;;AAGA;EACE;EACA;;AAIF;EACE;;AAEA;EACE;;;AASN;EACE;;AAGA;EACE;EACA;;AAIF;EACE;;AAEA;EACE;;;AASN;EACE;EACA;EACA;EAQA;;AALA;EACE;;;AAWJ;EACE;;;AAIF;EACE;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAYF;AAAA;AAAA;EACE;EACA;;AAEA;AAAA;AAAA;EACE;;AAKJ;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAKJ;AAAA;AAAA;EACE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAKA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;;AAMN;AAAA;AAAA;EACE;EACA;EACA;;AAIF;AAAA;AAAA;EACE;EACA;;;AASJ;AAAA;EAGE;;;AAIF;AAAA;EAGE;;;AAOF;EACE;AAAA;AAAA;IAIE;IACA;;EAIF;AAAA;IAEE;;;AAQJ;EAEE;AAAA;AAAA;AAAA;AAAA;AAAA;IAME;IACA;;;AC1RJ;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACE;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA,YACE;EAEF;EACA;AAWA;AAMA;AAmEA;AA8BA;AAKA;;AArHA;EACE;EACA;;AAGF;EAlDF;IAmDI;;;AAIF;EACE;EACA;;AAIF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;AAEA;AASA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAIF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAIA;EACE;EACA;;AAKJ;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;;AAIF;AACE;;AAGF;EACE;;;ACrLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;;AACA;AAAA;EAEE;;AACA;AAAA;EACE;;;AC3BN;EACE;EACA;EACA;AAAA;EAEA;AAAA;EAEA;AAAA;EAEA;AAAA;;;AAIF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AChCF;EACE;;;AAGF;EACE;;AACA;EACE;;AAEF;EACE","file":"index.css"}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../sass/_reset.scss","../sass/_properties.scss","../sass/_globals.scss","../sass/_elements.scss","utilities/_disabled.scss","../components/buttons/button.scss","../components/tag/tag.scss","../components/images/img.scss","../components/cards/card.scss","../components/progress/progress.scss","../components/details/details.scss","../components/link/link.scss","../sass/_mixins.scss","../components/layout/_header.scss","../components/layout/landmarks.scss","../components/dialog/dialog.scss","../sass/_grid.scss","../components/badge/badge.scss","../components/nav/nav.scss","../components/form/form.scss","../components/breadcrumbs/breadcrumb.scss","../components/list/list.scss","../components/alert/alert.scss","../components/text-to-speech/text-to-speech.scss","../sass/styles/_shadows.scss","../sass/styles/_colors.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;EAGE;;;AAGF;AACE;AACA;EACA;AAEA;AACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;AAAA;EAEE;EACA;;;AAGF;AACA;EACE;;;AAGF;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAUE;;;AAGF;AAWA;AACA;EACE;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AACA;AAAA;AAAA;AAAA;EAIE;EACA;EACA;;;AAGF;AAAA;AAAA;EAGE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AACA;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;AACA;EACE;IACE;;EAGF;AAAA;AAAA;IAGE;IACA;IACA;IACA;;;AAIJ;AACA;AAAA;EAEE;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAOE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AACA;EACE;;;AAGF;EACE;AAEA;AAGA;EACA;;AAEA;EACE;EACA;EACA;;;ACpLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EAGA;EAEA;EAEA;EAEA;EAEA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;;ACzGF;EACE;AAAA;AAAA;EAGA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AACA;EACE;;;AAKN;EACE;;;AAGF;AAAA;AAAA;AAAA;EAIE;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;;AAEF;AAAA;AAAA;AAAA;EACE;;;AAKF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;AAAA;EAEE;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;EAEE;EACA;EACA;;AAEF;AAAA;EACE;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACrIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACdJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBA;AAAA;AAEE;EACA;EACA;AACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAgBA;AAAA;AACE;EACA;EACA;EACA;AACA;EACA;;;ACxDJ;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EAEE;EACA;;AAGF;EAEE;;AAGA;EACE;;AAOJ;EAEE;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EAGE;;AAGF;AAAA;EAEE;EACA;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;;;AClJN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIE;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;AAAA;AASA;AAKA;AAAA;AAAA;AAAA;AAAA;AAMA;AAcA;AAcA;AAcA;;AA1DA;AAAA;AAAA;AAAA;EACE;EACA;;AAIF;AAAA;AAAA;AAAA;EACE;;AAUF;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAKJ;AAAA;AAAA;AAAA;EACE;EACA;AAEA;;AACA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;;AAKN;AAAA;AAAA;AAAA;AAIA;EACE;EACA;;;AChIF;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;AAEA;EACA;EACA;AAEA;EACA;;;AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;;ACvDN;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAEA;EAEA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;AAAA;EAEE;EACA;;AAEF;AAAA;EACE;;AAEF;AAAA;EACE;EACA;EACA;;AAGF;AAAA;EACE;;AAEF;AAAA;EAEE;;AAEF;AAAA;EACE;;AAIF;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;;AAGF;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;;;AAKJ;EACE;EACA;;AAEA;EACE;EACA;;AAIF;EACE;EACA;;AAIF;EACE;;;ACjGJ;AACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;AACA;AACA;AA8BA;;AA7BA;EAEE;EACA;EACA;EACA;AAgBA;;AAbA;AACE;EACA;EACA;;AAIF;AACE;EACA;EACA;;AAIF;AACE;EACA;EACA;;AAKJ;EAEE;EACA;EAEA;AAcA;;AAZA;AACE;EAEA;;AAGF;EAGE;;AAIF;AACE;EAEA;;;ACjEN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAjCF;IAkCI;IACA;;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAIF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAYA;;AAVA;EACE;;AAGF;EACE;EACA;EACA;;AAIF;EACE;;AAEF;EACE;;AAKF;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;;AACA;EACE;;AAEF;EACE;;AACA;EAFF;IAGI;;;AAKN;EACE;IAxHJ;MAyHM;MACA;;;;;ACxHN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EAEE;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;EAEE;EACA;;AAIF;EACE;;AAKF;EACE;EAEA;EACA;;AAIF;EAEE;;AAIF;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ECvGF;EACA;EACA;EACA;EACA;;ADuGE;EAEE;EAEA;EACA;;AAIF;EACE;;AChHJ;EACE;;ADuHF;EAEE;EACA;EACA;;AAEA;EAGE;;;AEvIN;AAAA;AAAA;EAIE;EAEA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;EACE;EAEA;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;;AChEN;AAAA;EAEE;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;;AACA;AAAA;EAEE;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AAEF;AAAA;EACE;EACA;;;AAON;EACE;EACA;EACA;EACA;EACA;;;AChDJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;IACE;IACA;IACA;IACA;IACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;AAOA;AAQA;;AAbA;EACE;EACA;;AAIF;EACE;EACA;EACA;EACA;;AAIF;EACE;;;AAKN;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;AAAA;EACE;EACA;;AAGF;AAAA;EACE;;;AC3HJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EAEA;EACA;EACA;;AACA;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EAIA;EACA;EACA;EACA;EACA;;;AClGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;;;ACnCN;AAAA;AAAA;EAGE;EACA;;AAEA;EANF;AAAA;AAAA;IAOI;IACA;IACA;IACA;IACA;;;AAGA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;;AAEF;AAAA;AAAA;EACE;;;AAMR;EAEE;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;;AAKF;EACE;;AAKF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAIF;EACE;EAEA;;AAGF;EACE;EAEA;;AAGF;EACE;EAEA;;AAGF;EACE;EAEA;;;ACxHJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EAEA;EACA;;;AAGF;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;;AAGF;EACE;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;AAKA;AAAA;AAAA;EACE;EACA;;AACA;AAAA;AAAA;EACE;;AAKN;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACrGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;;AACA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;EACE;;AAEF;AAAA;EACE;;AACA;AAAA;EACE;EACA;;;AC7BV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;EAIE;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;;;AAOF;AAAA;AAAA;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;EACA;;;AAQJ;EACE;;AAGA;EACE;EACA;;AAIF;EACE;;AAEA;EACE;;;AASN;EACE;;AAGA;EACE;EACA;;AAIF;EACE;;AAEA;EACE;;;AASN;EACE;EACA;EACA;EAQA;;AALA;EACE;;;AAWJ;EACE;;;AAIF;EACE;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAYF;AAAA;AAAA;EACE;EACA;;AAEA;AAAA;AAAA;EACE;;AAKJ;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAKJ;AAAA;AAAA;EACE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAKA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;;AAMN;AAAA;AAAA;EACE;EACA;EACA;;AAIF;AAAA;AAAA;EACE;EACA;;;AASJ;AAAA;EAGE;;;AAIF;AAAA;EAGE;;;AAOF;EACE;AAAA;AAAA;IAIE;IACA;;EAIF;AAAA;IAEE;;;AAQJ;EAEE;AAAA;AAAA;AAAA;AAAA;AAAA;IAME;IACA;;;AC1RJ;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACE;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;AAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA,YACE;EAEF;EACA;AAWA;AAMA;AAmEA;AA8BA;AAKA;;AArHA;EACE;EACA;;AAGF;EAlDF;IAmDI;;;AAIF;EACE;EACA;;AAIF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;AAEA;AASA;;AARA;EACE;EACA;EACA;EACA;EACA;;AAIF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAIA;EACE;EACA;;AAKJ;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;;AAIF;AACE;;AAGF;EACE;;;ACrLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;;AACA;AAAA;EAEE;;AACA;AAAA;EACE;;;AC3BN;EACE;EACA;EACA;AAAA;EAEA;AAAA;EAEA;AAAA;EAEA;AAAA;;;AAIF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AChCF;EACE;;;AAGF;EACE;;AACA;EACE;;AAEF;EACE","file":"index.css"}
|
package/src/styles/link/link.css
CHANGED
|
@@ -21,11 +21,11 @@ a[href] {
|
|
|
21
21
|
--link-radius: 0.25rem;
|
|
22
22
|
--link-padding-inline: 0;
|
|
23
23
|
--link-padding-block: 0;
|
|
24
|
-
--link-transition: all 0.
|
|
24
|
+
--link-transition: all 0.35s ease-in-out;
|
|
25
25
|
--link-focus-color: currentColor;
|
|
26
26
|
--link-focus-width: 0.125rem;
|
|
27
27
|
--link-focus-offset: 0.125rem;
|
|
28
|
-
--link-focus-style:
|
|
28
|
+
--link-focus-style: none;
|
|
29
29
|
color: var(--link-color);
|
|
30
30
|
font-size: var(--link-fs);
|
|
31
31
|
font-weight: var(--link-fw);
|
|
@@ -45,14 +45,10 @@ a[href] > b {
|
|
|
45
45
|
a[href]:hover {
|
|
46
46
|
--link-decoration: underline;
|
|
47
47
|
}
|
|
48
|
-
a[href]:focus {
|
|
49
|
-
outline: var(--link-focus-width) var(--link-focus-style) var(--link-focus-color);
|
|
50
|
-
outline-offset: var(--link-focus-offset);
|
|
51
|
-
--link-decoration: underline;
|
|
52
|
-
}
|
|
53
48
|
a[href]:focus-visible {
|
|
54
49
|
outline: var(--link-focus-width) var(--link-focus-style) var(--link-focus-color);
|
|
55
50
|
outline-offset: var(--link-focus-offset);
|
|
51
|
+
font-weight: bold;
|
|
56
52
|
}
|
|
57
53
|
a[href]:visited, a[href]:active {
|
|
58
54
|
--link-color: currentColor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../components/link/link.scss","../../sass/_mixins.scss"],"names":[],"mappings":"AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EAEE;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;EAEE;EACA;;AAIF;EACE;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../components/link/link.scss","../../sass/_mixins.scss"],"names":[],"mappings":"AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EAEE;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;EAEE;EACA;;AAIF;EACE;;AAKF;EACE;EAEA;EACA;;AAIF;EAEE;;AAIF;EAGE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ECvGF;EACA;EACA;EACA;EACA;;ADuGE;EAEE;EAEA;EACA;;AAIF;EACE;;AChHJ;EACE;;ADuHF;EAEE;EACA;EACA;;AAEA;EAGE","file":"link.css"}
|
package/src/styles/nav/nav.css
CHANGED
|
@@ -31,9 +31,9 @@ body > nav ul > li:hover,
|
|
|
31
31
|
.navbar ul > li:hover {
|
|
32
32
|
background-color: var(--nav-hover-bg, #e8e8e8);
|
|
33
33
|
}
|
|
34
|
-
body > nav ul > li:hover:
|
|
35
|
-
[aria-label~=navbar] ul > li:hover:
|
|
36
|
-
.navbar ul > li:hover:
|
|
34
|
+
body > nav ul > li:hover:has(img, button),
|
|
35
|
+
[aria-label~=navbar] ul > li:hover:has(img, button),
|
|
36
|
+
.navbar ul > li:hover:has(img, button) {
|
|
37
37
|
background-color: transparent;
|
|
38
38
|
}
|
|
39
39
|
|