svg wallet type icon

This commit is contained in:
Serhii 2023-10-02 19:46:02 +03:00
parent 8c3f38837e
commit d75a5eca87
40 changed files with 108 additions and 75 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" style="enable-background:new 0 0 800 800" viewBox="0 0 800 800"><defs><path id="a" d="M0 0h800v800H0z"/></defs><clipPath id="b"><use xlink:href="#a" style="overflow:visible"/></clipPath><g style="clip-path:url(#b)"><linearGradient id="c" x1="-597.355" x2="-598.099" y1="900.686" y2="900.06" gradientTransform="matrix(776 0 0 -776 464237 699089)" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#b6509e"/><stop offset="1" style="stop-color:#2ebac6"/></linearGradient><circle cx="400" cy="400" r="388" style="fill:url(#c)"/><path d="M569.8 554.6 438.6 237.4c-7.4-16.4-18.4-24.4-32.9-24.4h-11.6c-14.5 0-25.5 8-32.9 24.4l-57.1 138.2h-43.2c-12.9.1-23.4 10.5-23.5 23.5v.3c.1 12.9 10.6 23.4 23.5 23.5h23.2l-54.5 131.7c-1 2.9-1.6 5.9-1.6 9 0 7.4 2.3 13.2 6.4 17.7s10 6.7 17.4 6.7c4.9-.1 9.6-1.6 13.5-4.5 4.2-2.9 7.1-7.1 9.4-11.9l60-148.8h41.6c12.9-.1 23.4-10.5 23.5-23.5v-.6c-.1-12.9-10.6-23.4-23.5-23.5h-22.2l45.8-114.1 124.8 310.4c2.3 4.8 5.2 9 9.4 11.9 3.9 2.9 8.7 4.4 13.5 4.5 7.4 0 13.2-2.2 17.4-6.7 4.2-4.5 6.4-10.3 6.4-17.7.1-3-.4-6.1-1.6-8.9z" style="fill:#fff"/></g></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer_1" x="0" y="0" version="1.1" viewBox="0 0 375 346.5"><g id="Layer_2_1_"><g id="Layer_1-2"><path d="M102.8 172c-.8 13.9 9.9 25.8 23.8 26.6h1.5c14 0 25.3-11.3 25.2-25.3 0-14-11.3-25.3-25.3-25.2-13.4 0-24.5 10.5-25.2 23.9zM8.6 165.5c-4.5-.3-8.4 3.2-8.6 7.7s3.2 8.4 7.7 8.6c4.5.3 8.3-3.2 8.6-7.7.3-4.5-3.2-8.3-7.7-8.6zM101.2 25.4c4-2 5.6-7 3.6-11-2-4-7-5.6-11-3.6-4 2-5.6 6.9-3.6 10.9 2 4.1 6.9 5.8 11 3.7-.1 0 0 0 0 0zM126.8 70.1c6.2-3.1 8.7-10.7 5.6-16.9s-10.7-8.7-16.9-5.6c-6.2 3.1-8.7 10.7-5.6 16.9 3.1 6.2 10.7 8.7 16.9 5.6zM40.6 100.8c4.8 3.1 11.2 1.8 14.4-3 3.1-4.8 1.8-11.2-3-14.4-4.8-3.1-11.2-1.8-14.4 3-3.2 4.8-1.8 11.3 3 14.4zM55.9 161c-7-.4-12.9 4.9-13.3 11.9s4.9 12.9 11.9 13.3c7 .4 12.9-4.9 13.3-11.9.4-6.9-4.9-12.9-11.9-13.3zM42 245.7c-5.1 2.6-7.2 8.8-4.6 14 2.6 5.1 8.8 7.2 14 4.6 5.1-2.6 7.2-8.8 4.6-14-2.6-5.1-8.9-7.2-14-4.6zM91 134.9c6.9 4.5 16.1 2.6 20.5-4.3 4.5-6.9 2.6-16.1-4.3-20.5-6.9-4.5-16.1-2.6-20.5 4.3-4.5 6.8-2.6 16 4.3 20.5zM246.5 69.1c5.8 3.8 13.7 2.2 17.5-3.6s2.2-13.7-3.6-17.5c-5.8-3.8-13.7-2.2-17.5 3.6-3.9 5.9-2.3 13.7 3.6 17.5zM272.3 24.6c3.8 2.5 8.8 1.4 11.3-2.4s1.4-8.8-2.4-11.3-8.8-1.4-11.3 2.3c-2.4 3.8-1.3 8.9 2.4 11.4zM248.4 147.9c-13.9-.8-25.9 9.9-26.6 23.8-.8 13.9 9.9 25.9 23.8 26.6h1.4c13.9 0 25.2-11.3 25.2-25.3.1-13.3-10.4-24.4-23.8-25.1zM135.1 133.1c4.3 8.5 13 13.9 22.6 13.9 13.9 0 25.2-11.3 25.2-25.3 0-3.9-.9-7.8-2.7-11.4-6.3-12.5-21.5-17.5-33.9-11.2-12.5 6.4-17.5 21.6-11.2 34zM333 100.8c5.1-2.6 7.1-8.9 4.5-14-2.6-5.1-8.9-7.1-14-4.5-5.1 2.6-7.1 8.8-4.6 13.9 2.7 5.1 8.9 7.2 14.1 4.6zM269 108.8c-7.3 3.7-10.3 12.6-6.6 19.9 3.7 7.3 12.6 10.3 19.9 6.6 7.3-3.7 10.3-12.6 6.6-19.9-3.7-7.3-12.6-10.2-19.9-6.6zM186.5 20.8c5.7.3 10.6-4.1 11-9.8S193.4.4 187.7 0c-5.7-.3-10.6 4-11 9.7-.3 5.8 4.1 10.7 9.8 11.1zM186.4 86.1c8.2.5 15.2-5.8 15.6-14 .5-8.2-5.8-15.2-14-15.6-8.2-.5-15.2 5.8-15.6 14-.4 8.2 5.8 15.2 14 15.6zM106 237.7c7.3-3.7 10.3-12.6 6.6-19.9-3.7-7.3-12.6-10.3-19.9-6.6-7.3 3.7-10.3 12.6-6.6 19.9 3.7 7.3 12.6 10.3 19.9 6.6zM196 107.8c-7.6 11.7-4.4 27.3 7.3 34.9 11.7 7.6 27.3 4.4 34.9-7.3 7.6-11.7 4.4-27.3-7.3-34.9-4.1-2.7-8.9-4.1-13.8-4.1-8.5 0-16.4 4.3-21.1 11.4zM239.9 213.4c-6.3-12.5-21.5-17.5-33.9-11.2-12.5 6.3-17.5 21.5-11.2 33.9 6.3 12.5 21.5 17.5 33.9 11.2 12.4-6.2 17.5-21.2 11.3-33.7 0-.1 0-.1-.1-.2zM284 211.6c-6.9-4.5-16.1-2.6-20.5 4.3-4.5 6.9-2.6 16.1 4.3 20.5 6.9 4.5 16.1 2.6 20.5-4.3 4.5-6.8 2.6-16-4.3-20.5zM332.4 173.7c.4-7-4.9-12.9-11.9-13.3-7-.4-12.9 4.9-13.3 11.9-.4 7 4.9 12.9 11.9 13.3 6.9.4 12.9-5 13.3-11.9zM367.3 164.7c-4.5-.3-8.4 3.2-8.6 7.7s3.2 8.4 7.7 8.6c4.5.3 8.3-3.2 8.6-7.7.2-4.5-3.2-8.3-7.7-8.6zM334.4 245.7c-4.8-3.1-11.2-1.8-14.4 3-3.1 4.8-1.8 11.2 3 14.4 4.8 3.1 11.2 1.8 14.4-3 3.2-4.8 1.8-11.3-3-14.4zM102.6 321.9c-3.8-2.5-8.8-1.4-11.3 2.3-2.5 3.8-1.4 8.8 2.3 11.3 3.8 2.5 8.8 1.4 11.3-2.3 2.6-3.7 1.5-8.8-2.3-11.3zM273.8 321.1c-4 2-5.6 7-3.6 11 2 4 7 5.6 11 3.6 4-2 5.6-6.9 3.6-10.9-2-4.1-6.9-5.8-11-3.7.1 0 0 0 0 0zM179 238.7c7.6-11.7 4.4-27.3-7.3-35-11.7-7.6-27.3-4.4-35 7.3s-4.4 27.3 7.3 35c4.1 2.7 8.9 4.1 13.8 4.1 8.6.1 16.5-4.2 21.2-11.4zM128.5 277.4c-5.8-3.8-13.7-2.2-17.5 3.6-3.8 5.8-2.2 13.7 3.6 17.5s13.7 2.2 17.5-3.6c3.9-5.8 2.3-13.7-3.6-17.5zM187.4 325.7c-5.7-.3-10.6 4.1-11 9.8s4.1 10.6 9.8 11c5.7.3 10.6-4 11-9.7.3-5.8-4.1-10.7-9.8-11.1zM187.5 260.4c-8.2-.5-15.2 5.8-15.6 14-.5 8.2 5.8 15.2 14 15.6 8.2.4 15.2-5.8 15.6-14 .5-8.1-5.8-15.2-14-15.6zM248.2 276.4c-6.2 3.2-8.7 10.8-5.5 17 3.2 6.2 10.8 8.7 17 5.5 6.2-3.1 8.7-10.7 5.6-16.9-3.2-6.2-10.8-8.8-17.1-5.6z" class="st0"/></g></g></svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 788 788"><circle cx="394" cy="394" r="394" fill="#0ac18e"/><path fill="#fff" d="M516.9 261.7c-19.8-44.9-65.3-54.5-121-45.2L378 147.1 335.8 158l17.6 69.2c-11.1 2.8-22.5 5.2-33.8 8.4L302 166.8l-42.2 10.9 17.9 69.4c-9.1 2.6-85.2 22.1-85.2 22.1l11.6 45.2s31-8.7 30.7-8c17.2-4.5 25.3 4.1 29.1 12.2l49.2 190.2c.6 5.5-.4 14.9-12.2 18.1.7.4-30.7 7.9-30.7 7.9l4.6 52.7s75.4-19.3 85.3-21.8l18.1 70.2 42.2-10.9-18.1-70.7c11.6-2.7 22.9-5.5 33.9-8.4l18 70.3 42.2-10.9-18.1-70.1c65-15.8 110.9-56.8 101.5-119.5-6-37.8-47.3-68.8-81.6-72.3 21.1-18.7 31.8-46 18.7-81.7zm-20.3 165.5c8.4 62.1-77.9 69.7-106.4 77.2l-24.8-92.9c28.6-7.5 117-39 131.2 15.7zm-52-126.5c8.9 55.2-64.9 61.6-88.7 67.7l-22.6-84.3c23.9-5.9 93.2-34.5 111.3 16.6z"/></svg>

