@rango-dev/ui 0.22.1-next.17 → 0.22.1-next.18
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/index.js +6 -6
- package/dist/index.js.map +4 -4
- package/dist/widget/ui/src/components/Alert/Alert.styles.d.ts +157 -0
- package/dist/widget/ui/src/components/Alert/Alert.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/BlockchainsChip/BlockchainsChip.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/QuoteCost/QuoteCost.d.ts.map +1 -1
- package/dist/widget/ui/src/components/QuoteCost/QuoteCost.styles.d.ts +314 -0
- package/dist/widget/ui/src/components/QuoteCost/QuoteCost.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/StepDetails/StepDetails.d.ts.map +1 -1
- package/dist/widget/ui/src/components/StepDetails/StepDetails.styles.d.ts +6 -0
- package/dist/widget/ui/src/components/StepDetails/StepDetails.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/TokenAmount/TokenAmount.d.ts.map +1 -1
- package/dist/widget/ui/src/components/TokenAmount/TokenAmount.styles.d.ts +471 -1
- package/dist/widget/ui/src/components/TokenAmount/TokenAmount.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/common/Image.d.ts +157 -0
- package/dist/widget/ui/src/components/common/Image.d.ts.map +1 -1
- package/dist/widget/ui/src/components/common/index.d.ts +1 -1
- package/dist/widget/ui/src/components/common/index.d.ts.map +1 -1
- package/dist/widget/ui/src/containers/SwapInput/SwapInput.d.ts.map +1 -1
- package/dist/widget/ui/src/containers/SwapInput/SwapInput.styles.d.ts +942 -0
- package/dist/widget/ui/src/containers/SwapInput/SwapInput.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/containers/SwapInput/TokenSection.d.ts.map +1 -1
- package/dist/widget/ui/src/containers/SwapInput/TokenSection.styles.d.ts +471 -0
- package/dist/widget/ui/src/containers/SwapInput/TokenSection.styles.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/Alert/Alert.styles.ts +7 -7
- package/src/components/Alert/Alert.tsx +2 -2
- package/src/components/BlockchainsChip/BlockchainsChip.styles.ts +2 -1
- package/src/components/QuoteCost/QuoteCost.styles.ts +14 -12
- package/src/components/QuoteCost/QuoteCost.tsx +12 -7
- package/src/components/StepDetails/StepDetails.styles.ts +32 -24
- package/src/components/StepDetails/StepDetails.tsx +8 -4
- package/src/components/TokenAmount/TokenAmount.styles.ts +12 -10
- package/src/components/TokenAmount/TokenAmount.tsx +7 -3
- package/src/components/common/Image.tsx +1 -2
- package/src/components/common/index.ts +1 -1
- package/src/containers/SwapInput/SwapInput.styles.ts +34 -27
- package/src/containers/SwapInput/SwapInput.tsx +14 -8
- package/src/containers/SwapInput/TokenSection.styles.ts +16 -13
- package/src/containers/SwapInput/TokenSection.tsx +10 -4
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { css } from '@stitches/react';
|
|
2
|
+
|
|
1
3
|
import { darkTheme, styled } from '../../theme';
|
|
2
4
|
|
|
3
5
|
export const Container = styled('div', {
|
|
@@ -31,34 +33,10 @@ export const Container = styled('div', {
|
|
|
31
33
|
error: { borderColor: '$error500' },
|
|
32
34
|
},
|
|
33
35
|
},
|
|
34
|
-
'& .swapper': {
|
|
35
|
-
display: 'flex',
|
|
36
|
-
alignItems: 'center',
|
|
37
|
-
},
|
|
38
36
|
'& .swapper__description': {
|
|
39
37
|
fontWeight: '$medium',
|
|
40
38
|
},
|
|
41
|
-
'& .step-info': {
|
|
42
|
-
display: 'flex',
|
|
43
|
-
flex: '1',
|
|
44
|
-
width: '100%',
|
|
45
|
-
alignItems: 'start',
|
|
46
|
-
variants: {
|
|
47
|
-
tx: {
|
|
48
|
-
true: {
|
|
49
|
-
paddingLeft: '36px',
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
},
|
|
54
39
|
'& div:nth-child(3)': { display: 'flex', flexDirection: 'column', flex: 1 },
|
|
55
|
-
'& .tokens-container': { width: '100%' },
|
|
56
|
-
'& .tokens': {
|
|
57
|
-
display: 'flex',
|
|
58
|
-
paddingTop: '$5',
|
|
59
|
-
paddingBottom: '$10',
|
|
60
|
-
alignItems: 'center',
|
|
61
|
-
},
|
|
62
40
|
});
|
|
63
41
|
|
|
64
42
|
export const SwapperImage = styled('div', {
|
|
@@ -131,3 +109,33 @@ export const StepSeparator = styled('div', {
|
|
|
131
109
|
},
|
|
132
110
|
},
|
|
133
111
|
});
|
|
112
|
+
|
|
113
|
+
export const tokensContainerStyles = css({
|
|
114
|
+
width: '100%',
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
export const swapperStyles = css({
|
|
118
|
+
display: 'flex',
|
|
119
|
+
alignItems: 'center',
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
export const stepInfoStyles = css({
|
|
123
|
+
display: 'flex',
|
|
124
|
+
flex: '1',
|
|
125
|
+
width: '100%',
|
|
126
|
+
alignItems: 'start',
|
|
127
|
+
variants: {
|
|
128
|
+
tx: {
|
|
129
|
+
true: {
|
|
130
|
+
paddingLeft: '36px',
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
export const tokensStyles = css({
|
|
137
|
+
display: 'flex',
|
|
138
|
+
paddingTop: '$5',
|
|
139
|
+
paddingBottom: '$10',
|
|
140
|
+
alignItems: 'center',
|
|
141
|
+
});
|
|
@@ -13,8 +13,12 @@ import {
|
|
|
13
13
|
Alerts,
|
|
14
14
|
Container,
|
|
15
15
|
DashedLine,
|
|
16
|
+
stepInfoStyles,
|
|
16
17
|
StepSeparator,
|
|
17
18
|
SwapperImage,
|
|
19
|
+
swapperStyles,
|
|
20
|
+
tokensContainerStyles,
|
|
21
|
+
tokensStyles,
|
|
18
22
|
} from './StepDetails.styles';
|
|
19
23
|
|
|
20
24
|
const StepDetailsComponent = forwardRef<HTMLDivElement, StepDetailsProps>(
|
|
@@ -39,7 +43,7 @@ const StepDetailsComponent = forwardRef<HTMLDivElement, StepDetailsProps>(
|
|
|
39
43
|
state={state}
|
|
40
44
|
ref={containerRef}
|
|
41
45
|
tabIndex={tabIndex}>
|
|
42
|
-
<div className=
|
|
46
|
+
<div className={swapperStyles()}>
|
|
43
47
|
{type === 'swap-progress' && hasSeparator && (
|
|
44
48
|
<StepSeparator state={state} />
|
|
45
49
|
)}
|
|
@@ -60,10 +64,10 @@ const StepDetailsComponent = forwardRef<HTMLDivElement, StepDetailsProps>(
|
|
|
60
64
|
})}
|
|
61
65
|
</Typography>
|
|
62
66
|
</div>
|
|
63
|
-
<div className=
|
|
67
|
+
<div className={stepInfoStyles()}>
|
|
64
68
|
<DashedLine invisible={!hasSeparator || type === 'swap-progress'} />
|
|
65
|
-
<div className=
|
|
66
|
-
<div className=
|
|
69
|
+
<div className={tokensContainerStyles()}>
|
|
70
|
+
<div className={tokensStyles()}>
|
|
67
71
|
<ChainToken
|
|
68
72
|
chainImage={step.from.chain.image}
|
|
69
73
|
tokenImage={step.from.token.image}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { styled } from '
|
|
1
|
+
import { css, styled } from '../../theme';
|
|
2
2
|
|
|
3
3
|
export const Container = styled('div', {
|
|
4
4
|
display: 'flex',
|
|
@@ -15,13 +15,15 @@ export const Container = styled('div', {
|
|
|
15
15
|
true: { alignItems: 'center', justifyContent: 'center' },
|
|
16
16
|
},
|
|
17
17
|
},
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export const tokenAmountStyles = css({
|
|
21
|
+
display: 'flex',
|
|
22
|
+
justifyContent: 'center',
|
|
23
|
+
alignItems: 'center',
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
export const usdValueStyles = css({
|
|
27
|
+
display: 'flex',
|
|
28
|
+
paddingTop: '$5',
|
|
27
29
|
});
|
|
@@ -6,12 +6,16 @@ import { ChainToken } from '../ChainToken';
|
|
|
6
6
|
import { PriceImpact } from '../PriceImpact/PriceImpact';
|
|
7
7
|
import { Typography } from '../Typography';
|
|
8
8
|
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
Container,
|
|
11
|
+
tokenAmountStyles,
|
|
12
|
+
usdValueStyles,
|
|
13
|
+
} from './TokenAmount.styles';
|
|
10
14
|
|
|
11
15
|
export function TokenAmount(props: PropTypes) {
|
|
12
16
|
return (
|
|
13
17
|
<Container direction={props.direction} centerAlign={props.centerAlign}>
|
|
14
|
-
<div className=
|
|
18
|
+
<div className={tokenAmountStyles()}>
|
|
15
19
|
<ChainToken
|
|
16
20
|
chainImage={props.chain.image}
|
|
17
21
|
tokenImage={props.token.image}
|
|
@@ -42,7 +46,7 @@ export function TokenAmount(props: PropTypes) {
|
|
|
42
46
|
</div>
|
|
43
47
|
</div>
|
|
44
48
|
{props.price.usdValue && props.price.usdValue !== '0' && (
|
|
45
|
-
<div className=
|
|
49
|
+
<div className={usdValueStyles()}>
|
|
46
50
|
{props.type === 'input' && (
|
|
47
51
|
<Typography mr={4} size="small" variant="body" color="$neutral700">
|
|
48
52
|
{`~$${props.price.usdValue}`}
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { styled } from '../../theme';
|
|
4
4
|
|
|
5
|
-
const ImageContainer = styled('div', {
|
|
5
|
+
export const ImageContainer = styled('div', {
|
|
6
6
|
display: 'flex',
|
|
7
7
|
justifyContent: 'center',
|
|
8
8
|
alignItems: 'center',
|
|
@@ -37,7 +37,6 @@ export function Image(props: PropTypes) {
|
|
|
37
37
|
|
|
38
38
|
return (
|
|
39
39
|
<ImageContainer
|
|
40
|
-
className="image-container"
|
|
41
40
|
css={{
|
|
42
41
|
width: size + 'px',
|
|
43
42
|
height: size + 'px',
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { FilledCircle } from './FilledCircle';
|
|
2
|
-
export { Image } from './Image';
|
|
2
|
+
export { Image, ImageContainer } from './Image';
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Button, TextField } from '../../components';
|
|
2
|
-
import { darkTheme, styled } from '../../theme';
|
|
2
|
+
import { css, darkTheme, styled } from '../../theme';
|
|
3
|
+
|
|
4
|
+
export const textStyles = css();
|
|
3
5
|
|
|
4
6
|
export const Container = styled('div', {
|
|
5
7
|
$$color: '$colors$neutral100',
|
|
@@ -17,38 +19,13 @@ export const Container = styled('div', {
|
|
|
17
19
|
},
|
|
18
20
|
},
|
|
19
21
|
},
|
|
20
|
-
|
|
22
|
+
[`& .${textStyles}`]: {
|
|
21
23
|
$$color: '$colors$neutral600',
|
|
22
24
|
[`.${darkTheme} &`]: {
|
|
23
25
|
$$color: '$colors$neutral700',
|
|
24
26
|
},
|
|
25
27
|
color: '$$color',
|
|
26
28
|
},
|
|
27
|
-
'& .label__container': {
|
|
28
|
-
paddingBottom: '$5',
|
|
29
|
-
},
|
|
30
|
-
'& .label': {
|
|
31
|
-
display: 'flex',
|
|
32
|
-
justifyContent: 'space-between',
|
|
33
|
-
alignItems: 'center',
|
|
34
|
-
},
|
|
35
|
-
'& .balance': {
|
|
36
|
-
display: 'flex',
|
|
37
|
-
justifyContent: 'center',
|
|
38
|
-
alignItems: 'center',
|
|
39
|
-
},
|
|
40
|
-
'& .form': {
|
|
41
|
-
display: 'flex',
|
|
42
|
-
justifyContent: 'space-between',
|
|
43
|
-
alignItems: 'center',
|
|
44
|
-
},
|
|
45
|
-
'& .amount': {
|
|
46
|
-
display: 'flex',
|
|
47
|
-
flexDirection: 'column',
|
|
48
|
-
justifyContent: 'center',
|
|
49
|
-
alignItems: 'end',
|
|
50
|
-
flexGrow: 1,
|
|
51
|
-
},
|
|
52
29
|
});
|
|
53
30
|
|
|
54
31
|
export const InputAmount = styled(TextField, {
|
|
@@ -95,3 +72,33 @@ export const ValueTypography = styled('div', {
|
|
|
95
72
|
},
|
|
96
73
|
},
|
|
97
74
|
});
|
|
75
|
+
|
|
76
|
+
export const formStyles = css({
|
|
77
|
+
display: 'flex',
|
|
78
|
+
justifyContent: 'space-between',
|
|
79
|
+
alignItems: 'center',
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
export const labelStyles = css({
|
|
83
|
+
display: 'flex',
|
|
84
|
+
justifyContent: 'space-between',
|
|
85
|
+
alignItems: 'center',
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
export const balanceStyles = css({
|
|
89
|
+
display: 'flex',
|
|
90
|
+
justifyContent: 'center',
|
|
91
|
+
alignItems: 'center',
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
export const amountStyles = css({
|
|
95
|
+
display: 'flex',
|
|
96
|
+
flexDirection: 'column',
|
|
97
|
+
justifyContent: 'center',
|
|
98
|
+
alignItems: 'end',
|
|
99
|
+
flexGrow: 1,
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
export const labelContainerStyles = css({
|
|
103
|
+
paddingBottom: '$5',
|
|
104
|
+
});
|
|
@@ -6,9 +6,15 @@ import React from 'react';
|
|
|
6
6
|
import { Divider, PriceImpact, Skeleton, Typography } from '../../components';
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
|
+
amountStyles,
|
|
10
|
+
balanceStyles,
|
|
9
11
|
Container,
|
|
12
|
+
formStyles,
|
|
10
13
|
InputAmount,
|
|
14
|
+
labelContainerStyles,
|
|
15
|
+
labelStyles,
|
|
11
16
|
MaxButton,
|
|
17
|
+
textStyles,
|
|
12
18
|
ValueTypography,
|
|
13
19
|
} from './SwapInput.styles';
|
|
14
20
|
import { TokenSection } from './TokenSection';
|
|
@@ -16,15 +22,15 @@ import { TokenSection } from './TokenSection';
|
|
|
16
22
|
export function SwapInput(props: SwapInputProps) {
|
|
17
23
|
return (
|
|
18
24
|
<Container sharpBottomStyle={props.sharpBottomStyle}>
|
|
19
|
-
<div className=
|
|
20
|
-
<div className=
|
|
21
|
-
<Typography variant="body" size="small" className=
|
|
25
|
+
<div className={labelContainerStyles()}>
|
|
26
|
+
<div className={labelStyles()}>
|
|
27
|
+
<Typography variant="body" size="small" className={textStyles()}>
|
|
22
28
|
{props.label}
|
|
23
29
|
</Typography>
|
|
24
30
|
{'balance' in props && !props.loading && (
|
|
25
|
-
<div className=
|
|
31
|
+
<div className={balanceStyles()}>
|
|
26
32
|
<Typography
|
|
27
|
-
className=
|
|
33
|
+
className={textStyles()}
|
|
28
34
|
mr={4}
|
|
29
35
|
variant="body"
|
|
30
36
|
size="xsmall">
|
|
@@ -41,13 +47,13 @@ export function SwapInput(props: SwapInputProps) {
|
|
|
41
47
|
</div>
|
|
42
48
|
)}
|
|
43
49
|
{props.loading && (
|
|
44
|
-
<div className=
|
|
50
|
+
<div className={balanceStyles()}>
|
|
45
51
|
<Skeleton variant="text" size="large" width={105} />
|
|
46
52
|
</div>
|
|
47
53
|
)}
|
|
48
54
|
</div>
|
|
49
55
|
</div>
|
|
50
|
-
<div className=
|
|
56
|
+
<div className={formStyles()}>
|
|
51
57
|
<TokenSection
|
|
52
58
|
chain={props.chain.displayName}
|
|
53
59
|
tokenSymbol={props.token.displayName}
|
|
@@ -57,7 +63,7 @@ export function SwapInput(props: SwapInputProps) {
|
|
|
57
63
|
onClick={props.onClickToken}
|
|
58
64
|
loading={props.loading}
|
|
59
65
|
/>
|
|
60
|
-
<div className=
|
|
66
|
+
<div className={amountStyles()}>
|
|
61
67
|
{props.loading || (props.mode === 'To' && props.fetchingQuote) ? (
|
|
62
68
|
<>
|
|
63
69
|
<Skeleton variant="text" size="large" width={92} />
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Button } from '../../components';
|
|
2
|
-
import { darkTheme, styled } from '../../theme';
|
|
2
|
+
import { css, darkTheme, styled } from '../../theme';
|
|
3
3
|
|
|
4
4
|
export const Container = styled(Button, {
|
|
5
5
|
maxWidth: '180px',
|
|
@@ -28,6 +28,8 @@ export const Container = styled(Button, {
|
|
|
28
28
|
},
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
+
export const chainNameStyles = css();
|
|
32
|
+
|
|
31
33
|
export const TokenSectionContainer = styled('div', {
|
|
32
34
|
width: '10.625rem',
|
|
33
35
|
padding: '$2 $5',
|
|
@@ -36,22 +38,23 @@ export const TokenSectionContainer = styled('div', {
|
|
|
36
38
|
justifyContent: 'start',
|
|
37
39
|
boxSizing: 'border-box',
|
|
38
40
|
alignItems: 'center',
|
|
39
|
-
|
|
40
|
-
'& .blockchain-name': {
|
|
41
|
+
[`& .${chainNameStyles}`]: {
|
|
41
42
|
$$color: '$colors$neutral600',
|
|
42
43
|
[`.${darkTheme} &`]: {
|
|
43
44
|
$$color: '$colors$neutral700',
|
|
44
45
|
},
|
|
45
46
|
color: '$$color',
|
|
46
47
|
},
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
export const tokenChainStyles = css({
|
|
51
|
+
display: 'flex',
|
|
52
|
+
flexDirection: 'column',
|
|
53
|
+
justifyContent: 'center',
|
|
54
|
+
alignItems: 'start',
|
|
55
|
+
paddingLeft: '$10',
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
export const skeletonStyles = css({
|
|
59
|
+
padding: '$5 $0',
|
|
57
60
|
});
|
|
@@ -5,7 +5,13 @@ import React from 'react';
|
|
|
5
5
|
|
|
6
6
|
import { ChainToken, Divider, Skeleton, Typography } from '../../components';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
chainNameStyles,
|
|
10
|
+
Container,
|
|
11
|
+
skeletonStyles,
|
|
12
|
+
tokenChainStyles,
|
|
13
|
+
TokenSectionContainer,
|
|
14
|
+
} from './TokenSection.styles';
|
|
9
15
|
|
|
10
16
|
export function TokenSection(props: TokenSectionProps) {
|
|
11
17
|
const {
|
|
@@ -27,9 +33,9 @@ export function TokenSection(props: TokenSectionProps) {
|
|
|
27
33
|
tokenImage={tokenImage}
|
|
28
34
|
loading={loading}
|
|
29
35
|
/>
|
|
30
|
-
<div className=
|
|
36
|
+
<div className={tokenChainStyles()}>
|
|
31
37
|
{loading ? (
|
|
32
|
-
<div className=
|
|
38
|
+
<div className={skeletonStyles()}>
|
|
33
39
|
<Skeleton variant="text" size="large" width={92} />
|
|
34
40
|
<Divider size={8} />
|
|
35
41
|
<Skeleton variant="text" size="medium" width={92} />
|
|
@@ -44,7 +50,7 @@ export function TokenSection(props: TokenSectionProps) {
|
|
|
44
50
|
<Typography
|
|
45
51
|
variant="body"
|
|
46
52
|
size="medium"
|
|
47
|
-
className=
|
|
53
|
+
className={chainNameStyles()}>
|
|
48
54
|
{error || (!loading && !chain) ? i18n.t('Chain') : chain}
|
|
49
55
|
</Typography>
|
|
50
56
|
</>
|