@tenerife.music/ui 2.0.5 → 2.0.6
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/README.md +2 -2
- package/dist/{Link-ZWr5iFB0.d.cts → Link-DlH433PB.d.cts} +3 -3
- package/dist/{Link-ZWr5iFB0.d.ts → Link-DlH433PB.d.ts} +3 -3
- package/dist/extensions/next/index.cjs +152 -15
- package/dist/extensions/next/index.d.cts +3 -4
- package/dist/extensions/next/index.d.ts +3 -4
- package/dist/extensions/next/index.mjs +152 -15
- package/dist/{index-D4Dqp9Zs.d.cts → index-DC5gNLfG.d.cts} +382 -25
- package/dist/{index-D4Dqp9Zs.d.ts → index-DC5gNLfG.d.ts} +382 -25
- package/dist/index.cjs +674 -165
- package/dist/index.d.cts +1964 -189
- package/dist/index.d.ts +1964 -189
- package/dist/index.mjs +674 -165
- package/dist/styles.css +11 -8
- package/dist/tokens/index.cjs +338 -28
- package/dist/tokens/index.d.cts +1 -1
- package/dist/tokens/index.d.ts +1 -1
- package/dist/tokens/index.mjs +338 -28
- package/package.json +64 -67
package/README.md
CHANGED
|
@@ -10,8 +10,8 @@ Strict. Predictable. Built for system-level consistency.
|
|
|
10
10
|

|
|
11
11
|