After

Width:  |  Height:  |  Size: 796 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 2496 2496"><path fill="#f0b90b" fill-rule="evenodd" d="M1248 0c689.3 0 1248 558.7 1248 1248s-558.7 1248-1248 1248S0 1937.3 0 1248 558.7 0 1248 0z" clip-rule="evenodd"/><path fill="#fff" d="m685.9 1248 .9 330 280.4 165v193.2l-444.5-260.7v-524l163.2 96.5zm0-330v192.3l-163.3-96.6V821.4l163.3-96.6L850 821.4 685.9 918zm398.4-96.6 163.3-96.6 164.1 96.6-164.1 96.6-163.3-96.6z"/><path fill="#fff" d="M803.9 1509.6v-193.2l163.3 96.6v192.3l-163.3-95.7zm280.4 302.6 163.3 96.6 164.1-96.6v192.3l-164.1 96.6-163.3-96.6v-192.3zm561.6-990.8 163.3-96.6 164.1 96.6v192.3l-164.1 96.6V918l-163.3-96.6zm163.3 756.6.9-330 163.3-96.6v524l-444.5 260.7v-193.2l280.3-164.9z"/><path fill="#fff" d="m1692.1 1509.6-163.3 95.7V1413l163.3-96.6v193.2z"/><path fill="#fff" d="m1692.1 986.4.9 193.2-281.2 165v330.8l-163.3 95.7-163.3-95.7v-330.8l-281.2-165V986.4l164-96.6 279.5 165.8 281.2-165.8 164.1 96.6h-.7zM803.9 656.5l443.7-261.6 444.5 261.6-163.3 96.6-281.2-165.8-280.4 165.8-163.3-96.6z"/></svg>

