@veracity/vui 2.29.0 → 2.29.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/dist/cjs/link/link.d.ts +0 -4
- package/dist/cjs/link/link.d.ts.map +1 -1
- package/dist/cjs/link/link.js +28 -16
- package/dist/cjs/link/link.js.map +1 -1
- package/dist/cjs/list/listItem.js +1 -1
- package/dist/cjs/list/listItem.js.map +1 -1
- package/dist/esm/link/link.d.ts +0 -4
- package/dist/esm/link/link.d.ts.map +1 -1
- package/dist/esm/link/link.js +28 -16
- package/dist/esm/link/link.js.map +1 -1
- package/dist/esm/list/listItem.js +1 -1
- package/dist/esm/list/listItem.js.map +1 -1
- package/dist/tsconfig.legacy.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/link/link.tsx +30 -15
- package/src/list/listItem.tsx +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@veracity/vui",
|
|
3
|
-
"version": "2.29.
|
|
3
|
+
"version": "2.29.1",
|
|
4
4
|
"description": "Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.",
|
|
5
5
|
"module": "./dist/esm/index.js",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -51,4 +51,4 @@
|
|
|
51
51
|
"dist",
|
|
52
52
|
"src"
|
|
53
53
|
]
|
|
54
|
-
}
|
|
54
|
+
}
|
package/src/link/link.tsx
CHANGED
|
@@ -8,33 +8,46 @@ import { LinkProps } from './link.types'
|
|
|
8
8
|
import LinkIcon from './linkIcon'
|
|
9
9
|
import LinkText from './linkText'
|
|
10
10
|
|
|
11
|
+
const linkSwipeAnimation = `
|
|
12
|
+
@keyframes linkSwipe {
|
|
13
|
+
from {
|
|
14
|
+
background-size: 0 1px;
|
|
15
|
+
}
|
|
16
|
+
to {
|
|
17
|
+
background-size: 100% 1px;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
`
|
|
21
|
+
|
|
11
22
|
export const LinkBase = styled.aBox.attrs((props: LinkProps) => ({
|
|
12
23
|
isUnderlined: props.isUnderlined || false,
|
|
13
24
|
}))`
|
|
14
|
-
|
|
15
|
-
|
|
25
|
+
${linkSwipeAnimation}
|
|
26
|
+
display: inline;
|
|
16
27
|
cursor: pointer;
|
|
17
|
-
|
|
18
|
-
line-height:
|
|
28
|
+
position: relative;
|
|
29
|
+
line-height: 1.5;
|
|
19
30
|
outline: none;
|
|
20
31
|
width: fit-content;
|
|
32
|
+
text-decoration: none;
|
|
21
33
|
|
|
22
|
-
&:not(.vui-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
34
|
+
&:not(.vui-linkNoUnderline) span {
|
|
35
|
+
position: relative;
|
|
36
|
+
background: linear-gradient(to right, currentcolor, currentcolor);
|
|
37
|
+
background-size: ${({ isUnderlined }) => (isUnderlined ? '100% 1px' : '0 1px')};
|
|
38
|
+
background-position: 0 100%;
|
|
39
|
+
background-repeat: no-repeat;
|
|
40
|
+
text-decoration: none;
|
|
41
|
+
padding-bottom: 2px;
|
|
42
|
+
line-height: 1;
|
|
26
43
|
}
|
|
27
44
|
|
|
28
|
-
&:
|
|
29
|
-
|
|
30
|
-
|
|
45
|
+
&:hover span {
|
|
46
|
+
animation: linkSwipe 0.3s ease forwards;
|
|
47
|
+
background-size: 100% 1px;
|
|
31
48
|
}
|
|
32
49
|
`
|
|
33
50
|
|
|
34
|
-
/**
|
|
35
|
-
* Displays a link item. Handles different underline scenarios and opening external links in new tab.
|
|
36
|
-
* Exposes some props to the children via context.
|
|
37
|
-
*/
|
|
38
51
|
export const Link = vui<'a', LinkProps>((props, ref) => {
|
|
39
52
|
const {
|
|
40
53
|
children,
|
|
@@ -63,7 +76,9 @@ export const Link = vui<'a', LinkProps>((props, ref) => {
|
|
|
63
76
|
return (
|
|
64
77
|
<LinkProvider value={context}>
|
|
65
78
|
<LinkBase
|
|
79
|
+
alignItems={iconLeft || iconRight ? 'center' : undefined}
|
|
66
80
|
className={cs('vui-link', className)}
|
|
81
|
+
display={iconLeft || iconRight ? 'inline-flex' : 'inline'}
|
|
67
82
|
focusRing={2}
|
|
68
83
|
isUnderlined={isUnderlined}
|
|
69
84
|
ref={ref}
|
package/src/list/listItem.tsx
CHANGED