@rango-dev/ui 0.29.1-next.9 → 0.30.1-next.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/CHANGELOG.md +27 -0
- package/dist/index.js +6 -6
- package/dist/index.js.map +4 -4
- package/dist/translations/de.d.ts +2 -0
- package/dist/translations/de.d.ts.map +1 -0
- package/dist/translations/el.d.ts +2 -0
- package/dist/translations/el.d.ts.map +1 -0
- package/dist/translations/en.d.ts.map +1 -1
- package/dist/translations/es.d.ts.map +1 -1
- package/dist/translations/fi.d.ts +2 -0
- package/dist/translations/fi.d.ts.map +1 -0
- package/dist/translations/fr.d.ts.map +1 -1
- package/dist/translations/it.d.ts +2 -0
- package/dist/translations/it.d.ts.map +1 -0
- package/dist/translations/ja.d.ts.map +1 -1
- package/dist/translations/nl.d.ts +2 -0
- package/dist/translations/nl.d.ts.map +1 -0
- package/dist/translations/pl.d.ts +2 -0
- package/dist/translations/pl.d.ts.map +1 -0
- package/dist/translations/pt.d.ts.map +1 -1
- package/dist/translations/ru.d.ts +2 -0
- package/dist/translations/ru.d.ts.map +1 -0
- package/dist/translations/sv.d.ts +2 -0
- package/dist/translations/sv.d.ts.map +1 -0
- package/dist/translations/uk.d.ts +2 -0
- package/dist/translations/uk.d.ts.map +1 -0
- package/dist/translations/zh.d.ts +2 -0
- package/dist/translations/zh.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Alert/Alert.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ChainToken/ChainToken.constants.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ChainToken/ChainToken.styles.d.ts +1 -1
- package/dist/widget/ui/src/components/ChainToken/ChainToken.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Divider/Divider.styles.d.ts +1 -1
- package/dist/widget/ui/src/components/Divider/Divider.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Flags/Bengali.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Bengali.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Chinese.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Chinese.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Finland.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Finland.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/German.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/German.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Greece.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Greece.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Hindi.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Hindi.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Indonesian.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Indonesian.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Italian.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Italian.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Malay.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Malay.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Netherlands.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Netherlands.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Poland.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Poland.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Russian.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Russian.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Swedish.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Swedish.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Thai.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Thai.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Turkish.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Turkish.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Ukrainian.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Ukrainian.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/Vietnamese.d.ts +4 -0
- package/dist/widget/ui/src/components/Flags/Vietnamese.d.ts.map +1 -0
- package/dist/widget/ui/src/components/Flags/index.d.ts +18 -1
- package/dist/widget/ui/src/components/Flags/index.d.ts.map +1 -1
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.Skeletons.d.ts.map +1 -1
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.d.ts.map +1 -1
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.styles.d.ts +162 -0
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.types.d.ts +1 -0
- package/dist/widget/ui/src/components/FullExpandedQuote/FullExpandedQuote.types.d.ts.map +1 -1
- package/dist/widget/ui/src/components/I18nManager/I18nManager.d.ts +10 -0
- package/dist/widget/ui/src/components/I18nManager/I18nManager.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ListItem/ListItem.types.d.ts +2 -0
- package/dist/widget/ui/src/components/ListItem/ListItem.types.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ListItemButton/ListItemButton.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ListItemButton/ListItemButton.styles.d.ts +2 -2
- package/dist/widget/ui/src/components/ListItemButton/ListItemButton.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/ListItemButton/ListItemButton.types.d.ts +0 -1
- package/dist/widget/ui/src/components/ListItemButton/ListItemButton.types.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Popover/Popover.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/PriceImpact/PriceImpact.d.ts.map +1 -1
- package/dist/widget/ui/src/components/PriceImpact/PriceImpact.types.d.ts +1 -0
- package/dist/widget/ui/src/components/PriceImpact/PriceImpact.types.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Select/Select.d.ts +1 -1
- package/dist/widget/ui/src/components/Select/Select.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Select/Select.types.d.ts +8 -6
- package/dist/widget/ui/src/components/Select/Select.types.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Select/select.styles.d.ts +1 -0
- package/dist/widget/ui/src/components/Select/select.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/components/Tooltip/Tooltip.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/containers/SwapInput/SwapInput.styles.d.ts.map +1 -1
- package/dist/widget/ui/src/icons/BorderRadius.d.ts.map +1 -1
- package/dist/widget/ui/src/icons/Font.d.ts.map +1 -1
- package/dist/widget/ui/src/icons/Language.d.ts.map +1 -1
- package/dist/widget/ui/src/icons/Widget.d.ts +5 -0
- package/dist/widget/ui/src/icons/Widget.d.ts.map +1 -0
- package/dist/widget/ui/src/icons/index.d.ts +1 -0
- package/dist/widget/ui/src/icons/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/components/Alert/Alert.tsx +6 -1
- package/src/components/ChainToken/ChainToken.constants.ts +1 -0
- package/src/components/ChainToken/ChainToken.styles.ts +4 -0
- package/src/components/Divider/Divider.styles.ts +8 -0
- package/src/components/Flags/Bengali.tsx +25 -0
- package/src/components/Flags/Chinese.tsx +28 -0
- package/src/components/Flags/Finland.tsx +31 -0
- package/src/components/Flags/German.tsx +26 -0
- package/src/components/Flags/Greece.tsx +31 -0
- package/src/components/Flags/Hindi.tsx +29 -0
- package/src/components/Flags/Indonesian.tsx +25 -0
- package/src/components/Flags/Italian.tsx +26 -0
- package/src/components/Flags/Malay.tsx +29 -0
- package/src/components/Flags/Netherlands.tsx +29 -0
- package/src/components/Flags/Poland.tsx +25 -0
- package/src/components/Flags/Russian.tsx +26 -0
- package/src/components/Flags/Swedish.tsx +31 -0
- package/src/components/Flags/Thai.tsx +32 -0
- package/src/components/Flags/Turkish.tsx +28 -0
- package/src/components/Flags/Ukrainian.tsx +25 -0
- package/src/components/Flags/Vietnamese.tsx +28 -0
- package/src/components/Flags/index.ts +41 -1
- package/src/components/FullExpandedQuote/FullExpandedQuote.Skeletons.tsx +5 -12
- package/src/components/FullExpandedQuote/FullExpandedQuote.styles.ts +22 -9
- package/src/components/FullExpandedQuote/FullExpandedQuote.tsx +12 -7
- package/src/components/FullExpandedQuote/FullExpandedQuote.types.ts +1 -0
- package/src/components/Header/Header.styles.ts +1 -1
- package/src/components/I18nManager/I18nManager.tsx +20 -0
- package/src/components/ListItem/ListItem.types.ts +2 -0
- package/src/components/ListItemButton/ListItemButton.styles.ts +14 -30
- package/src/components/ListItemButton/ListItemButton.tsx +10 -8
- package/src/components/ListItemButton/ListItemButton.types.ts +0 -1
- package/src/components/Popover/Popover.styles.ts +7 -1
- package/src/components/PriceImpact/PriceImpact.tsx +5 -1
- package/src/components/PriceImpact/PriceImpact.types.ts +1 -0
- package/src/components/Select/Select.tsx +10 -7
- package/src/components/Select/Select.types.ts +10 -6
- package/src/components/Select/select.styles.ts +33 -13
- package/src/components/StepDetails/StepDetails.styles.ts +1 -1
- package/src/components/Tooltip/Tooltip.styles.ts +6 -4
- package/src/containers/SwapInput/SwapInput.styles.ts +6 -0
- package/src/containers/SwapInput/SwapInput.tsx +1 -1
- package/src/containers/SwapInput/TokenSection.styles.ts +1 -1
- package/src/icons/BorderRadius.tsx +10 -7
- package/src/icons/Font.tsx +17 -13
- package/src/icons/Language.tsx +44 -40
- package/src/icons/Widget.tsx +24 -0
- package/src/icons/index.ts +1 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Russian(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path fill="#0052b4" d="M512 170v172l-256 32L0 342V170l256-32z" />
|
|
21
|
+
<path fill="#eee" d="M512 0v170H0V0Z" />
|
|
22
|
+
<path fill="#d80027" d="M512 342v170H0V342Z" />
|
|
23
|
+
</g>
|
|
24
|
+
</svg>
|
|
25
|
+
);
|
|
26
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Swedish(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path
|
|
21
|
+
fill="#0052b4"
|
|
22
|
+
d="M0 0h133.6l35.3 16.7L200.3 0H512v222.6l-22.6 31.7 22.6 35.1V512H200.3l-32-19.8-34.7 19.8H0V289.4l22.1-33.3L0 222.6z"
|
|
23
|
+
/>
|
|
24
|
+
<path
|
|
25
|
+
fill="#ffda44"
|
|
26
|
+
d="M133.6 0v222.6H0v66.8h133.6V512h66.7V289.4H512v-66.8H200.3V0z"
|
|
27
|
+
/>
|
|
28
|
+
</g>
|
|
29
|
+
</svg>
|
|
30
|
+
);
|
|
31
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Thai(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path
|
|
21
|
+
fill="#d80027"
|
|
22
|
+
d="M0 0h512v89l-79.2 163.7L512 423v89H0v-89l82.7-169.6L0 89z"
|
|
23
|
+
/>
|
|
24
|
+
<path
|
|
25
|
+
fill="#eee"
|
|
26
|
+
d="M0 89h512v78l-42.6 91.2L512 345v78H0v-78l40-92.5L0 167z"
|
|
27
|
+
/>
|
|
28
|
+
<path fill="#0052b4" d="M0 167h512v178H0z" />
|
|
29
|
+
</g>
|
|
30
|
+
</svg>
|
|
31
|
+
);
|
|
32
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Turkish(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path fill="#d80027" d="M0 0h512v512H0z" />
|
|
21
|
+
<g fill="#eee">
|
|
22
|
+
<path d="m245.5 209.2 21 29 34-11.1-21 29 21 28.9-34-11.1-21 29V267l-34-11.1 34-11z" />
|
|
23
|
+
<path d="M188.2 328.3a72.3 72.3 0 1 1 34.4-136 89 89 0 1 0 0 127.3 72 72 0 0 1-34.4 8.7z" />
|
|
24
|
+
</g>
|
|
25
|
+
</g>
|
|
26
|
+
</svg>
|
|
27
|
+
);
|
|
28
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Ukrainian(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path fill="#ffda44" d="m0 256 258-39.4L512 256v256H0z" />
|
|
21
|
+
<path fill="#338af3" d="M0 0h512v256H0z" />
|
|
22
|
+
</g>
|
|
23
|
+
</svg>
|
|
24
|
+
);
|
|
25
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { FlagPropTypes } from './Flags.types';
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
|
|
5
|
+
import { DEFAULT_SIZE } from './Flags.constants';
|
|
6
|
+
|
|
7
|
+
export default function Vietnamese(props: FlagPropTypes) {
|
|
8
|
+
const { size = DEFAULT_SIZE } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<svg
|
|
12
|
+
width={size}
|
|
13
|
+
height={size}
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 512 512">
|
|
16
|
+
<mask id="a">
|
|
17
|
+
<circle cx={256} cy={256} r={256} fill="#fff" />
|
|
18
|
+
</mask>
|
|
19
|
+
<g mask="url(#a)">
|
|
20
|
+
<path fill="#d80027" d="M0 0h512v512H0z" />
|
|
21
|
+
<path
|
|
22
|
+
fill="#ffda44"
|
|
23
|
+
d="m256 133.6 27.6 85H373L300.7 271l27.6 85-72.3-52.5-72.3 52.6 27.6-85-72.3-52.6h89.4z"
|
|
24
|
+
/>
|
|
25
|
+
</g>
|
|
26
|
+
</svg>
|
|
27
|
+
);
|
|
28
|
+
}
|
|
@@ -1,9 +1,49 @@
|
|
|
1
|
+
import Bengali from './Bengali';
|
|
2
|
+
import Chinese from './Chinese';
|
|
1
3
|
import English from './English';
|
|
4
|
+
import Finland from './Finland';
|
|
2
5
|
import French from './French';
|
|
6
|
+
import German from './German';
|
|
7
|
+
import Greece from './Greece';
|
|
8
|
+
import Hindi from './Hindi';
|
|
9
|
+
import Indonesian from './Indonesian';
|
|
10
|
+
import Italian from './Italian';
|
|
3
11
|
import Japanese from './Japanese';
|
|
12
|
+
import Malay from './Malay';
|
|
13
|
+
import Netherlands from './Netherlands';
|
|
14
|
+
import Poland from './Poland';
|
|
4
15
|
import Portuguese from './Portuguese';
|
|
16
|
+
import Russian from './Russian';
|
|
5
17
|
import Spanish from './Spanish';
|
|
18
|
+
import Swedish from './Swedish';
|
|
19
|
+
import Thai from './Thai';
|
|
20
|
+
import Turkish from './Turkish';
|
|
21
|
+
import Ukrainian from './Ukrainian';
|
|
22
|
+
import Vietnamese from './Vietnamese';
|
|
6
23
|
|
|
7
24
|
export type { FlagPropTypes } from './Flags.types';
|
|
8
25
|
|
|
9
|
-
export {
|
|
26
|
+
export {
|
|
27
|
+
English,
|
|
28
|
+
Spanish,
|
|
29
|
+
Japanese,
|
|
30
|
+
French,
|
|
31
|
+
Portuguese,
|
|
32
|
+
Hindi,
|
|
33
|
+
Chinese,
|
|
34
|
+
Bengali,
|
|
35
|
+
Russian,
|
|
36
|
+
Indonesian,
|
|
37
|
+
German,
|
|
38
|
+
Malay,
|
|
39
|
+
Swedish,
|
|
40
|
+
Thai,
|
|
41
|
+
Turkish,
|
|
42
|
+
Ukrainian,
|
|
43
|
+
Vietnamese,
|
|
44
|
+
Finland,
|
|
45
|
+
Netherlands,
|
|
46
|
+
Greece,
|
|
47
|
+
Italian,
|
|
48
|
+
Poland,
|
|
49
|
+
};
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
FlexCenter,
|
|
8
8
|
OutputLoading,
|
|
9
9
|
Separator,
|
|
10
|
+
SkeletonItemLeftContainer,
|
|
10
11
|
VerticalLine,
|
|
11
12
|
} from './FullExpandedQuote.styles';
|
|
12
13
|
|
|
@@ -24,11 +25,7 @@ export function SkeletonHeader() {
|
|
|
24
25
|
css={{
|
|
25
26
|
gap: '$5',
|
|
26
27
|
}}>
|
|
27
|
-
<Skeleton width={
|
|
28
|
-
<Skeleton width={80} variant="text" size="large" />
|
|
29
|
-
<Skeleton width={75} variant="text" size="large" />
|
|
30
|
-
<Skeleton width={52} variant="text" size="large" />
|
|
31
|
-
<Skeleton width={95} variant="text" size="large" />
|
|
28
|
+
<Skeleton width={153} variant="text" size="large" />
|
|
32
29
|
</FlexCenter>
|
|
33
30
|
</>
|
|
34
31
|
);
|
|
@@ -39,7 +36,7 @@ export function SkeletonOutput() {
|
|
|
39
36
|
<OutputLoading>
|
|
40
37
|
<ChainToken
|
|
41
38
|
useAsPlaceholder={true}
|
|
42
|
-
size="
|
|
39
|
+
size="large"
|
|
43
40
|
chainImage=""
|
|
44
41
|
tokenImage=""
|
|
45
42
|
loading={true}
|
|
@@ -50,13 +47,9 @@ export function SkeletonOutput() {
|
|
|
50
47
|
}
|
|
51
48
|
export function SkeletonItemLeft() {
|
|
52
49
|
return (
|
|
53
|
-
<
|
|
54
|
-
style={{
|
|
55
|
-
display: 'flex',
|
|
56
|
-
alignItems: 'end',
|
|
57
|
-
}}>
|
|
50
|
+
<SkeletonItemLeftContainer>
|
|
58
51
|
<Skeleton variant="rounded" width={42} height={49} />
|
|
59
|
-
</
|
|
52
|
+
</SkeletonItemLeftContainer>
|
|
60
53
|
);
|
|
61
54
|
}
|
|
62
55
|
|
|
@@ -20,6 +20,12 @@ export const RouteContainer = styled('div', {
|
|
|
20
20
|
[`.${darkTheme} &`]: {
|
|
21
21
|
backgroundColor: '$neutral500',
|
|
22
22
|
},
|
|
23
|
+
'&:hover': {
|
|
24
|
+
backgroundColor: '$neutral300',
|
|
25
|
+
[`.${darkTheme} &`]: {
|
|
26
|
+
backgroundColor: '$neutral400',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
23
29
|
variants: {
|
|
24
30
|
selected: {
|
|
25
31
|
true: {
|
|
@@ -76,6 +82,7 @@ export const RightSection = styled('div', {
|
|
|
76
82
|
borderColor: '$info300',
|
|
77
83
|
display: 'flex',
|
|
78
84
|
flexDirection: 'column',
|
|
85
|
+
justifyContent: 'flex-end',
|
|
79
86
|
gap: '2px',
|
|
80
87
|
[`.${darkTheme} &`]: {
|
|
81
88
|
borderColor: '$secondary600',
|
|
@@ -109,8 +116,8 @@ export const SwapperContainer = styled(FlexCenter, {
|
|
|
109
116
|
export const SwapperImage = styled(FlexCenter, {
|
|
110
117
|
borderRadius: '$lg',
|
|
111
118
|
position: 'relative',
|
|
112
|
-
width: '$
|
|
113
|
-
height: '$
|
|
119
|
+
width: '$24',
|
|
120
|
+
height: '$24',
|
|
114
121
|
border: '1px solid transparent',
|
|
115
122
|
variants: {
|
|
116
123
|
state: {
|
|
@@ -127,10 +134,10 @@ export const SwapperImage = styled(FlexCenter, {
|
|
|
127
134
|
export const IconHighlight = styled(FlexCenter, {
|
|
128
135
|
borderRadius: '$lg',
|
|
129
136
|
position: 'absolute',
|
|
130
|
-
width: '$
|
|
131
|
-
height: '$
|
|
132
|
-
bottom: -
|
|
133
|
-
right: -
|
|
137
|
+
width: '$10',
|
|
138
|
+
height: '$10',
|
|
139
|
+
bottom: -3,
|
|
140
|
+
right: -3,
|
|
134
141
|
variants: {
|
|
135
142
|
type: {
|
|
136
143
|
warning: {
|
|
@@ -153,12 +160,12 @@ export const IconHighlight = styled(FlexCenter, {
|
|
|
153
160
|
|
|
154
161
|
export const OutputSection = styled(FlexCenter, {
|
|
155
162
|
flexDirection: 'column',
|
|
156
|
-
paddingLeft: '$
|
|
163
|
+
paddingLeft: '$8',
|
|
157
164
|
});
|
|
158
165
|
|
|
159
166
|
export const VerticalLine = styled('div', {
|
|
160
167
|
display: 'flex',
|
|
161
|
-
width: '50%',
|
|
168
|
+
width: 'calc(50% + 1px)',
|
|
162
169
|
borderRight: '1px dashed',
|
|
163
170
|
height: '$10',
|
|
164
171
|
borderColor: '$info300',
|
|
@@ -201,8 +208,14 @@ export const Separator = styled('div', {
|
|
|
201
208
|
});
|
|
202
209
|
|
|
203
210
|
export const OutputLoading = styled(FlexCenter, {
|
|
204
|
-
padding: '
|
|
211
|
+
padding: '$10 $2 0',
|
|
205
212
|
height: '85px',
|
|
206
213
|
gap: '$10',
|
|
207
214
|
flexDirection: 'column',
|
|
208
215
|
});
|
|
216
|
+
|
|
217
|
+
export const SkeletonItemLeftContainer = styled('div', {
|
|
218
|
+
display: 'flex',
|
|
219
|
+
alignItems: 'center',
|
|
220
|
+
paddingTop: '$25',
|
|
221
|
+
});
|
|
@@ -45,7 +45,8 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
45
45
|
warningLevel,
|
|
46
46
|
tooltipContainer,
|
|
47
47
|
onClick,
|
|
48
|
-
|
|
48
|
+
feeWarning,
|
|
49
|
+
selected = false,
|
|
49
50
|
} = props;
|
|
50
51
|
|
|
51
52
|
const steps: DataLoadedProps['steps'] = loading
|
|
@@ -64,6 +65,7 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
64
65
|
fee={props.fee}
|
|
65
66
|
time={props.time}
|
|
66
67
|
steps={numberOfSteps}
|
|
68
|
+
feeWarning={feeWarning}
|
|
67
69
|
/>
|
|
68
70
|
<TagsContainer>
|
|
69
71
|
{props.tags.map((tag) => (
|
|
@@ -85,7 +87,7 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
85
87
|
) : (
|
|
86
88
|
<LeftSection>
|
|
87
89
|
<ChainToken
|
|
88
|
-
size="
|
|
90
|
+
size="xmedium"
|
|
89
91
|
chainImage={step.from.chain.image}
|
|
90
92
|
tokenImage={step.from.token.image}
|
|
91
93
|
/>
|
|
@@ -116,20 +118,21 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
116
118
|
<SwapperContainer>
|
|
117
119
|
<SwapperImage state={step.state}>
|
|
118
120
|
<Image
|
|
119
|
-
size={
|
|
121
|
+
size={22}
|
|
120
122
|
type="circular"
|
|
121
123
|
src={step.swapper.image}
|
|
122
124
|
/>
|
|
123
125
|
{step.state && (
|
|
124
126
|
<IconHighlight type={step.state}>
|
|
125
127
|
{step.state === 'error' ? (
|
|
126
|
-
<ErrorIcon size={
|
|
128
|
+
<ErrorIcon size={8} color="error" />
|
|
127
129
|
) : (
|
|
128
|
-
<WarningIcon size={
|
|
130
|
+
<WarningIcon size={8} color="warning" />
|
|
129
131
|
)}
|
|
130
132
|
</IconHighlight>
|
|
131
133
|
)}
|
|
132
134
|
</SwapperImage>
|
|
135
|
+
<Divider size={2} />
|
|
133
136
|
<Typography size="xsmall" variant="body" align="center">
|
|
134
137
|
{step.swapper.displayName}
|
|
135
138
|
</Typography>
|
|
@@ -149,6 +152,7 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
149
152
|
tokenImage={steps[numberOfSteps - 1].to.token.image}
|
|
150
153
|
size="medium"
|
|
151
154
|
/>
|
|
155
|
+
<Divider size={4} />
|
|
152
156
|
<div>
|
|
153
157
|
<Tooltip
|
|
154
158
|
content={props.outputPrice.realValue}
|
|
@@ -158,13 +162,14 @@ export function FullExpandedQuote(props: PropTypes) {
|
|
|
158
162
|
{props.outputPrice.value}
|
|
159
163
|
</Typography>
|
|
160
164
|
<Divider size={4} direction="horizontal" />
|
|
161
|
-
<Typography size="
|
|
165
|
+
<Typography size="xmedium" variant="title">
|
|
162
166
|
{steps[numberOfSteps - 1].to.token.displayName}
|
|
163
167
|
</Typography>
|
|
164
168
|
</Tooltip>
|
|
165
169
|
</div>
|
|
166
170
|
<StyledPriceImpact
|
|
167
|
-
size="
|
|
171
|
+
size="small"
|
|
172
|
+
outputColor="$neutral700"
|
|
168
173
|
warningLevel={warningLevel}
|
|
169
174
|
outputUsdValue={props.outputPrice.usdValue}
|
|
170
175
|
realOutputUsdValue={props.outputPrice.realUsdValue}
|
|
@@ -16,7 +16,7 @@ export const Container = styled('div', {
|
|
|
16
16
|
display: 'flex',
|
|
17
17
|
justifyContent: 'space-between',
|
|
18
18
|
alignItems: 'center',
|
|
19
|
-
padding: '$15 $20',
|
|
19
|
+
padding: '$20 $20 $15 $20',
|
|
20
20
|
$$color: '$colors$neutral100',
|
|
21
21
|
[`.${darkTheme} &`]: {
|
|
22
22
|
$$color: '$colors$neutral300',
|
|
@@ -11,11 +11,21 @@ import React, { useEffect, useReducer } from 'react';
|
|
|
11
11
|
* "translations/*": ["../../translations/*"]
|
|
12
12
|
*}
|
|
13
13
|
*/
|
|
14
|
+
import { messages as deMessages } from '../../../../../translations/de';
|
|
15
|
+
import { messages as elMessages } from '../../../../../translations/el';
|
|
14
16
|
import { messages as enMessages } from '../../../../../translations/en';
|
|
15
17
|
import { messages as esMessages } from '../../../../../translations/es';
|
|
18
|
+
import { messages as fiMessages } from '../../../../../translations/fi';
|
|
16
19
|
import { messages as frMessages } from '../../../../../translations/fr';
|
|
20
|
+
import { messages as itMessages } from '../../../../../translations/it';
|
|
17
21
|
import { messages as jaMessages } from '../../../../../translations/ja';
|
|
22
|
+
import { messages as nlMessages } from '../../../../../translations/nl';
|
|
23
|
+
import { messages as plMessages } from '../../../../../translations/pl';
|
|
18
24
|
import { messages as ptMessages } from '../../../../../translations/pt';
|
|
25
|
+
import { messages as ruMessages } from '../../../../../translations/ru';
|
|
26
|
+
import { messages as svMessages } from '../../../../../translations/sv';
|
|
27
|
+
import { messages as ukMessages } from '../../../../../translations/uk';
|
|
28
|
+
import { messages as zhMessages } from '../../../../../translations/zh';
|
|
19
29
|
|
|
20
30
|
const messages = {
|
|
21
31
|
en: enMessages,
|
|
@@ -23,6 +33,16 @@ const messages = {
|
|
|
23
33
|
ja: jaMessages,
|
|
24
34
|
fr: frMessages,
|
|
25
35
|
pt: ptMessages,
|
|
36
|
+
zh: zhMessages,
|
|
37
|
+
ru: ruMessages,
|
|
38
|
+
de: deMessages,
|
|
39
|
+
uk: ukMessages,
|
|
40
|
+
sv: svMessages,
|
|
41
|
+
fi: fiMessages,
|
|
42
|
+
nl: nlMessages,
|
|
43
|
+
el: elMessages,
|
|
44
|
+
it: itMessages,
|
|
45
|
+
pl: plMessages,
|
|
26
46
|
};
|
|
27
47
|
|
|
28
48
|
i18n.load(messages);
|
|
@@ -1,26 +1,10 @@
|
|
|
1
1
|
import { darkTheme, styled } from '../../theme';
|
|
2
|
+
import { ListItem } from '../ListItem/ListItem';
|
|
2
3
|
|
|
3
|
-
export const BaseListItemButton = styled(
|
|
4
|
+
export const BaseListItemButton = styled(ListItem, {
|
|
4
5
|
transition: 'all 0.35s',
|
|
5
|
-
border: 0,
|
|
6
|
-
width: '100%',
|
|
7
|
-
backgroundColor: 'transparent',
|
|
8
|
-
fontFamily: 'inherit',
|
|
9
|
-
padding: 'unset',
|
|
10
|
-
'&:focus-visible': {
|
|
11
|
-
borderRadius: '$xs',
|
|
12
|
-
|
|
13
|
-
outline: 0,
|
|
14
|
-
$$color: '$colors$info100',
|
|
15
|
-
[`.${darkTheme} &`]: {
|
|
16
|
-
$$color: '$colors$info700',
|
|
17
|
-
},
|
|
18
|
-
backgroundColor: '$$color',
|
|
19
|
-
},
|
|
20
6
|
'&:hover': {
|
|
21
7
|
$$color: '$colors$info100',
|
|
22
|
-
borderRadius: '$xs',
|
|
23
|
-
|
|
24
8
|
[`.${darkTheme} &`]: {
|
|
25
9
|
$$color: '$colors$neutral100',
|
|
26
10
|
},
|
|
@@ -30,19 +14,19 @@ export const BaseListItemButton = styled('button', {
|
|
|
30
14
|
'&:active': {
|
|
31
15
|
transform: 'scale(0.99)',
|
|
32
16
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
borderColor: '$$color',
|
|
42
|
-
borderBottomRightRadius: 0,
|
|
43
|
-
borderBottomLeftRadius: 0,
|
|
44
|
-
},
|
|
17
|
+
|
|
18
|
+
'&:focus-visible': {
|
|
19
|
+
borderRadius: '$xs',
|
|
20
|
+
|
|
21
|
+
outline: 0,
|
|
22
|
+
$$color: '$colors$info100',
|
|
23
|
+
[`.${darkTheme} &`]: {
|
|
24
|
+
$$color: '$colors$info700',
|
|
45
25
|
},
|
|
26
|
+
backgroundColor: '$$color',
|
|
27
|
+
},
|
|
28
|
+
|
|
29
|
+
variants: {
|
|
46
30
|
selected: {
|
|
47
31
|
true: { outline: '1px solid $secondary500' },
|
|
48
32
|
false: { outline: 0 },
|
|
@@ -2,25 +2,27 @@ import type { ListItemButtonProps } from './ListItemButton.types';
|
|
|
2
2
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
|
|
5
|
-
import { ListItem } from '../ListItem/ListItem';
|
|
6
|
-
|
|
7
5
|
import { BaseListItemButton } from './ListItemButton.styles';
|
|
8
6
|
|
|
9
7
|
function ListItemButton(props: ListItemButtonProps) {
|
|
10
|
-
const { onClick, id,
|
|
8
|
+
const { onClick, id, selected, ...restProps } = props;
|
|
11
9
|
const onClickWithKey = () => {
|
|
12
10
|
if (onClick) {
|
|
13
11
|
onClick(id);
|
|
14
12
|
}
|
|
15
13
|
};
|
|
14
|
+
|
|
16
15
|
return (
|
|
17
16
|
<BaseListItemButton
|
|
18
|
-
hasDivider={hasDivider}
|
|
19
|
-
selected={selected}
|
|
20
17
|
onClick={onClickWithKey}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
18
|
+
aria-label="button"
|
|
19
|
+
selected={selected}
|
|
20
|
+
onKeyUp={(e: { key: string }) => {
|
|
21
|
+
e.key === 'Enter' && onClickWithKey();
|
|
22
|
+
}}
|
|
23
|
+
tabIndex={0}
|
|
24
|
+
{...restProps}
|
|
25
|
+
/>
|
|
24
26
|
);
|
|
25
27
|
}
|
|
26
28
|
|
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
import * as RadixPopover from '@radix-ui/react-popover';
|
|
2
2
|
|
|
3
|
-
import { styled } from '../../theme';
|
|
3
|
+
import { darkTheme, styled } from '../../theme';
|
|
4
4
|
|
|
5
5
|
export const PopoverContainer = styled(RadixPopover.Content, {
|
|
6
6
|
borderRadius: '$sm',
|
|
7
7
|
filter: 'drop-shadow(0px 5px 20px rgba(130, 130, 130, 0.20))',
|
|
8
8
|
backgroundColor: '$neutral100',
|
|
9
|
+
[`.${darkTheme} &`]: {
|
|
10
|
+
backgroundColor: '$neutral300',
|
|
11
|
+
},
|
|
9
12
|
});
|
|
10
13
|
|
|
11
14
|
export const PopoverArrow = styled(RadixPopover.Arrow, {
|
|
12
15
|
fill: '$neutral100',
|
|
16
|
+
[`.${darkTheme} &`]: {
|
|
17
|
+
fill: '$neutral300',
|
|
18
|
+
},
|
|
13
19
|
width: '$16',
|
|
14
20
|
height: '$8',
|
|
15
21
|
});
|
|
@@ -10,6 +10,7 @@ export function PriceImpact(props: PriceImpactProps) {
|
|
|
10
10
|
const {
|
|
11
11
|
size = 'medium',
|
|
12
12
|
outputUsdValue,
|
|
13
|
+
outputColor,
|
|
13
14
|
realOutputUsdValue,
|
|
14
15
|
percentageChange,
|
|
15
16
|
warningLevel,
|
|
@@ -37,7 +38,10 @@ export function PriceImpact(props: PriceImpactProps) {
|
|
|
37
38
|
: undefined
|
|
38
39
|
}
|
|
39
40
|
side={tooltipProps?.side}>
|
|
40
|
-
<OutputUsdValue
|
|
41
|
+
<OutputUsdValue
|
|
42
|
+
size={size}
|
|
43
|
+
variant="body"
|
|
44
|
+
color={outputColor || '$neutral600'}>
|
|
41
45
|
{`~$${outputUsdValue}`}
|
|
42
46
|
</OutputUsdValue>
|
|
43
47
|
</Tooltip>
|
|
@@ -6,6 +6,7 @@ export type PriceImpactWarningLevel = 'low' | 'high' | undefined;
|
|
|
6
6
|
export type PriceImpactProps = {
|
|
7
7
|
size: TypographyPropTypes['size'];
|
|
8
8
|
outputUsdValue?: string;
|
|
9
|
+
outputColor?: string;
|
|
9
10
|
realOutputUsdValue?: string;
|
|
10
11
|
error?: string;
|
|
11
12
|
percentageChange?: string | null;
|