After

Width:  |  Height:  |  Size: 1 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" fill-rule="evenodd" clip-rule="evenodd" image-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" viewBox="0 0 4091.27 4091.73"><g fill-rule="nonzero"><path fill="#F7931A" d="M4030.06 2540.77C3756.82 3636.78 2646.74 4303.79 1550.6 4030.48 454.92 3757.24-212.09 2647.09 61.27 1551.17c273.12-1096.13 1383.2-1763.19 2479-1489.95C3636.33 334.46 4303.3 1444.73 4030.03 2540.79l.02-.02z"/><path fill="#fff" d="M2947.77 1754.38c40.72-272.26-166.56-418.61-450-516.24l91.95-368.8-224.5-55.94-89.51 359.09c-59.02-14.72-119.63-28.59-179.87-42.34L2186 768.69l-224.36-55.94-92 368.68c-48.84-11.12-96.81-22.11-143.35-33.69l.26-1.16-309.59-77.31-59.72 239.78s166.56 38.18 163.05 40.53c90.91 22.69 107.35 82.87 104.62 130.57l-104.74 420.15c6.26 1.59 14.38 3.89 23.34 7.49-7.49-1.86-15.46-3.89-23.73-5.87l-146.81 588.57c-11.11 27.62-39.31 69.07-102.87 53.33 2.25 3.26-163.17-40.72-163.17-40.72l-111.46 256.98 292.15 72.83c54.35 13.63 107.61 27.89 160.06 41.3l-92.9 373.03 224.24 55.94 92-369.07c61.26 16.63 120.71 31.97 178.91 46.43l-91.69 367.33 224.51 55.94 92.89-372.33c382.82 72.45 670.67 43.24 791.83-303.02 97.63-278.78-4.86-439.58-206.26-544.44 146.69-33.83 257.18-130.31 286.64-329.61l-.07-.05zm-512.93 719.26c-69.38 278.78-538.76 128.08-690.94 90.29l123.28-494.2c152.17 37.99 640.17 113.17 567.67 403.91zm69.43-723.3c-63.29 253.58-453.96 124.75-580.69 93.16l111.77-448.21c126.73 31.59 534.85 90.55 468.94 355.05h-.02z"/></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" fill-rule="evenodd" clip-rule="evenodd" image-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" viewBox="0 0 784.37 1277.39"><g fill-rule="nonzero"><path fill="#343434" d="m392.07 0-8.57 29.11v844.63l8.57 8.55 392.06-231.75z"/><path fill="#8C8C8C" d="M392.07 0 0 650.54l392.07 231.75V472.33z"/><path fill="#3C3C3B" d="m392.07 956.52-4.83 5.89v300.87l4.83 14.1 392.3-552.49z"/><path fill="#8C8C8C" d="M392.07 1277.38V956.52L0 724.89z"/><path fill="#141414" d="m392.07 882.29 392.06-231.75-392.06-178.21z"/><path fill="#393939" d="m0 650.54 392.07 231.75V472.33z"/></g></svg>