|
|
12
12
|
|
|
13
|
-
**Current Release:** [v2.0.
|
|
14
|
-
**Next Release:**
|
|
13
|
+
**Current Release:** [v2.0.6](CHANGELOG.md#206) (npm)
|
|
14
|
+
**Next Release:** [Unreleased] — See [CHANGELOG](CHANGELOG.md#unreleased)
|
|
15
15
|
|
|
16
16
|
<p align="center">
|
|
17
17
|
<img src="https://raw.githubusercontent.com/Tureckiy-zart/tenerife-ui/main/.github/banner.png" width="100%" alt="TUI Banner" />
|
|
@@ -6,7 +6,7 @@ import * as React from 'react';
|
|
|
6
6
|
*
|
|
7
7
|
* @internal
|
|
8
8
|
*/
|
|
9
|
-
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "link", "destructive"];
|
|
9
|
+
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "text", "link", "wrapper", "destructive"];
|
|
10
10
|
/**
|
|
11
11
|
* Link variant type
|
|
12
12
|
*
|
|
@@ -26,13 +26,13 @@ declare const _LINK_SIZES: readonly ["sm", "md", "lg"];
|
|
|
26
26
|
*/
|
|
27
27
|
type LinkSize = (typeof _LINK_SIZES)[number];
|
|
28
28
|
declare const linkVariants: (props?: ({
|
|
29
|
-
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "ghost" | null | undefined;
|
|
29
|
+
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "ghost" | "text" | "wrapper" | null | undefined;
|
|
30
30
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
31
31
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
32
32
|
interface LinkProps extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "className" | "style"> {
|
|
33
33
|
/**
|
|
34
34
|
* Link variant style
|
|
35
|
-
* @default "
|
|
35
|
+
* @default "text"
|
|
36
36
|
*/
|
|
37
37
|
variant?: LinkVariant;
|
|
38
38
|
/**
|
|
@@ -6,7 +6,7 @@ import * as React from 'react';
|
|
|
6
6
|
*
|
|
7
7
|
* @internal
|
|
8
8
|
*/
|
|
9
|
-
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "link", "destructive"];
|
|
9
|
+
declare const _LINK_VARIANTS: readonly ["primary", "secondary", "accent", "outline", "ghost", "text", "link", "wrapper", "destructive"];
|
|
10
10
|
/**
|
|
11
11
|
* Link variant type
|
|
12
12
|
*
|
|
@@ -26,13 +26,13 @@ declare const _LINK_SIZES: readonly ["sm", "md", "lg"];
|
|
|
26
26
|
*/
|
|
27
27
|
type LinkSize = (typeof _LINK_SIZES)[number];
|
|
28
28
|
declare const linkVariants: (props?: ({
|
|
29
|
-
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "ghost" | null | undefined;
|
|
29
|
+
variant?: "primary" | "secondary" | "accent" | "destructive" | "outline" | "link" | "ghost" | "text" | "wrapper" | null | undefined;
|
|
30
30
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
31
31
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
32
32
|
interface LinkProps extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "className" | "style"> {
|
|
33
33
|
/**
|
|
34
34
|
* Link variant style
|
|
35
|
-
* @default "
|
|
35
|
+
* @default "text"
|
|
36
36
|
*/
|
|
37
37
|
variant?: LinkVariant;
|
|
38
38
|
/**
|
|
@@ -138,6 +138,18 @@ var LINK_TOKENS = {
|
|
|
138
138
|
/**
|
|
139
139
|
* Link heights by size
|
|
140
140
|
* Maps to Tailwind height utilities
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* // Small size link
|
|
144
|
+
* <Link href="/link" size="sm">Small Link</Link>
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* // Medium size link (default)
|
|
148
|
+
* <Link href="/link" size="md">Medium Link</Link>
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* // Large size link
|
|
152
|
+
* <Link href="/link" size="lg">Large Link</Link>
|
|
141
153
|
*/
|
|
142
154
|
height: {
|
|
143
155
|
// 28px (1.75rem)
|
|
@@ -149,6 +161,12 @@ var LINK_TOKENS = {
|
|
|
149
161
|
/**
|
|
150
162
|
* Link padding by size
|
|
151
163
|
* Horizontal and vertical padding values
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* // Padding is automatically applied based on size prop
|
|
167
|
+
* <Link href="/link" size="sm">Small Link</Link> // Uses px-sm py-xs
|
|
168
|
+
* <Link href="/link" size="md">Medium Link</Link> // Uses px-md py-sm
|
|
169
|
+
* <Link href="/link" size="lg">Large Link</Link> // Uses px-lg py-sm
|
|
152
170
|
*/
|
|
153
171
|
padding: {
|
|
154
172
|
horizontal: {
|
|
@@ -169,6 +187,13 @@ var LINK_TOKENS = {
|
|
|
169
187
|
*/
|
|
170
188
|
layout: "inline-flex items-center justify-center whitespace-nowrap",
|
|
171
189
|
// Base layout for link container
|
|
190
|
+
/**
|
|
191
|
+
* Block-level layout token for variant='wrapper' (and deprecated variant='link')
|
|
192
|
+
* Used when Link needs to wrap block elements (e.g., Card) in grid/flex compositions
|
|
193
|
+
* Provides block display with full width for proper layout contract
|
|
194
|
+
*/
|
|
195
|
+
layoutBlock: "block w-full",
|
|
196
|
+
// Block-level layout for wrapper variant (and deprecated link variant)
|
|
172
197
|
/**
|
|
173
198
|
* Font weight token
|
|
174
199
|
* References foundation typography fontWeight tokens from Typography Authority
|
|
@@ -181,6 +206,12 @@ var LINK_TOKENS = {
|
|
|
181
206
|
/**
|
|
182
207
|
* Icon wrapper layout
|
|
183
208
|
* Layout utilities for icon containers
|
|
209
|
+
*
|
|
210
|
+
* @example
|
|
211
|
+
* // Icons are automatically wrapped with proper layout
|
|
212
|
+
* <Link href="/profile" leftIcon={<UserIcon />} rightIcon={<ArrowIcon />}>
|
|
213
|
+
* Profile
|
|
214
|
+
* </Link>
|
|
184
215
|
*/
|
|
185
216
|
iconWrapper: "inline-flex items-center",
|
|
186
217
|
// Layout for left/right icon wrappers
|
|
@@ -190,14 +221,29 @@ var LINK_TOKENS = {
|
|
|
190
221
|
*
|
|
191
222
|
* @rule All fontSize values reference Typography Authority tokens
|
|
192
223
|
* @see docs/architecture/TYPOGRAPHY_AUTHORITY_CONTRACT.md
|
|
224
|
+
*
|
|
225
|
+
* @example
|
|
226
|
+
* // Small font size (14px)
|
|
227
|
+
* <Link href="/link" size="sm">Small Text</Link>
|
|
228
|
+
*
|
|
229
|
+
* @example
|
|
230
|
+
* // Medium font size (16px, default)
|
|
231
|
+
* <Link href="/link" size="md">Medium Text</Link>
|
|
232
|
+
*
|
|
233
|
+
* @example
|
|
234
|
+
* // Large font size (18px)
|
|
235
|
+
* <Link href="/link" size="lg">Large Text</Link>
|
|
193
236
|
*/
|
|
194
237
|
fontSize: {
|
|
195
238
|
// References fontSize.xs[0] from Typography Authority (~12px)
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
md: "text-sm",
|
|
239
|
+
/** Small font size (~14px) */
|
|
240
|
+
sm: "text-sm",
|
|
199
241
|
// References fontSize.sm[0] from Typography Authority (~14px)
|
|
200
|
-
|
|
242
|
+
/** Medium font size (~16px, default) */
|
|
243
|
+
md: "text-base",
|
|
244
|
+
// References fontSize.base[0] from Typography Authority (~16px)
|
|
245
|
+
/** Large font size (~18px) */
|
|
246
|
+
lg: "text-lg"},
|
|
201
247
|
/**
|
|
202
248
|
* Border radius for outline and ghost variants
|
|
203
249
|
* References componentRadius from Radius Authority
|
|
@@ -231,6 +277,14 @@ var LINK_TOKENS = {
|
|
|
231
277
|
*
|
|
232
278
|
* @rule Focus MUST use focus-visible: prefix (keyboard navigation only)
|
|
233
279
|
* @rule Focus MUST be blocked when disabled={true}
|
|
280
|
+
*
|
|
281
|
+
* @example
|
|
282
|
+
* // Focus ring appears automatically on keyboard navigation (Tab key)
|
|
283
|
+
* <Link href="/link">Focusable Link</Link>
|
|
284
|
+
*
|
|
285
|
+
* @example
|
|
286
|
+
* // Focus is disabled when link is disabled
|
|
287
|
+
* <Link href="/link" disabled>Disabled Link</Link>
|
|
234
288
|
*/
|
|
235
289
|
focus: {
|
|
236
290
|
ring: "focus-visible:ring-2 focus-visible:ring-ring",
|
|
@@ -243,6 +297,16 @@ var LINK_TOKENS = {
|
|
|
243
297
|
/**
|
|
244
298
|
* Disabled state tokens
|
|
245
299
|
* Uses explicit disabled semantic tokens for better accessibility
|
|
300
|
+
*
|
|
301
|
+
* @example
|
|
302
|
+
* // Disabled link with proper accessibility attributes
|
|
303
|
+
* <Link href="/disabled" disabled>Disabled Link</Link>
|
|
304
|
+
*
|
|
305
|
+
* @example
|
|
306
|
+
* // Disabled link prevents navigation and removes from tab order
|
|
307
|
+
* <Link href="/action" disabled onClick={handleClick}>
|
|
308
|
+
* Cannot Click
|
|
309
|
+
* </Link>
|
|
246
310
|
*/
|
|
247
311
|
state: {
|
|
248
312
|
disabled: {
|
|
@@ -255,8 +319,47 @@ var LINK_TOKENS = {
|
|
|
255
319
|
/**
|
|
256
320
|
* Color tokens for link variants
|
|
257
321
|
* Uses semantic color tokens that map to CSS variables
|
|
322
|
+
*
|
|
323
|
+
* @example
|
|
324
|
+
* // Primary variant - emphasized link with primary color
|
|
325
|
+
* <Link href="/cta" variant="primary">Get Started</Link>
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* // Secondary variant - muted link style
|
|
329
|
+
* <Link href="/info" variant="secondary">Learn More</Link>
|
|
330
|
+
*
|
|
331
|
+
* @example
|
|
332
|
+
* // Accent variant - accent color link
|
|
333
|
+
* <Link href="/feature" variant="accent">Explore Feature</Link>
|
|
334
|
+
*
|
|
335
|
+
* @example
|
|
336
|
+
* // Outline variant - bordered link button
|
|
337
|
+
* <Link href="/action" variant="outline">Action</Link>
|
|
338
|
+
*
|
|
339
|
+
* @example
|
|
340
|
+
* // Ghost variant - subtle background link
|
|
341
|
+
* <Link href="/menu" variant="ghost">Menu Item</Link>
|
|
342
|
+
*
|
|
343
|
+
* @example
|
|
344
|
+
* // Text variant (default) - inline text link
|
|
345
|
+
* <Link href="/about" variant="text">About Us</Link>
|
|
346
|
+
*
|
|
347
|
+
* @example
|
|
348
|
+
* // Wrapper variant - block-level wrapper for cards
|
|
349
|
+
* <Link href="/article" variant="wrapper">
|
|
350
|
+
* <Card>Article Content</Card>
|
|
351
|
+
* </Link>
|
|
352
|
+
*
|
|
353
|
+
* @example
|
|
354
|
+
* // Destructive variant - danger/delete actions
|
|
355
|
+
* <Link href="/delete" variant="destructive">Delete</Link>
|
|
258
356
|
*/
|
|
259
357
|
variant: {
|
|
358
|
+
/**
|
|
359
|
+
* Primary variant - emphasized link with primary color
|
|
360
|
+
* @example
|
|
361
|
+
* <Link href="/cta" variant="primary">Get Started</Link>
|
|
362
|
+
*/
|
|
260
363
|
primary: {
|
|
261
364
|
text: "text-primary",
|
|
262
365
|
// Primary text using CSS var
|
|
@@ -265,12 +368,22 @@ var LINK_TOKENS = {
|
|
|
265
368
|
underline: "hover:underline"
|
|
266
369
|
// Underline on hover
|
|
267
370
|
},
|
|
371
|
+
/**
|
|
372
|
+
* Secondary variant - muted link style
|
|
373
|
+
* @example
|
|
374
|
+
* <Link href="/info" variant="secondary">Learn More</Link>
|
|
375
|
+
*/
|
|
268
376
|
secondary: {
|
|
269
377
|
text: "text-secondary",
|
|
270
378
|
// Secondary text using CSS var
|
|
271
379
|
hover: "hover:underline"
|
|
272
380
|
// Underline on hover
|
|
273
381
|
},
|
|
382
|
+
/**
|
|
383
|
+
* Accent variant - accent color link
|
|
384
|
+
* @example
|
|
385
|
+
* <Link href="/feature" variant="accent">Explore Feature</Link>
|
|
386
|
+
*/
|
|
274
387
|
accent: {
|
|
275
388
|
text: "text-accent",
|
|
276
389
|
// Accent text using CSS var (accent color, not accent-foreground)
|
|
@@ -279,6 +392,11 @@ var LINK_TOKENS = {
|
|
|
279
392
|
underline: "hover:underline"
|
|
280
393
|
// Underline on hover
|
|
281
394
|
},
|
|
395
|
+
/**
|
|
396
|
+
* Outline variant - bordered link button
|
|
397
|
+
* @example
|
|
398
|
+
* <Link href="/action" variant="outline">Action</Link>
|
|
399
|
+
*/
|
|
282
400
|
outline: {
|
|
283
401
|
border: "border border-input",
|
|
284
402
|
// Input border using CSS var
|
|
@@ -293,6 +411,11 @@ var LINK_TOKENS = {
|
|
|
293
411
|
// Hover text
|
|
294
412
|
}
|
|
295
413
|
},
|
|
414
|
+
/**
|
|
415
|
+
* Ghost variant - subtle background link
|
|
416
|
+
* @example
|
|
417
|
+
* <Link href="/menu" variant="ghost">Menu Item</Link>
|
|
418
|
+
*/
|
|
296
419
|
ghost: {
|
|
297
420
|
background: "bg-muted/10",
|
|
298
421
|
// Light background for better contrast on dark surfaces
|
|
@@ -305,12 +428,23 @@ var LINK_TOKENS = {
|
|
|
305
428
|
// Hover text
|
|
306
429
|
}
|
|
307
430
|
},
|
|
431
|
+
/**
|
|
432
|
+
* Link variant (deprecated) - use 'wrapper' instead
|
|
433
|
+
* @deprecated Use variant='wrapper' instead
|
|
434
|
+
* @example
|
|
435
|
+
* <Link href="/article" variant="link">Article</Link>
|
|
436
|
+
*/
|
|
308
437
|
link: {
|
|
309
438
|
text: "text-primary",
|
|
310
439
|
// Primary text using CSS var
|
|
311
440
|
hover: "hover:underline"
|
|
312
441
|
// Underline on hover
|
|
313
442
|
},
|
|
443
|
+
/**
|
|
444
|
+
* Destructive variant - danger/delete actions
|
|
445
|
+
* @example
|
|
446
|
+
* <Link href="/delete" variant="destructive">Delete</Link>
|
|
447
|
+
*/
|
|
314
448
|
destructive: {
|
|
315
449
|
text: "text-destructive",
|
|
316
450
|
// Destructive text using CSS var
|
|
@@ -327,16 +461,21 @@ function renderIcon(icon) {
|
|
|
327
461
|
return /* @__PURE__ */ jsxRuntime.jsx("span", { className: ICON_WRAPPER_CLASS, children: icon });
|
|
328
462
|
}
|
|
329
463
|
var linkVariants = tokenCVA({
|
|
330
|
-
base: `${LINK_TOKENS.
|
|
464
|
+
base: `${LINK_TOKENS.fontWeight} ${LINK_TOKENS.transition.colors} ${LINK_TOKENS.focus.outline} ${LINK_TOKENS.focus.ring} ${LINK_TOKENS.focus.offset} ${LINK_TOKENS.state.disabled.pointerEvents} ${LINK_TOKENS.state.disabled.text}`,
|
|
331
465
|
variants: {
|
|
332
466
|
variant: {
|
|
333
|
-
primary: `${LINK_TOKENS.variant.primary.text} ${LINK_TOKENS.variant.primary.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.primary.underline}`,
|
|
334
|
-
secondary: `${LINK_TOKENS.variant.secondary.text} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.secondary.hover}`,
|
|
335
|
-
accent: `${LINK_TOKENS.variant.accent.text} ${LINK_TOKENS.variant.accent.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.accent.underline}`,
|
|
336
|
-
outline: `${LINK_TOKENS.variant.outline.border} ${LINK_TOKENS.variant.outline.background} ${LINK_TOKENS.variant.outline.text} ${LINK_TOKENS.radius} ${LINK_TOKENS.variant.outline.hover.background} ${LINK_TOKENS.variant.outline.hover.text}`,
|
|
337
|
-
ghost: `${LINK_TOKENS.variant.ghost.background} ${LINK_TOKENS.variant.ghost.text} ${LINK_TOKENS.variant.ghost.hover.background} ${LINK_TOKENS.variant.ghost.hover.text} ${LINK_TOKENS.radius}`,
|
|
338
|
-
|
|
339
|
-
|
|
467
|
+
primary: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.primary.text} ${LINK_TOKENS.variant.primary.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.primary.underline}`,
|
|
468
|
+
secondary: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.secondary.text} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.secondary.hover}`,
|
|
469
|
+
accent: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.accent.text} ${LINK_TOKENS.variant.accent.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.accent.underline}`,
|
|
470
|
+
outline: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.outline.border} ${LINK_TOKENS.variant.outline.background} ${LINK_TOKENS.variant.outline.text} ${LINK_TOKENS.radius} ${LINK_TOKENS.variant.outline.hover.background} ${LINK_TOKENS.variant.outline.hover.text}`,
|
|
471
|
+
ghost: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.ghost.background} ${LINK_TOKENS.variant.ghost.text} ${LINK_TOKENS.variant.ghost.hover.background} ${LINK_TOKENS.variant.ghost.hover.text} ${LINK_TOKENS.radius}`,
|
|
472
|
+
text: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.link.text} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.link.hover}`,
|
|
473
|
+
/**
|
|
474
|
+
* @deprecated Use variant='wrapper' instead. This variant is kept for backward compatibility and will be removed in a future major version.
|
|
475
|
+
*/
|
|
476
|
+
link: `${LINK_TOKENS.layoutBlock} ${LINK_TOKENS.variant.link.text} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.link.hover}`,
|
|
477
|
+
wrapper: `${LINK_TOKENS.layoutBlock} ${LINK_TOKENS.variant.link.text} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.link.hover}`,
|
|
478
|
+
destructive: `${LINK_TOKENS.layout} ${LINK_TOKENS.variant.destructive.text} ${LINK_TOKENS.variant.destructive.hover} ${LINK_TOKENS.underlineOffset} ${LINK_TOKENS.variant.destructive.underline}`
|
|
340
479
|
},
|
|
341
480
|
size: {
|
|
342
481
|
sm: `${LINK_TOKENS.height.sm} ${LINK_TOKENS.fontSize.sm} ${LINK_TOKENS.padding.horizontal.sm} ${LINK_TOKENS.padding.vertical.xs}`,
|
|
@@ -345,7 +484,7 @@ var linkVariants = tokenCVA({
|
|
|
345
484
|
}
|
|
346
485
|
},
|
|
347
486
|
defaultVariants: {
|
|
348
|
-
variant: "
|
|
487
|
+
variant: "text",
|
|
349
488
|
size: "md"
|
|
350
489
|
}
|
|
351
490
|
});
|
|
@@ -397,8 +536,6 @@ var NextLinkAdapter = React__namespace.forwardRef(
|
|
|
397
536
|
scroll,
|
|
398
537
|
shallow,
|
|
399
538
|
locale,
|
|
400
|
-
passHref: true,
|
|
401
|
-
legacyBehavior: true,
|
|
402
539
|
children: /* @__PURE__ */ jsxRuntime.jsx(Link, { ref, href: hrefString, ...props })
|
|
403
540
|
}
|
|
404
541
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LinkProps as LinkProps$1 } from 'next/link';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { L as LinkProps } from '../../Link-
|
|
3
|
+
import { L as LinkProps } from '../../Link-DlH433PB.cjs';
|
|
4
4
|
import 'class-variance-authority/types';
|
|
5
5
|
|
|
6
6
|
interface NextLinkAdapterProps extends Omit<LinkProps, "href"> {
|
|
@@ -21,9 +21,8 @@ interface NextLinkAdapterProps extends Omit<LinkProps, "href"> {
|
|
|
21
21
|
* NextLinkAdapter
|
|
22
22
|
*
|
|
23
23
|
* A compatibility adapter that bridges Next.js `next/link` with TenerifeUI `Link`.
|
|
24
|
-
* This adapter
|
|
25
|
-
*
|
|
26
|
-
* to function as the child of NextLink.
|
|
24
|
+
* This adapter allows Foundation Link (which is an <a>) to function as the child of NextLink.
|
|
25
|
+
* Next.js 13+ automatically handles <a> children without creating nested anchors.
|
|
27
26
|
*
|
|
28
27
|
* @example
|
|
29
28
|
* ```tsx
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LinkProps as LinkProps$1 } from 'next/link';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { L as LinkProps } from '../../Link-
|
|
3
|
+
import { L as LinkProps } from '../../Link-DlH433PB.js';
|
|
4
4
|
import 'class-variance-authority/types';
|
|
5
5
|
|
|
6
6
|
interface NextLinkAdapterProps extends Omit<LinkProps, "href"> {
|
|
@@ -21,9 +21,8 @@ interface NextLinkAdapterProps extends Omit<LinkProps, "href"> {
|
|
|
21
21
|
* NextLinkAdapter
|
|
22
22
|
*
|
|
23
23
|
* A compatibility adapter that bridges Next.js `next/link` with TenerifeUI `Link`.
|
|
24
|
-
* This adapter
|
|
25
|
-
*
|
|
26
|
-
* to function as the child of NextLink.
|
|
24
|
+
* This adapter allows Foundation Link (which is an <a>) to function as the child of NextLink.
|
|
25
|
+
* Next.js 13+ automatically handles <a> children without creating nested anchors.
|
|
27
26
|
*
|
|
28
27
|
* @example
|
|
29
28
|
* ```tsx
|