After

Width:  |  Height:  |  Size: 685 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 82.6 82.6"><circle cx="41.3" cy="41.3" r="36.83" fill="#fff"/><path fill="#345d9d" d="M41.3 0a41.3 41.3 0 1 0 41.3 41.3A41.18 41.18 0 0 0 41.54 0Zm.7 42.7-4.3 14.5h23a1.16 1.16 0 0 1 1.2 1.12v.38l-2 6.9a1.49 1.49 0 0 1-1.5 1.1H23.2l5.9-20.1-6.6 2L24 44l6.6-2 8.3-28.2a1.51 1.51 0 0 1 1.5-1.1h8.9a1.16 1.16 0 0 1 1.2 1.12v.38l-7 23.8 6.6-2-1.4 4.8Z"/></svg>

After

Width:  |  Height:  |  Size: 429 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 3756.09 3756.49"><path fill="#fff" d="M3756.04 1878.06c0 1037.19-840.74 1878.05-1878 1878.05S.04 2915.25.04 1878.06 840.8 0 1878.04 0s1878 840.79 1878 1878.06Z"/><path fill="#f26822" d="M1878.04 0C841.15 0-1.08 842.06.24 1878c.26 207.26 33.31 406.63 95.34 593.12h561.88V891.25l1220.58 1220.57L3098.56 891.25v1579.9h562c62.12-186.48 95-385.85 95.37-593.12C3757.7 841.01 2915.04.25 1878.04.25Z" data-name="149931032"/><path fill="#4d4d4d" d="m1597.34 2392.42-532.67-532.7v994.14H657.42l-384.29.07c329.63 540.8 925.35 902.56 1604.91 902.56s1275.31-361.84 1605-902.64h-791.75v-994.13l-532.7 532.7-280.61 280.61-280.62-280.61Z" data-name="149931160"/></svg>

After

Width:  |  Height:  |  Size: 725 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 941 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

View file

@ -109,16 +109,16 @@ class CryptoCurrency extends EnumerableItem<int> with Serializable<int> implemen
];
// title, tag (if applicable), fullName (if unique), raw, name, iconPath
static const xmr = CryptoCurrency(title: 'XMR', fullName: 'Monero', raw: 0, name: 'xmr', iconPath: 'assets/images/monero_icon.png');
static const ada = CryptoCurrency(title: 'ADA', fullName: 'Cardano', raw: 1, name: 'ada', iconPath: 'assets/images/ada_icon.png');
static const bch = CryptoCurrency(title: 'BCH', fullName: 'Bitcoin Cash', raw: 2, name: 'bch', iconPath: 'assets/images/bch_icon.png');
static const bnb = CryptoCurrency(title: 'BNB', tag: 'BSC', fullName: 'Binance Coin', raw: 3, name: 'bnb', iconPath: 'assets/images/bnb_icon.png');
static const btc = CryptoCurrency(title: 'BTC', fullName: 'Bitcoin', raw: 4, name: 'btc', iconPath: 'assets/images/btc.png');
static const xmr = CryptoCurrency(title: 'XMR', fullName: 'Monero', raw: 0, name: 'xmr', iconPath: 'assets/images/crypto_assets/monero_icon.svg');
static const ada = CryptoCurrency(title: 'ADA', fullName: 'Cardano', raw: 1, name: 'ada', iconPath: 'assets/images/crypto_assets/ada_icon.svg');
static const bch = CryptoCurrency(title: 'BCH', fullName: 'Bitcoin Cash', raw: 2, name: 'bch', iconPath: 'assets/images/crypto_assets/bch_icon.svg');
static const bnb = CryptoCurrency(title: 'BNB', tag: 'BSC', fullName: 'Binance Coin', raw: 3, name: 'bnb', iconPath: 'assets/images/crypto_assets/bnb_icon.svg');
static const btc = CryptoCurrency(title: 'BTC', fullName: 'Bitcoin', raw: 4, name: 'btc', iconPath: 'assets/images/crypto_assets/btc_icon.svg');
static const dai = CryptoCurrency(title: 'DAI', tag: 'ETH', fullName: 'Dai', raw: 5, name: 'dai', iconPath: 'assets/images/dai_icon.png');
static const dash = CryptoCurrency(title: 'DASH', fullName: 'Dash', raw: 6, name: 'dash', iconPath: 'assets/images/dash_icon.png');
static const eos = CryptoCurrency(title: 'EOS', fullName: 'EOS', raw: 7, name: 'eos', iconPath: 'assets/images/eos_icon.png');
static const eth = CryptoCurrency(title: 'ETH', fullName: 'Ethereum', raw: 8, name: 'eth', iconPath: 'assets/images/eth_icon.png');
static const ltc = CryptoCurrency(title: 'LTC', fullName: 'Litecoin', raw: 9, name: 'ltc', iconPath: 'assets/images/litecoin-ltc_icon.png');
static const eth = CryptoCurrency(title: 'ETH', fullName: 'Ethereum', raw: 8, name: 'eth', iconPath: 'assets/images/crypto_assets/eth_icon.svg');
static const ltc = CryptoCurrency(title: 'LTC', fullName: 'Litecoin', raw: 9, name: 'ltc', iconPath: 'assets/images/crypto_assets/ltc_icon.svg');
static const nano = CryptoCurrency(title: 'NANO', raw: 10, name: 'nano', iconPath: 'assets/images/nano.png');
static const trx = CryptoCurrency(title: 'TRX', fullName: 'TRON', raw: 11, name: 'trx', iconPath: 'assets/images/trx_icon.png');
static const usdt = CryptoCurrency(title: 'USDT', tag: 'OMNI', fullName: 'USDT Tether', raw: 12, name: 'usdt', iconPath: 'assets/images/usdt_icon.png');
@ -174,9 +174,9 @@ class CryptoCurrency extends EnumerableItem<int> with Serializable<int> implemen
static const scrt = CryptoCurrency(title: 'SCRT', fullName: 'Secret Network', raw: 59, name: 'scrt', iconPath: 'assets/images/scrt_icon.png');
static const uni = CryptoCurrency(title: 'UNI', tag: 'ETH', fullName: 'Uniswap', raw: 60, name: 'uni', iconPath: 'assets/images/uni_icon.png');
static const stx = CryptoCurrency(title: 'STX', fullName: 'Stacks', raw: 61, name: 'stx', iconPath: 'assets/images/stx_icon.png');
static const btcln = CryptoCurrency(title: 'BTC', tag: 'LN', fullName: 'Bitcoin Lightning Network', raw: 62, name: 'btcln', iconPath: 'assets/images/btc.png');
static const btcln = CryptoCurrency(title: 'BTC', tag: 'LN', fullName: 'Bitcoin Lightning Network', raw: 62, name: 'btcln', iconPath: 'assets/images/crypto_assets/btc_icon.svg');
static const shib = CryptoCurrency(title: 'SHIB', tag: 'ETH', fullName: 'Shiba Inu', raw: 63, name: 'shib', iconPath: 'assets/images/shib_icon.png');
static const aave = CryptoCurrency(title: 'AAVE', tag: 'ETH', fullName: 'Aave', raw: 64, name: 'aave', iconPath: 'assets/images/aave_icon.png');
static const aave = CryptoCurrency(title: 'AAVE', tag: 'ETH', fullName: 'Aave', raw: 64, name: 'aave', iconPath: 'assets/images/crypto_assets/aave_icon.svg');
static const arb = CryptoCurrency(title: 'ARB', fullName: 'Arbitrum', raw: 65, name: 'arb', iconPath: 'assets/images/arb_icon.png');
static const bat = CryptoCurrency(title: 'BAT', tag: 'ETH', fullName: 'Basic Attention Token', raw: 66, name: 'bat', iconPath: 'assets/images/bat_icon.png');
static const comp = CryptoCurrency(title: 'COMP', tag: 'ETH', fullName: 'Compound', raw: 67, name: 'comp', iconPath: 'assets/images/comp_icon.png');

View file

@ -127,5 +127,5 @@ class FiatCurrency extends EnumerableItem<String> with Serializable<String> impl
String? get tag => null;
@override
String get iconPath => "assets/images/flags/$countryCode.png";
String get iconPath => "assets/images/flags/$countryCode.svg";
}

View file

@ -15,6 +15,7 @@ import 'package:cake_wallet/wallet_type_utils.dart';
import 'package:cw_core/wallet_type.dart';
import 'package:flutter/material.dart';
import 'package:flutter_mobx/flutter_mobx.dart';
import 'package:flutter_svg/svg.dart';
class DesktopWalletSelectionDropDown extends StatefulWidget {
final WalletListViewModel walletListViewModel;
@ -28,11 +29,6 @@ class DesktopWalletSelectionDropDown extends StatefulWidget {
}
class _DesktopWalletSelectionDropDownState extends State<DesktopWalletSelectionDropDown> {
final moneroIcon = Image.asset('assets/images/monero_logo.png', height: 24, width: 24);
final bitcoinIcon = Image.asset('assets/images/bitcoin.png', height: 24, width: 24);
final litecoinIcon = Image.asset('assets/images/litecoin_icon.png', height: 24, width: 24);
final havenIcon = Image.asset('assets/images/haven_logo.png', height: 24, width: 24);
final ethereumIcon = Image.asset('assets/images/eth_icon.png', height: 24, width: 24);
final nonWalletTypeIcon = Image.asset('assets/images/close.png', height: 24, width: 24);
Image _newWalletImage(BuildContext context) => Image.asset(
@ -63,7 +59,9 @@ class _DesktopWalletSelectionDropDownState extends State<DesktopWalletSelectionD
constraints: BoxConstraints(maxWidth: 500),
child: DropDownItemWidget(
title: wallet.name,
image: wallet.isEnabled ? _imageFor(type: wallet.type) : nonWalletTypeIcon),
image: wallet.isEnabled
? buildIconFromPath(walletTypeToCryptoCurrency(wallet.type).iconPath)
: nonWalletTypeIcon),
),
onSelected: () => _onSelectedWallet(wallet),
))
@ -129,20 +127,20 @@ class _DesktopWalletSelectionDropDownState extends State<DesktopWalletSelectionD
}
}
Image _imageFor({required WalletType type}) {
switch (type) {
case WalletType.bitcoin:
return bitcoinIcon;
case WalletType.monero:
return moneroIcon;
case WalletType.litecoin:
return litecoinIcon;
case WalletType.haven:
return havenIcon;
case WalletType.ethereum:
return ethereumIcon;
default:
return nonWalletTypeIcon;
Widget buildIconFromPath(String? iconPath) {
if (iconPath != null && iconPath.contains('svg')) {
return SvgPicture.asset(
iconPath,
height: 24,
width: 24,
fit: BoxFit.contain,
);
} else {
return Image.asset(
iconPath ?? '',
height: 24,
width: 24,
);
}
}

View file

@ -1,10 +1,10 @@
import 'package:cake_wallet/themes/extensions/cake_text_theme.dart';
import 'package:flutter/material.dart';
class DropDownItemWidget extends StatelessWidget {
class DropDownItemWidget<ImageItem extends Widget> extends StatelessWidget {
const DropDownItemWidget({super.key, required this.title, required this.image});
final double tileHeight = 60;
final Image image;
final ImageItem image;
final String title;
@override

View file

@ -10,6 +10,7 @@ import 'package:cake_wallet/utils/responsive_layout_util.dart';
import 'package:cake_wallet/wallet_types.g.dart';
import 'package:cw_core/wallet_type.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
class NewWalletTypePage extends BasePage {
NewWalletTypePage({required this.onTypeSelected, required this.isCreate});
@ -97,10 +98,7 @@ class WalletTypeFormState extends State<WalletTypeForm> {
...filteredTypes.map((type) => Padding(
padding: EdgeInsets.only(top: 12),
child: SelectButton(
image: Image.asset(
walletTypeToCryptoCurrency(type).iconPath ?? '',
height: 24,
width: 24),
image: buildIconFromPath(walletTypeToCryptoCurrency(type).iconPath),
text: walletTypeToDisplayName(type),
showTrailingIcon: false,
height: 54,
@ -130,4 +128,21 @@ class WalletTypeFormState extends State<WalletTypeForm> {
widget.onTypeSelected(context, selected!);
}
Widget buildIconFromPath(String? iconPath) {
if (iconPath != null && iconPath.contains('svg')) {
return SvgPicture.asset(
iconPath,
height: 24,
width: 24,
fit: BoxFit.contain,
);
} else {
return Image.asset(
iconPath ?? '',
height: 24,
width: 24,
);
}
}
}

View file

@ -3,7 +3,7 @@ import 'package:cake_wallet/themes/extensions/cake_text_theme.dart';
import 'package:cake_wallet/themes/extensions/filter_theme.dart';
import 'package:cake_wallet/themes/extensions/wallet_list_theme.dart';
class SelectButton extends StatelessWidget {
class SelectButton<ImageType extends Object?> extends StatelessWidget {
SelectButton({
required this.text,
required this.onTap,
@ -13,7 +13,7 @@ class SelectButton extends StatelessWidget {
this.height = 60,
});
final Image? image;
final ImageType? image;
final String text;
final bool isSelected;
final VoidCallback onTap;
@ -55,7 +55,7 @@ class SelectButton extends StatelessWidget {
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
image ?? Offstage(),
image as Widget? ?? Offstage(),
Padding(
padding: image != null
? EdgeInsets.only(left: 15)

View file

@ -2,18 +2,19 @@ import 'package:flutter/material.dart';
import 'package:cake_wallet/src/widgets/picker.dart';
import 'package:flutter/cupertino.dart';
import 'package:cake_wallet/generated/i18n.dart';
import 'package:flutter_svg/svg.dart';
List<Image> flagImages = [
Image.asset('assets/images/flags/usa.png'),
Image.asset('assets/images/flags/chn.png'),
Image.asset('assets/images/flags/nld.png'),
Image.asset('assets/images/flags/deu.png'),
Image.asset('assets/images/flags/jpn.png'),
Image.asset('assets/images/flags/prt.png'),
Image.asset('assets/images/flags/rus.png'),
Image.asset('assets/images/flags/esp.png'),
Image.asset('assets/images/flags/fra.png'),
Image.asset('assets/images/flags/ita.png'),
List<SvgPicture> flagImages = [
SvgPicture.asset('assets/images/flags/usa.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/chn.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/nld.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/deu.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/jpn.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/prt.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/rus.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/esp.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/fra.svg', width: 42, height: 26, fit: BoxFit.contain),
SvgPicture.asset('assets/images/flags/ita.svg', width: 42, height: 26, fit: BoxFit.contain),
];
const List<String> languageCodes = [

View file

@ -5,6 +5,7 @@ import 'package:cake_wallet/utils/responsive_layout_util.dart';
import 'package:cake_wallet/utils/show_bar.dart';
import 'package:cake_wallet/view_model/wallet_list/wallet_list_item.dart';
import 'package:another_flushbar/flushbar.dart';
import 'package:cw_core/currency_for_wallet_type.dart';
import 'package:flutter/material.dart';
import 'package:flutter_mobx/flutter_mobx.dart';
import 'package:cake_wallet/routes.dart';
@ -16,6 +17,7 @@ import 'package:cake_wallet/src/screens/base_page.dart';
import 'package:cake_wallet/src/widgets/scollable_with_bottom_section.dart';
import 'package:cake_wallet/wallet_type_utils.dart';
import 'package:cake_wallet/themes/extensions/wallet_list_theme.dart';
import 'package:flutter_svg/flutter_svg.dart';
class WalletListPage extends BasePage {
WalletListPage({required this.walletListViewModel, required this.authService});
@ -42,12 +44,7 @@ class WalletListBody extends StatefulWidget {
}
class WalletListBodyState extends State<WalletListBody> {
final moneroIcon = Image.asset('assets/images/monero_logo.png', height: 24, width: 24);
final bitcoinIcon = Image.asset('assets/images/bitcoin.png', height: 24, width: 24);
final litecoinIcon = Image.asset('assets/images/litecoin_icon.png', height: 24, width: 24);
final nonWalletTypeIcon = Image.asset('assets/images/close.png', height: 24, width: 24);
final havenIcon = Image.asset('assets/images/haven_logo.png', height: 24, width: 24);
final ethereumIcon = Image.asset('assets/images/eth_icon.png', height: 24, width: 24);
final scrollController = ScrollController();
final double tileHeight = 60;
Flushbar<void>? _progressBar;
@ -104,7 +101,9 @@ class WalletListBodyState extends State<WalletListBody> {
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
wallet.isEnabled ? _imageFor(type: wallet.type) : nonWalletTypeIcon,
wallet.isEnabled
? buildIconFromPath(currencyForWalletType(wallet.type).iconPath)
: nonWalletTypeIcon,
SizedBox(width: 10),
Flexible(
child: Text(
@ -230,23 +229,24 @@ class WalletListBodyState extends State<WalletListBody> {
);
}
Image _imageFor({required WalletType type}) {
switch (type) {
case WalletType.bitcoin:
return bitcoinIcon;
case WalletType.monero:
return moneroIcon;
case WalletType.litecoin:
return litecoinIcon;
case WalletType.haven:
return havenIcon;
case WalletType.ethereum:
return ethereumIcon;
default:
return nonWalletTypeIcon;
Widget buildIconFromPath(String? iconPath) {
if (iconPath != null && iconPath.contains('svg')) {
return SvgPicture.asset(
iconPath,
height: 24,
width: 24,
fit: BoxFit.contain,
);
} else {
return Image.asset(
iconPath ?? '',
height: 24,
width: 24,
);
}
}
Future<void> _loadWallet(WalletListItem wallet) async {
await widget.authService.authenticateAction(
context,

View file

@ -10,6 +10,7 @@ import 'package:cake_wallet/src/widgets/picker_wrapper_widget.dart';
import 'package:cake_wallet/themes/extensions/cake_text_theme.dart';
import 'package:cake_wallet/themes/extensions/cake_scrollbar_theme.dart';
import 'package:cake_wallet/themes/extensions/picker_theme.dart';
import 'package:flutter_svg/svg.dart';
class Picker<Item, ImageType extends Widget> extends StatefulWidget {
Picker({
@ -393,11 +394,20 @@ class _PickerState<Item, ImageType extends Widget> extends State<Picker<Item, Im
Widget? _getItemIcon(Item item) {
if (item is Currency) {
if (item.iconPath != null) {
return Image.asset(
item.iconPath!,
height: 20.0,
width: 20.0,
);
if (item.iconPath!.contains('.svg')) {
return SvgPicture.asset(
item.iconPath!,
width: 20,
height: 20,
fit: BoxFit.contain,
);
} else {
return Image.asset(
item.iconPath!,
height: 20.0,
width: 20.0,
);
}
} else {
return Container(
height: 20.0,

View file

@ -119,6 +119,7 @@ flutter:
assets:
- assets/images/
- assets/images/flags/
- assets/images/crypto_assets/
- assets/node_list.yml
- assets/haven_node_list.yml
- assets/bitcoin_electrum_server_list.yml