Merge branch 'ui-fixes' into paynyms
28
assets/svg/fruit-sorbet-theme.svg
Normal file
After Width: | Height: | Size: 76 KiB |
5
assets/svg/fruitSorbet/bell-new.svg
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M12.5 17.5C12.5 17.9193 12.2383 18.3672 11.7695 18.6797C11.3008 18.9922 10.6289 19.1667 10 19.1667C9.33594 19.1667 8.69922 18.9922 8.23047 18.6797C7.76172 18.3672 7.5 17.9193 7.5 17.5H12.5Z" fill="#F95369"/>
|
||||||
|
<path d="M11.1903 1.98716V2.67947C13.9059 3.2142 15.9519 5.54245 15.9519 8.33331V9.0112C15.9519 10.7095 16.5955 12.3429 17.7561 13.6122L18.0314 13.9114C18.3439 14.254 18.422 14.7372 18.2286 15.1518C18.0351 15.5665 17.611 15.8333 17.1423 15.8333H2.85739C2.38867 15.8333 1.96351 15.5665 1.77148 15.1518C1.57945 14.7372 1.65626 14.254 1.96771 13.9114L2.24359 13.6122C3.40573 12.3429 4.0478 10.7095 4.0478 9.0112V8.33331C4.0478 5.54245 6.06034 3.2142 8.80945 2.67947V1.98716C8.80945 1.35002 9.34141 0.833313 9.99986 0.833313C10.6583 0.833313 11.1903 1.35002 11.1903 1.98716Z" fill="#F95369"/>
|
||||||
|
<ellipse cx="17.0833" cy="2.91665" rx="2.08333" ry="2.08333" fill="#1276EB"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 987 B |
97
assets/svg/fruitSorbet/bg.svg
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
<svg width="360" height="640" viewBox="0 0 360 640" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<defs>
|
||||||
|
<radialGradient id="paint0_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(445.5 482.5) rotate(90) scale(127.5 399.264)">
|
||||||
|
<stop stop-color="#FFEEBC"/>
|
||||||
|
<stop offset="1" stop-color="#FFE377" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint1_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(158.5 258.5) rotate(48.43) scale(263.308)">
|
||||||
|
<stop stop-color="#FE7160"/>
|
||||||
|
<stop offset="1" stop-color="#FBAF4A" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint2_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(11.5 568.5) rotate(-38.0039) scale(136.427)">
|
||||||
|
<stop stop-color="#F95369"/>
|
||||||
|
<stop offset="1" stop-color="#F95369" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint3_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(149.5 200.5) rotate(90) scale(205.5)">
|
||||||
|
<stop stop-color="#FED393"/>
|
||||||
|
<stop offset="1" stop-color="#FED393" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint4_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(116 536) rotate(90) scale(242)">
|
||||||
|
<stop stop-color="#F95369"/>
|
||||||
|
<stop offset="1" stop-color="#F95369" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint5_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(195.5 241.5) rotate(90) scale(127.5)">
|
||||||
|
<stop stop-color="#FED393"/>
|
||||||
|
<stop offset="1" stop-color="#FED393" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint6_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(-36.5 -11.5) rotate(48.43) scale(336.833)">
|
||||||
|
<stop stop-color="#FE7160"/>
|
||||||
|
<stop offset="1" stop-color="#FBAF4A" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint7_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(360 -12) rotate(152.509) scale(340.105)">
|
||||||
|
<stop stop-color="#F95369"/>
|
||||||
|
<stop offset="1" stop-color="#F95369" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint8_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(11 465) rotate(-56.3099) scale(251.858 235.919)">
|
||||||
|
<stop stop-color="#FED393"/>
|
||||||
|
<stop offset="1" stop-color="#FED393" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint9_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(393 430) rotate(90) scale(200)">
|
||||||
|
<stop stop-color="#FEAC02"/>
|
||||||
|
<stop offset="1" stop-color="#FEAC02" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint10_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(415.5 658.5) rotate(90) scale(253.5)">
|
||||||
|
<stop stop-color="#FE7160"/>
|
||||||
|
<stop offset="1" stop-color="#F95369" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint11_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(421 -52) rotate(90) scale(221)">
|
||||||
|
<stop stop-color="#FEAC02"/>
|
||||||
|
<stop offset="1" stop-color="#FEAC02" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint12_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(-125 501) rotate(90) scale(207)">
|
||||||
|
<stop stop-color="#FFE9A0"/>
|
||||||
|
<stop offset="1" stop-color="#FFE9A0" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint13_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(145 -74) rotate(-56.3099) scale(191.698 179.566)">
|
||||||
|
<stop stop-color="#FED393"/>
|
||||||
|
<stop offset="1" stop-color="#FED393" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint14_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(154 678) rotate(90) scale(139)">
|
||||||
|
<stop stop-color="#FBB44A"/>
|
||||||
|
<stop offset="1" stop-color="#FDC800" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint15_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(222 546) rotate(90) scale(110)">
|
||||||
|
<stop stop-color="#FBBF4A" stop-opacity="0.5"/>
|
||||||
|
<stop offset="1" stop-color="#FDC800" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint16_radial_815_28509" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(401 629) rotate(90) scale(223)">
|
||||||
|
<stop stop-color="#FF6545"/>
|
||||||
|
<stop offset="1" stop-color="#FDC800" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<clipPath id="clip0_815_28509">
|
||||||
|
<rect width="360" height="640" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
<g clip-path="url(#clip0_815_28509)">
|
||||||
|
<rect width="360" height="640" fill="#FFF9F2"/>
|
||||||
|
<g opacity="0.25">
|
||||||
|
<ellipse cx="445.5" cy="482.5" rx="419.5" ry="127.5" fill="url(#paint0_radial_815_28509)"/>
|
||||||
|
<circle cx="158.5" cy="258.5" r="286.5" fill="url(#paint1_radial_815_28509)"/>
|
||||||
|
<circle cx="11.5" cy="568.5" r="154.5" fill="url(#paint2_radial_815_28509)"/>
|
||||||
|
<circle cx="149.5" cy="200.5" r="205.5" fill="url(#paint3_radial_815_28509)"/>
|
||||||
|
<circle cx="116" cy="536" r="242" fill="url(#paint4_radial_815_28509)"/>
|
||||||
|
<circle cx="195.5" cy="241.5" r="127.5" fill="url(#paint5_radial_815_28509)"/>
|
||||||
|
<circle cx="-36.5" cy="-11.5" r="366.5" fill="url(#paint6_radial_815_28509)"/>
|
||||||
|
<circle cx="360" cy="-12" r="486" fill="url(#paint7_radial_815_28509)"/>
|
||||||
|
<circle cx="11" cy="465" r="247" fill="url(#paint8_radial_815_28509)"/>
|
||||||
|
<circle cx="393" cy="430" r="200" fill="url(#paint9_radial_815_28509)"/>
|
||||||
|
<circle cx="415.5" cy="658.5" r="253.5" fill="url(#paint10_radial_815_28509)"/>
|
||||||
|
<circle cx="421" cy="-52" r="221" fill="url(#paint11_radial_815_28509)"/>
|
||||||
|
<circle cx="-125" cy="501" r="207" fill="url(#paint12_radial_815_28509)"/>
|
||||||
|
<circle cx="145" cy="-74" r="188" fill="url(#paint13_radial_815_28509)"/>
|
||||||
|
<circle cx="154" cy="678" r="139" fill="url(#paint14_radial_815_28509)"/>
|
||||||
|
<circle cx="222" cy="546" r="110" fill="url(#paint15_radial_815_28509)"/>
|
||||||
|
<circle cx="401" cy="629" r="223" fill="url(#paint16_radial_815_28509)"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 6.1 KiB |
11
assets/svg/fruitSorbet/buy-coins-icon.svg
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g opacity="0.4">
|
||||||
|
<path d="M22.2 6C23.3297 5.37187 24 4.59422 24 3.75C24 1.67906 19.9688 0 15 0C9.98906 0 6 1.67906 6 3.75C6 4.59422 6.67031 5.37187 7.8 6C7.80937 6.00469 7.81758 6.00937 7.82578 6.01406C7.83398 6.01875 7.84219 6.02344 7.85156 6.02813C8.23125 6.00938 8.61094 6 9 6C11.6344 6 14.0906 6.44062 15.9422 7.21406C16.1203 7.28906 16.2984 7.36875 16.4672 7.44844C18.8062 7.28906 20.8359 6.75469 22.2 6Z" fill="#232323"/>
|
||||||
|
<path d="M19.9435 12.9151C19.7958 12.9551 19.6477 12.9951 19.5 13.0359V13.5C20.7602 13.5 21.9296 13.8885 22.8951 14.5522C23.5995 14.0172 24 13.4028 24 12.75V11.0906C23.4141 11.5734 22.7063 11.9672 21.9422 12.2859C21.3382 12.5376 20.6447 12.7253 19.9435 12.9151Z" fill="#232323"/>
|
||||||
|
<path d="M18.3703 8.74688C19.0031 9.37969 19.5 10.2234 19.5 11.25V11.4984C20.4328 11.2734 21.2625 10.9781 21.9469 10.6359C21.9739 10.6209 22.0009 10.6021 22.0279 10.5833C22.0852 10.5432 22.1426 10.5032 22.2 10.5C23.3297 9.87187 24 9.09375 24 8.25V6.59063C23.4141 7.07344 22.7063 7.46719 21.9422 7.78594C20.9109 8.2125 19.6969 8.54063 18.3703 8.74688Z" fill="#232323"/>
|
||||||
|
</g>
|
||||||
|
<path d="M16.2 13.5C17.3297 12.8719 18 12.0938 18 11.25C18 9.17813 13.9688 7.5 9 7.5C4.02938 7.5 0 9.17813 0 11.25C0 12.0938 0.669375 12.8719 1.79953 13.5C1.85443 13.5031 1.91057 13.5415 1.96782 13.5807C1.9966 13.6004 2.02567 13.6203 2.055 13.6359C3.70594 14.4703 6.20625 15 9 15C11.9438 15 14.5594 14.4094 16.2 13.5Z" fill="#232323"/>
|
||||||
|
<path d="M14.8788 15.6729C13.1948 16.2046 11.1571 16.5 9 16.5C6.36562 16.5 3.91125 16.0594 2.05922 15.2859C1.29469 14.9672 0.583594 14.5734 0 14.0906V15.75C0 16.5938 0.669375 17.3719 1.79953 18C3.44109 18.9094 6.05625 19.5 9 19.5C10.6471 19.5 12.1916 19.3159 13.5211 18.9937C13.6261 17.7367 14.1186 16.5898 14.8788 15.6729Z" fill="#232323"/>
|
||||||
|
<path d="M13.5862 20.5191C13.7529 21.4936 14.1547 22.3879 14.731 23.1415C13.1742 23.6778 11.1771 24 9 24C4.02938 24 0 22.3219 0 20.25V18.5906C0.583594 19.0734 1.29469 19.4672 2.05922 19.7859C3.91125 20.5594 6.36562 21 9 21C10.6307 21 12.1932 20.8312 13.5862 20.5191Z" fill="#232323"/>
|
||||||
|
<path d="M24 19.5C24 21.9844 21.9844 24 19.5 24C17.0156 24 15 21.9844 15 19.5C15 17.0156 17.0156 15 19.5 15C21.9844 15 24 17.0156 24 19.5ZM19 17.4719V18.9719H17.5C17.225 18.9719 17 19.225 17 19.4719C17 19.775 17.225 19.9719 17.5 19.9719H19V21.4719C19 21.775 19.225 21.9719 19.5 21.9719C19.775 21.9719 20 21.775 20 21.4719V19.9719H21.5C21.775 19.9719 22 19.775 22 19.4719C22 19.225 21.775 18.9719 21.5 18.9719H20V17.4719C20 17.225 19.775 16.9719 19.5 16.9719C19.225 16.9719 19 17.225 19 17.4719Z" fill="#232323"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.6 KiB |
4
assets/svg/fruitSorbet/exchange-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M14.6695 1.06575C15.1855 0.607104 15.9756 0.65358 16.4343 1.16956L20.4343 5.66956C20.8552 6.14317 20.8552 6.85686 20.4343 7.33047L16.4343 11.8305C15.9756 12.3464 15.1855 12.3929 14.6695 11.9343C14.1536 11.4756 14.1071 10.6855 14.5657 10.1696L16.7164 7.75001H6C4.48122 7.75001 3.25 8.98123 3.25 10.5C3.25 11.1904 2.69036 11.75 2 11.75C1.30964 11.75 0.75 11.1904 0.75 10.5C0.75 7.60052 3.10051 5.25001 6 5.25001H16.7164L14.5657 2.83047C14.1071 2.31449 14.1536 1.5244 14.6695 1.06575Z" fill="#232323"/>
|
||||||
|
<path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M9.33045 23.4342C8.81448 23.8929 8.02439 23.8464 7.56574 23.3304L3.56574 18.8304C3.14475 18.3568 3.14475 17.6431 3.56574 17.1695L7.56574 12.6695C8.02439 12.1536 8.81448 12.1071 9.33046 12.5657C9.84643 13.0244 9.89291 13.8145 9.43426 14.3304L7.28355 16.75L18 16.75C19.5188 16.75 20.75 15.5188 20.75 14C20.75 13.3096 21.3096 12.75 22 12.75C22.6904 12.75 23.25 13.3096 23.25 14C23.25 16.8995 20.8995 19.25 18 19.25L7.28355 19.25L9.43426 21.6695C9.89291 22.1855 9.84643 22.9756 9.33045 23.4342Z" fill="#232323"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.2 KiB |
5
assets/svg/fruitSorbet/stack-icon1.svg
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<svg width="70" height="70" viewBox="0 0 70 70" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M41.3715 9.57675C37.2965 7.22564 32.2041 10.1695 32.2041 14.8717C32.2041 19.5739 34.4762 23.6489 38.2004 26.163L53.9717 35.3057L54.0112 35.2908L69.9948 26.0543L41.3715 9.57675Z" fill="#B3B3B3"/>
|
||||||
|
<path d="M38.2014 26.163C34.4771 23.6489 32.205 19.4159 32.205 14.8717C32.205 12.6342 33.3757 10.7671 35.0402 9.7101C34.9612 9.75455 35.1192 9.66564 35.0402 9.7101L10.0917 23.7279L6.08593 26.1481L3.35449 27.7188C5.07337 26.8446 7.22692 26.7754 9.14831 27.8917L16.0189 31.8037L22.0399 35.2859L38.0236 44.5076L53.9677 35.2958L38.1964 26.1531L38.2014 26.163Z" fill="#666666"/>
|
||||||
|
<path d="M70 44.5187L38.0278 62.9917L31.992 59.5095L31.9673 59.4848L6.06054 44.5187C4.28733 43.3629 2.84505 41.7872 1.82755 40.014C0.642111 37.9691 0 35.618 0 33.1829C0 30.9899 1.10147 29.1771 2.70181 28.1004C2.91914 27.967 3.13153 27.8435 3.35874 27.725C5.07762 26.8507 7.23116 26.7816 9.15256 27.8979L15.9836 31.8394L22.0047 35.3068L22.0442 35.292L38.0278 44.5137L53.9719 35.3019L70 44.5137V44.5187Z" fill="#232323"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
7
assets/svg/fruitSorbet/tx-exchange-icon-failed.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#0056D2"/>
|
||||||
|
<path d="M5.30071 12.4C4.91018 12.7905 4.91018 13.4236 5.30071 13.8142C5.69123 14.2047 6.32439 14.2047 6.71492 13.8142L5.30071 12.4ZM13.0789 6.03599L14.0787 6.05567C14.0839 5.78863 13.9821 5.53058 13.796 5.33904C13.6098 5.1475 13.3548 5.03839 13.0877 5.03603L13.0789 6.03599ZM9.00968 5.00004C8.45741 4.99516 8.00576 5.43891 8.00089 5.99117C7.99601 6.54344 8.43976 6.99509 8.99202 6.99996L9.00968 5.00004ZM12.001 9.98032C11.9902 10.5325 12.429 10.9889 12.9812 10.9998C13.5333 11.0107 13.9898 10.5719 14.0007 10.0197L12.001 9.98032ZM18.6429 11.6C19.0334 11.2095 19.0334 10.5764 18.6429 10.1858C18.2524 9.79531 17.6192 9.79531 17.2287 10.1858L18.6429 11.6ZM10.8647 17.964L9.8653 17.9297C9.85604 18.1992 9.95602 18.461 10.1426 18.6557C10.3291 18.8505 10.5864 18.9616 10.856 18.964L10.8647 17.964ZM14.9922 19C15.5444 19.0048 15.996 18.561 16.0008 18.0087C16.0056 17.4564 15.5618 17.0048 15.0096 17L14.9922 19ZM12.0003 14.0343C12.0192 13.4824 11.5871 13.0195 11.0352 13.0006C10.4832 12.9816 10.0204 13.4137 10.0014 13.9657L12.0003 14.0343ZM6.71492 13.8142L13.786 6.7431L12.3718 5.32889L5.30071 12.4L6.71492 13.8142ZM8.99202 6.99996L13.0701 7.03595L13.0877 5.03603L9.00968 5.00004L8.99202 6.99996ZM12.0791 6.01631L12.001 9.98032L14.0007 10.0197L14.0787 6.05567L12.0791 6.01631ZM17.2287 10.1858L10.1576 17.2569L11.5718 18.6711L18.6429 11.6L17.2287 10.1858ZM15.0096 17L10.8734 16.964L10.856 18.964L14.9922 19L15.0096 17ZM11.8641 17.9983L12.0003 14.0343L10.0014 13.9657L9.8653 17.9297L11.8641 17.9983Z" fill="#0056D2"/>
|
||||||
|
<circle cx="20.5" cy="20.5" r="3.5" fill="#C00205"/>
|
||||||
|
<path d="M19.4395 19.4395L20.5001 20.5001L21.5608 21.5608" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M19.5 21.5605L20.5607 20.4999L21.6213 19.4392" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
6
assets/svg/fruitSorbet/tx-exchange-icon-pending.svg
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#0056D2"/>
|
||||||
|
<circle cx="20.5" cy="20.5" r="3.5" fill="#F4C517"/>
|
||||||
|
<path d="M20.5 19V20.5H21.5" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M5.30071 12.4C4.91018 12.7905 4.91018 13.4236 5.30071 13.8142C5.69123 14.2047 6.32439 14.2047 6.71492 13.8142L5.30071 12.4ZM13.0789 6.03599L14.0787 6.05567C14.0839 5.78863 13.9821 5.53058 13.796 5.33904C13.6098 5.1475 13.3548 5.03839 13.0877 5.03603L13.0789 6.03599ZM9.00968 5.00004C8.45741 4.99516 8.00576 5.43891 8.00089 5.99117C7.99601 6.54344 8.43976 6.99509 8.99202 6.99996L9.00968 5.00004ZM12.001 9.98032C11.9902 10.5325 12.429 10.9889 12.9812 10.9998C13.5333 11.0107 13.9898 10.5719 14.0007 10.0197L12.001 9.98032ZM18.6429 11.6C19.0334 11.2095 19.0334 10.5764 18.6429 10.1858C18.2524 9.79531 17.6192 9.79531 17.2287 10.1858L18.6429 11.6ZM10.8647 17.964L9.8653 17.9297C9.85605 18.1992 9.95602 18.461 10.1426 18.6557C10.3291 18.8505 10.5864 18.9616 10.856 18.964L10.8647 17.964ZM14.9922 19C15.5444 19.0048 15.996 18.561 16.0008 18.0087C16.0056 17.4564 15.5618 17.0048 15.0096 17L14.9922 19ZM12.0003 14.0343C12.0192 13.4824 11.5871 13.0195 11.0352 13.0006C10.4832 12.9816 10.0204 13.4137 10.0014 13.9657L12.0003 14.0343ZM6.71492 13.8142L13.786 6.7431L12.3718 5.32889L5.30071 12.4L6.71492 13.8142ZM8.99202 6.99996L13.0701 7.03595L13.0877 5.03603L9.00968 5.00004L8.99202 6.99996ZM12.0791 6.01631L12.001 9.98032L14.0007 10.0197L14.0787 6.05567L12.0791 6.01631ZM17.2287 10.1858L10.1576 17.2569L11.5718 18.6711L18.6429 11.6L17.2287 10.1858ZM15.0096 17L10.8734 16.964L10.856 18.964L14.9922 19L15.0096 17ZM11.8641 17.9983L12.0003 14.0343L10.0014 13.9657L9.8653 17.9297L11.8641 17.9983Z" fill="#0056D2"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2 KiB |
4
assets/svg/fruitSorbet/tx-exchange-icon.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<circle opacity="0.4" cx="12" cy="12" r="12" fill="#0056D2"/>
|
||||||
|
<path d="M5.30071 12.4C4.91018 12.7905 4.91018 13.4236 5.30071 13.8142C5.69123 14.2047 6.32439 14.2047 6.71492 13.8142L5.30071 12.4ZM13.0789 6.03599L14.0787 6.05567C14.0839 5.78863 13.9821 5.53058 13.796 5.33904C13.6098 5.1475 13.3548 5.03839 13.0877 5.03603L13.0789 6.03599ZM9.00968 5.00004C8.45741 4.99516 8.00576 5.43891 8.00089 5.99117C7.99601 6.54344 8.43976 6.99509 8.99202 6.99996L9.00968 5.00004ZM12.001 9.98032C11.9902 10.5325 12.429 10.9889 12.9812 10.9998C13.5333 11.0107 13.9898 10.5719 14.0007 10.0197L12.001 9.98032ZM18.6429 11.6C19.0334 11.2095 19.0334 10.5764 18.6429 10.1858C18.2524 9.79531 17.6192 9.79531 17.2287 10.1858L18.6429 11.6ZM10.8647 17.964L9.8653 17.9297C9.85604 18.1992 9.95602 18.461 10.1426 18.6557C10.3291 18.8505 10.5864 18.9616 10.856 18.964L10.8647 17.964ZM14.9922 19C15.5444 19.0048 15.996 18.561 16.0008 18.0087C16.0056 17.4564 15.5618 17.0048 15.0096 17L14.9922 19ZM12.0003 14.0343C12.0192 13.4824 11.5871 13.0195 11.0352 13.0006C10.4832 12.9816 10.0204 13.4137 10.0014 13.9657L12.0003 14.0343ZM6.71492 13.8142L13.786 6.7431L12.3718 5.32889L5.30071 12.4L6.71492 13.8142ZM8.99202 6.99996L13.0701 7.03595L13.0877 5.03603L9.00968 5.00004L8.99202 6.99996ZM12.0791 6.01631L12.001 9.98032L14.0007 10.0197L14.0787 6.05567L12.0791 6.01631ZM17.2287 10.1858L10.1576 17.2569L11.5718 18.6711L18.6429 11.6L17.2287 10.1858ZM15.0096 17L10.8734 16.964L10.856 18.964L14.9922 19L15.0096 17ZM11.8641 17.9983L12.0003 14.0343L10.0014 13.9657L9.8653 17.9297L11.8641 17.9983Z" fill="#0056D2"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
7
assets/svg/fruitSorbet/tx-icon-receive-failed.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#00A578"/>
|
||||||
|
<circle cx="20.5" cy="20.5" r="3.5" fill="#C00205"/>
|
||||||
|
<path d="M16 8L8 16M8 16H14M8 16V10" stroke="#00A578" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M19.4395 19.4395L20.5001 20.5001L21.5608 21.5608" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M19.5 21.5605L20.5607 20.4999L21.6213 19.4392" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 882 B |
5
assets/svg/fruitSorbet/tx-icon-receive-pending.svg
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#00A578"/>
|
||||||
|
<path d="M16 8L8 16M8 16H14M8 16V10" stroke="#00A578" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.5 24C22.433 24 24 22.433 24 20.5C24 18.567 22.433 17 20.5 17C18.567 17 17 18.567 17 20.5C17 22.433 18.567 24 20.5 24ZM21 19C21 18.7239 20.7761 18.5 20.5 18.5C20.2239 18.5 20 18.7239 20 19V20.5C20 20.7761 20.2239 21 20.5 21H21.5C21.7761 21 22 20.7761 22 20.5C22 20.2239 21.7761 20 21.5 20H21V19Z" fill="#F4C517"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 912 B |
4
assets/svg/fruitSorbet/tx-icon-receive.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<circle opacity="0.4" cx="12" cy="12" r="12" fill="#00A578"/>
|
||||||
|
<path d="M16 8L8 16M8 16H14M8 16V10" stroke="#00A578" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 287 B |
7
assets/svg/fruitSorbet/tx-icon-send-failed.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#FE805C"/>
|
||||||
|
<path d="M8 16L16 8M16 8L10 8M16 8L16 14" stroke="#FE805C" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<circle cx="20.5" cy="20.5" r="3.5" fill="#C00205"/>
|
||||||
|
<path d="M19.4395 19.4395L20.5001 20.5001L21.5608 21.5608" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M19.5 21.5605L20.5607 20.4999L21.6213 19.4392" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 847 B |
6
assets/svg/fruitSorbet/tx-icon-send-pending.svg
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path opacity="0.4" d="M23.0154 16.7681C23.6489 15.3066 24 13.6943 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C13.6943 24 15.3066 23.6489 16.7681 23.0154C16.2832 22.2973 16 21.4317 16 20.5C16 18.0147 18.0147 16 20.5 16C21.4317 16 22.2973 16.2832 23.0154 16.7681Z" fill="#FE805C"/>
|
||||||
|
<path d="M8 16L16 8M16 8L10 8M16 8L16 14" stroke="#FE805C" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<circle cx="20.5" cy="20.5" r="3.5" fill="#F4C517"/>
|
||||||
|
<path d="M20.5 19V20.5H21.5" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 697 B |
4
assets/svg/fruitSorbet/tx-icon-send.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<circle opacity="0.4" cx="12" cy="12" r="12" fill="#FE805C"/>
|
||||||
|
<path d="M8 16L16 8M16 8L10 8M16 8L16 14" stroke="#FE805C" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 292 B |
|
@ -1,16 +0,0 @@
|
||||||
<svg width="180" height="152" viewBox="0 0 180 152" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect width="180" height="20" rx="2" fill="#77A7F9"/>
|
|
||||||
<rect x="6" y="6" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="30" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="36" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="52" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="58" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="74" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="80" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="96" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="102" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="118" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="124" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
<rect y="140" width="180" height="20" rx="2" fill="#212F46"/>
|
|
||||||
<rect x="6" y="146" width="106" height="8" rx="1" fill="black"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 979 B |
|
@ -1 +1 @@
|
||||||
Subproject commit f1031db5bb67b38d028187f0ead192acb3e9ba55
|
Subproject commit c1b403ccf6f4fffc9f7c233038c3df40f997c2b3
|
|
@ -57,6 +57,7 @@ import 'package:stackwallet/utilities/logger.dart';
|
||||||
import 'package:stackwallet/utilities/stack_file_system.dart';
|
import 'package:stackwallet/utilities/stack_file_system.dart';
|
||||||
import 'package:stackwallet/utilities/theme/color_theme.dart';
|
import 'package:stackwallet/utilities/theme/color_theme.dart';
|
||||||
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
||||||
|
import 'package:stackwallet/utilities/theme/fruit_sorbet_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
||||||
|
@ -334,8 +335,11 @@ class _MaterialAppWithThemeState extends ConsumerState<MaterialAppWithTheme>
|
||||||
colorTheme = OceanBreezeColors();
|
colorTheme = OceanBreezeColors();
|
||||||
break;
|
break;
|
||||||
case "light":
|
case "light":
|
||||||
default:
|
|
||||||
colorTheme = LightColors();
|
colorTheme = LightColors();
|
||||||
|
break;
|
||||||
|
case "fruitSorbet":
|
||||||
|
default:
|
||||||
|
colorTheme = FruitSorbetColors();
|
||||||
}
|
}
|
||||||
loadingCompleter = Completer();
|
loadingCompleter = Completer();
|
||||||
WidgetsBinding.instance.addObserver(this);
|
WidgetsBinding.instance.addObserver(this);
|
||||||
|
|
|
@ -38,10 +38,10 @@ class AddWalletNextButton extends ConsumerWidget {
|
||||||
style: enabled
|
style: enabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
style: isDesktop
|
style: isDesktop
|
||||||
|
|
|
@ -30,7 +30,7 @@ class CreateWalletButtonGroup extends StatelessWidget {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
NameYourWalletView.routeName,
|
NameYourWalletView.routeName,
|
||||||
|
@ -59,7 +59,7 @@ class CreateWalletButtonGroup extends StatelessWidget {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
NameYourWalletView.routeName,
|
NameYourWalletView.routeName,
|
||||||
|
|
|
@ -364,10 +364,10 @@ class _NameYourWalletViewState extends ConsumerState<NameYourWalletView> {
|
||||||
style: _nextEnabled
|
style: _nextEnabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
style: isDesktop
|
style: isDesktop
|
||||||
|
|
|
@ -298,7 +298,7 @@ class _NewWalletRecoveryPhraseViewState
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"I saved my recovery phrase",
|
"I saved my recovery phrase",
|
||||||
style: isDesktop
|
style: isDesktop
|
||||||
|
|
|
@ -512,10 +512,10 @@ class _NewWalletRecoveryPhraseWarningViewState
|
||||||
style: ref.read(checkBoxStateProvider.state).state
|
style: ref.read(checkBoxStateProvider.state).state
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"View recovery phrase",
|
"View recovery phrase",
|
||||||
style: isDesktop
|
style: isDesktop
|
||||||
|
|
|
@ -23,10 +23,10 @@ class RestoreOptionsNextButton extends StatelessWidget {
|
||||||
style: onPressed != null
|
style: onPressed != null
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -47,7 +47,7 @@ class _RestoreFailedDialogState extends ConsumerState<RestoreFailedDialog> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
|
|
@ -80,7 +80,7 @@ class RestoreSucceededDialog extends StatelessWidget {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
|
|
@ -139,7 +139,7 @@ class _RestoringDialogState extends State<RestoringDialog>
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
|
|
@ -331,10 +331,10 @@ class _VerifyRecoveryPhraseViewState
|
||||||
style: selectedWord.isNotEmpty
|
style: selectedWord.isNotEmpty
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: isDesktop
|
child: isDesktop
|
||||||
? Text(
|
? Text(
|
||||||
"Verify",
|
"Verify",
|
||||||
|
|
|
@ -177,7 +177,7 @@ class _ContactDetailsViewState extends ConsumerState<ContactDetailsView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -189,7 +189,7 @@ class _ContactDetailsViewState extends ConsumerState<ContactDetailsView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Delete",
|
"Delete",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
@ -273,7 +273,7 @@ class _ContactDetailsViewState extends ConsumerState<ContactDetailsView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context)!
|
.getSecondaryEnabledButtonStyle(context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize: MaterialStateProperty.all<Size>(
|
minimumSize: MaterialStateProperty.all<Size>(
|
||||||
const Size(46, 32)),
|
const Size(46, 32)),
|
||||||
|
|
|
@ -148,7 +148,7 @@ class ContactPopUp extends ConsumerWidget {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context)!
|
context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize:
|
minimumSize:
|
||||||
|
|
|
@ -135,7 +135,7 @@ class _ConfirmChangeNowSendViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -136,7 +136,7 @@ class _EditNoteViewState extends ConsumerState<EditTradeNoteView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Save",
|
"Save",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -144,7 +144,6 @@ class _ExchangeFormState extends ConsumerState<ExchangeForm> {
|
||||||
await Future<void>.delayed(const Duration(milliseconds: 300));
|
await Future<void>.delayed(const Duration(milliseconds: 300));
|
||||||
|
|
||||||
Navigator.of(context, rootNavigator: true).pop();
|
Navigator.of(context, rootNavigator: true).pop();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
final toTicker = ref.read(exchangeFormStateProvider).toTicker ?? "";
|
final toTicker = ref.read(exchangeFormStateProvider).toTicker ?? "";
|
||||||
final fromTicker = ref.read(exchangeFormStateProvider).fromTicker ?? "";
|
final fromTicker = ref.read(exchangeFormStateProvider).fromTicker ?? "";
|
||||||
|
@ -1017,7 +1016,7 @@ class _ExchangeFormState extends ConsumerState<ExchangeForm> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -1030,7 +1029,7 @@ class _ExchangeFormState extends ConsumerState<ExchangeForm> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Attempt",
|
"Attempt",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -91,7 +91,7 @@ class _ExchangeLoadingOverlayViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"OK",
|
"OK",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -188,7 +188,7 @@ class _Step1ViewState extends State<Step1View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -698,7 +698,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -208,7 +208,7 @@ class _Step3ViewState extends ConsumerState<Step3View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
@ -322,7 +322,7 @@ class _Step3ViewState extends ConsumerState<Step3View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -426,7 +426,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
|
||||||
Navigator.of(context).pop(),
|
Navigator.of(context).pop(),
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
|
@ -451,7 +451,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Show QR Code",
|
"Show QR Code",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
@ -578,7 +578,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<
|
.extension<
|
||||||
StackColors>()!
|
StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
|
@ -628,7 +628,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
buttonTitle,
|
buttonTitle,
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -338,7 +338,7 @@ class _SendFromCardState extends ConsumerState<SendFromCard> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -713,7 +713,7 @@ class _TradeDetailsViewState extends ConsumerState<TradeDetailsView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
|
|
|
@ -275,11 +275,16 @@ class _HomeViewState extends ConsumerState<HomeView> {
|
||||||
color: Theme.of(context)
|
color: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.backgroundAppBar,
|
.backgroundAppBar,
|
||||||
boxShadow: [
|
boxShadow: Theme.of(context)
|
||||||
|
.extension<StackColors>()!
|
||||||
|
.homeViewButtonBarBoxShadow !=
|
||||||
|
null
|
||||||
|
? [
|
||||||
Theme.of(context)
|
Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.standardBoxShadow,
|
.homeViewButtonBarBoxShadow!,
|
||||||
],
|
]
|
||||||
|
: null,
|
||||||
),
|
),
|
||||||
child: const Padding(
|
child: const Padding(
|
||||||
padding: EdgeInsets.only(
|
padding: EdgeInsets.only(
|
||||||
|
|
|
@ -45,14 +45,14 @@ class _HomeViewButtonBarState extends ConsumerState<HomeViewButtonBar> {
|
||||||
style: selectedIndex == 0
|
style: selectedIndex == 0
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)!
|
.getPrimaryEnabledButtonStyle(context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize:
|
minimumSize:
|
||||||
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
||||||
)
|
)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context)!
|
.getSecondaryEnabledButtonStyle(context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize:
|
minimumSize:
|
||||||
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
||||||
|
@ -71,7 +71,9 @@ class _HomeViewButtonBarState extends ConsumerState<HomeViewButtonBar> {
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.buttonTextPrimary
|
.buttonTextPrimary
|
||||||
: Theme.of(context).extension<StackColors>()!.textDark,
|
: Theme.of(context)
|
||||||
|
.extension<StackColors>()!
|
||||||
|
.buttonTextSecondary,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
@ -84,14 +86,14 @@ class _HomeViewButtonBarState extends ConsumerState<HomeViewButtonBar> {
|
||||||
style: selectedIndex == 1
|
style: selectedIndex == 1
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)!
|
.getPrimaryEnabledButtonStyle(context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize:
|
minimumSize:
|
||||||
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
||||||
)
|
)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context)!
|
.getSecondaryEnabledButtonStyle(context)!
|
||||||
.copyWith(
|
.copyWith(
|
||||||
minimumSize:
|
minimumSize:
|
||||||
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
MaterialStateProperty.all<Size>(const Size(46, 36)),
|
||||||
|
@ -118,7 +120,9 @@ class _HomeViewButtonBarState extends ConsumerState<HomeViewButtonBar> {
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.buttonTextPrimary
|
.buttonTextPrimary
|
||||||
: Theme.of(context).extension<StackColors>()!.textDark,
|
: Theme.of(context)
|
||||||
|
.extension<StackColors>()!
|
||||||
|
.buttonTextSecondary,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
@ -259,7 +259,7 @@ class GetStartedButton extends StatelessWidget {
|
||||||
? TextButton(
|
? TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Prefs.instance.externalCalls = true;
|
Prefs.instance.externalCalls = true;
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
|
@ -278,7 +278,7 @@ class GetStartedButton extends StatelessWidget {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
StackPrivacyCalls.routeName,
|
StackPrivacyCalls.routeName,
|
||||||
|
|
|
@ -225,7 +225,7 @@ class _GenerateUriQrCodeViewState extends State<GenerateUriQrCodeView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
crossAxisAlignment: CrossAxisAlignment.center,
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
|
|
|
@ -206,7 +206,7 @@ class _ReceiveViewState extends ConsumerState<ReceiveView> {
|
||||||
onPressed: generateNewAddress,
|
onPressed: generateNewAddress,
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Generate new address",
|
"Generate new address",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -196,7 +196,7 @@ class _ConfirmTransactionViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -1608,7 +1608,7 @@ class _SendViewState extends ConsumerState<SendView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
|
@ -1628,7 +1628,7 @@ class _SendViewState extends ConsumerState<SendView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(
|
.getPrimaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Yes",
|
"Yes",
|
||||||
|
@ -1738,7 +1738,7 @@ class _SendViewState extends ConsumerState<SendView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(
|
.getSecondaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
|
@ -1767,10 +1767,10 @@ class _SendViewState extends ConsumerState<SendView> {
|
||||||
.state
|
.state
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Preview",
|
"Preview",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -107,7 +107,7 @@ class _RestoringDialogState extends State<BuildingTransactionDialog>
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
|
|
@ -144,7 +144,7 @@ class _DebugViewState extends ConsumerState<DebugView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -156,7 +156,7 @@ class _DebugViewState extends ConsumerState<DebugView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Delete logs",
|
"Delete logs",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -7,6 +7,7 @@ import 'package:stackwallet/utilities/constants.dart';
|
||||||
import 'package:stackwallet/utilities/text_styles.dart';
|
import 'package:stackwallet/utilities/text_styles.dart';
|
||||||
import 'package:stackwallet/utilities/theme/color_theme.dart';
|
import 'package:stackwallet/utilities/theme/color_theme.dart';
|
||||||
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
||||||
|
import 'package:stackwallet/utilities/theme/fruit_sorbet_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
||||||
|
@ -31,6 +32,8 @@ class AppearanceSettingsView extends ConsumerWidget {
|
||||||
return "Dark theme";
|
return "Dark theme";
|
||||||
case ThemeType.oledBlack:
|
case ThemeType.oledBlack:
|
||||||
return "Oled Black theme";
|
return "Oled Black theme";
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return "Fruit Sorbet theme";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -514,6 +517,87 @@ class _ThemeOptionsView extends ConsumerState<ThemeOptionsView> {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
const SizedBox(
|
||||||
|
height: 10,
|
||||||
|
),
|
||||||
|
MaterialButton(
|
||||||
|
splashColor: Colors.transparent,
|
||||||
|
hoverColor: Colors.transparent,
|
||||||
|
padding: const EdgeInsets.all(0),
|
||||||
|
materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
|
||||||
|
shape: RoundedRectangleBorder(
|
||||||
|
borderRadius: BorderRadius.circular(
|
||||||
|
Constants.size.circularBorderRadius,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
onPressed: () {
|
||||||
|
DB.instance.put<dynamic>(
|
||||||
|
boxName: DB.boxNameTheme,
|
||||||
|
key: "colorScheme",
|
||||||
|
value: ThemeType.fruitSorbet.name,
|
||||||
|
);
|
||||||
|
ref.read(colorThemeProvider.state).state =
|
||||||
|
StackColors.fromStackColorTheme(
|
||||||
|
FruitSorbetColors(),
|
||||||
|
);
|
||||||
|
|
||||||
|
setState(() {
|
||||||
|
_selectedTheme = "fruitSorbet";
|
||||||
|
});
|
||||||
|
},
|
||||||
|
child: SizedBox(
|
||||||
|
width: 200,
|
||||||
|
child: Column(
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
SizedBox(
|
||||||
|
width: 10,
|
||||||
|
height: 10,
|
||||||
|
child: Radio(
|
||||||
|
activeColor: Theme.of(context)
|
||||||
|
.extension<StackColors>()!
|
||||||
|
.radioButtonIconEnabled,
|
||||||
|
value: "fruitSorbet",
|
||||||
|
groupValue: _selectedTheme,
|
||||||
|
onChanged: (newValue) {
|
||||||
|
if (newValue is String && newValue == "fruitSorbet") {
|
||||||
|
DB.instance.put<dynamic>(
|
||||||
|
boxName: DB.boxNameTheme,
|
||||||
|
key: "colorScheme",
|
||||||
|
value: ThemeType.fruitSorbet.name,
|
||||||
|
);
|
||||||
|
ref.read(colorThemeProvider.state).state =
|
||||||
|
StackColors.fromStackColorTheme(
|
||||||
|
FruitSorbetColors(),
|
||||||
|
);
|
||||||
|
|
||||||
|
setState(() {
|
||||||
|
_selectedTheme = "fruitSorbet";
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
const SizedBox(
|
||||||
|
width: 14,
|
||||||
|
),
|
||||||
|
Text(
|
||||||
|
"Fruit Sorbet",
|
||||||
|
style:
|
||||||
|
STextStyles.desktopTextExtraSmall(context).copyWith(
|
||||||
|
color: Theme.of(context)
|
||||||
|
.extension<StackColors>()!
|
||||||
|
.textDark2,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,16 +1,15 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:stackwallet/pages/intro_view.dart';
|
import 'package:stackwallet/pages/intro_view.dart';
|
||||||
|
import 'package:stackwallet/utilities/delete_everything.dart';
|
||||||
import 'package:stackwallet/utilities/text_styles.dart';
|
import 'package:stackwallet/utilities/text_styles.dart';
|
||||||
|
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||||
import 'package:stackwallet/utilities/util.dart';
|
import 'package:stackwallet/utilities/util.dart';
|
||||||
import 'package:stackwallet/widgets/custom_buttons/app_bar_icon_button.dart';
|
import 'package:stackwallet/widgets/custom_buttons/app_bar_icon_button.dart';
|
||||||
import 'package:stackwallet/widgets/desktop/desktop_app_bar.dart';
|
import 'package:stackwallet/widgets/desktop/desktop_app_bar.dart';
|
||||||
import 'package:stackwallet/widgets/desktop/desktop_scaffold.dart';
|
import 'package:stackwallet/widgets/desktop/desktop_scaffold.dart';
|
||||||
import 'package:stackwallet/widgets/desktop/primary_button.dart';
|
import 'package:stackwallet/widgets/desktop/primary_button.dart';
|
||||||
import 'package:stackwallet/widgets/rounded_white_container.dart';
|
import 'package:stackwallet/widgets/rounded_white_container.dart';
|
||||||
|
|
||||||
import 'package:stackwallet/widgets/stack_dialog.dart';
|
import 'package:stackwallet/widgets/stack_dialog.dart';
|
||||||
import 'package:stackwallet/utilities/delete_everything.dart';
|
|
||||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
|
||||||
|
|
||||||
class DeleteAccountView extends StatefulWidget {
|
class DeleteAccountView extends StatefulWidget {
|
||||||
const DeleteAccountView({Key? key}) : super(key: key);
|
const DeleteAccountView({Key? key}) : super(key: key);
|
||||||
|
@ -35,7 +34,7 @@ class _DeleteAccountViewState extends State<DeleteAccountView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
|
@ -50,7 +49,7 @@ class _DeleteAccountViewState extends State<DeleteAccountView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
await deleteEverything();
|
await deleteEverything();
|
||||||
|
|
||||||
|
|
|
@ -284,7 +284,7 @@ class _AddEditNodeViewState extends ConsumerState<AddEditNodeView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Save",
|
"Save",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
@ -603,10 +603,10 @@ class _AddEditNodeViewState extends ConsumerState<AddEditNodeView> {
|
||||||
style: saveEnabled
|
style: saveEnabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: saveEnabled ? attemptSave : null,
|
onPressed: saveEnabled ? attemptSave : null,
|
||||||
child: Text(
|
child: Text(
|
||||||
"Save",
|
"Save",
|
||||||
|
|
|
@ -85,7 +85,7 @@ class _AutoBackupViewState extends ConsumerState<AutoBackupView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
@ -100,7 +100,7 @@ class _AutoBackupViewState extends ConsumerState<AutoBackupView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Continue",
|
"Continue",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
@ -142,7 +142,7 @@ class _AutoBackupViewState extends ConsumerState<AutoBackupView> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
@ -157,7 +157,7 @@ class _AutoBackupViewState extends ConsumerState<AutoBackupView> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Disable",
|
"Disable",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -483,10 +483,10 @@ class _EnableAutoBackupViewState extends ConsumerState<CreateAutoBackupView> {
|
||||||
style: shouldEnableCreate
|
style: shouldEnableCreate
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: !shouldEnableCreate
|
onPressed: !shouldEnableCreate
|
||||||
? null
|
? null
|
||||||
: () async {
|
: () async {
|
||||||
|
@ -596,7 +596,7 @@ class _EnableAutoBackupViewState extends ConsumerState<CreateAutoBackupView> {
|
||||||
fileToSave,
|
fileToSave,
|
||||||
adkString,
|
adkString,
|
||||||
jsonEncode(backup),
|
jsonEncode(backup),
|
||||||
adkVersion: adkVersion,
|
adkVersion,
|
||||||
);
|
);
|
||||||
|
|
||||||
// this future should already be complete unless there was an error encrypting
|
// this future should already be complete unless there was an error encrypting
|
||||||
|
|
|
@ -67,7 +67,7 @@ class CreateBackupInfoView extends StatelessWidget {
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context)
|
Navigator.of(context)
|
||||||
.pushNamed(CreateBackupView.routeName);
|
.pushNamed(CreateBackupView.routeName);
|
||||||
|
|
|
@ -454,10 +454,10 @@ class _RestoreFromFileViewState extends State<CreateBackupView> {
|
||||||
style: shouldEnableCreate
|
style: shouldEnableCreate
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: !shouldEnableCreate
|
onPressed: !shouldEnableCreate
|
||||||
? null
|
? null
|
||||||
: () async {
|
: () async {
|
||||||
|
|
|
@ -27,7 +27,7 @@ class CancelStackRestoreDialog extends StatelessWidget {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -39,7 +39,7 @@ class CancelStackRestoreDialog extends StatelessWidget {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Yes, cancel",
|
"Yes, cancel",
|
||||||
style: STextStyles.itemSubtitle12(context).copyWith(
|
style: STextStyles.itemSubtitle12(context).copyWith(
|
||||||
|
|
|
@ -187,7 +187,7 @@ class _EditAutoBackupViewState extends ConsumerState<EditAutoBackupView> {
|
||||||
fileToSave,
|
fileToSave,
|
||||||
adkString,
|
adkString,
|
||||||
jsonEncode(backup),
|
jsonEncode(backup),
|
||||||
adkVersion: adkVersion,
|
adkVersion,
|
||||||
);
|
);
|
||||||
|
|
||||||
// this future should already be complete unless there was an error encrypting
|
// this future should already be complete unless there was an error encrypting
|
||||||
|
@ -781,10 +781,10 @@ class _EditAutoBackupViewState extends ConsumerState<EditAutoBackupView> {
|
||||||
style: shouldEnableCreate
|
style: shouldEnableCreate
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: !shouldEnableCreate ? null : onSavePressed,
|
onPressed: !shouldEnableCreate ? null : onSavePressed,
|
||||||
child: Text(
|
child: Text(
|
||||||
"Save",
|
"Save",
|
||||||
|
|
|
@ -133,9 +133,9 @@ abstract class SWB {
|
||||||
static Future<bool> encryptStackWalletWithADK(
|
static Future<bool> encryptStackWalletWithADK(
|
||||||
String fileToSave,
|
String fileToSave,
|
||||||
String adk,
|
String adk,
|
||||||
String plaintext, {
|
String plaintext,
|
||||||
int? adkVersion,
|
int adkVersion,
|
||||||
}) async {
|
) async {
|
||||||
try {
|
try {
|
||||||
File backupFile = File(fileToSave);
|
File backupFile = File(fileToSave);
|
||||||
if (!backupFile.existsSync()) {
|
if (!backupFile.existsSync()) {
|
||||||
|
|
|
@ -158,10 +158,10 @@ class _RestoreFromEncryptedStringViewState
|
||||||
style: passwordController.text.isEmpty
|
style: passwordController.text.isEmpty
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: passwordController.text.isEmpty
|
onPressed: passwordController.text.isEmpty
|
||||||
? null
|
? null
|
||||||
: () async {
|
: () async {
|
||||||
|
|
|
@ -280,10 +280,10 @@ class _RestoreFromFileViewState extends ConsumerState<RestoreFromFileView> {
|
||||||
fileLocationController.text.isEmpty
|
fileLocationController.text.isEmpty
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context)
|
.getPrimaryDisabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: passwordController.text.isEmpty ||
|
onPressed: passwordController.text.isEmpty ||
|
||||||
fileLocationController.text.isEmpty
|
fileLocationController.text.isEmpty
|
||||||
? null
|
? null
|
||||||
|
|
|
@ -669,7 +669,7 @@ class _StackRestoreProgressViewState
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
_success ? "OK" : "Cancel restore process",
|
_success ? "OK" : "Cancel restore process",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -140,7 +140,7 @@ class WalletBackupView extends ConsumerWidget {
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
String data = AddressUtils.encodeQRSeedData(mnemonic);
|
String data = AddressUtils.encodeQRSeedData(mnemonic);
|
||||||
|
|
||||||
|
@ -194,7 +194,7 @@ class WalletBackupView extends ConsumerWidget {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -96,7 +96,7 @@ class ConfirmFullRescanDialog extends StatelessWidget {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Cancel",
|
"Cancel",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -108,7 +108,7 @@ class ConfirmFullRescanDialog extends StatelessWidget {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Rescan",
|
"Rescan",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -126,7 +126,7 @@ class _WalletNetworkSettingsViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
@ -156,7 +156,7 @@ class _WalletNetworkSettingsViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.itemSubtitle12(context),
|
style: STextStyles.itemSubtitle12(context),
|
||||||
|
|
|
@ -306,7 +306,7 @@ class _WalletSettingsViewState extends State<WalletSettingsView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Log out",
|
"Log out",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
|
|
@ -156,7 +156,7 @@ class _DeleteWalletRecoveryPhraseViewState
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
showDialog<dynamic>(
|
showDialog<dynamic>(
|
||||||
barrierDismissible: true,
|
barrierDismissible: true,
|
||||||
|
@ -166,7 +166,7 @@ class _DeleteWalletRecoveryPhraseViewState
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
|
@ -181,7 +181,7 @@ class _DeleteWalletRecoveryPhraseViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
final walletId = _manager.walletId;
|
final walletId = _manager.walletId;
|
||||||
final walletsInstance =
|
final walletsInstance =
|
||||||
|
|
|
@ -69,7 +69,7 @@ class DeleteWalletWarningView extends ConsumerWidget {
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
|
@ -87,7 +87,7 @@ class DeleteWalletWarningView extends ConsumerWidget {
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
final manager = ref
|
final manager = ref
|
||||||
.read(walletsChangeNotifierProvider)
|
.read(walletsChangeNotifierProvider)
|
||||||
|
|
|
@ -114,7 +114,7 @@ class _RenameWalletViewState extends ConsumerState<RenameWalletView> {
|
||||||
TextButton(
|
TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
final newName = _controller.text;
|
final newName = _controller.text;
|
||||||
final success = await ref
|
final success = await ref
|
||||||
|
|
|
@ -105,7 +105,7 @@ class WalletSettingsWalletSettingsView extends ConsumerWidget {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
|
@ -120,7 +120,7 @@ class WalletSettingsWalletSettingsView extends ConsumerWidget {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
|
|
|
@ -204,7 +204,7 @@ class _EditNoteViewState extends ConsumerState<EditNoteView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Save",
|
"Save",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -202,7 +202,7 @@ class _TransactionDetailsViewState
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.of(context).pop(true);
|
Navigator.of(context).pop(true);
|
||||||
},
|
},
|
||||||
|
|
|
@ -579,7 +579,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
await showDialog<void>(
|
await showDialog<void>(
|
||||||
context: context,
|
context: context,
|
||||||
|
@ -609,7 +609,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(
|
.getPrimaryEnabledButtonStyle(
|
||||||
context),
|
context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Continue",
|
"Continue",
|
||||||
|
|
|
@ -94,7 +94,7 @@ class AddWalletButton extends StatelessWidget {
|
||||||
return TextButton(
|
return TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
if (isDesktop) {
|
if (isDesktop) {
|
||||||
Navigator.of(
|
Navigator.of(
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
|
import 'package:stackwallet/pages/wallet_view/wallet_view.dart';
|
||||||
import 'package:stackwallet/pages/wallets_sheet/wallets_sheet.dart';
|
import 'package:stackwallet/pages/wallets_sheet/wallets_sheet.dart';
|
||||||
import 'package:stackwallet/providers/providers.dart';
|
import 'package:stackwallet/providers/providers.dart';
|
||||||
import 'package:stackwallet/utilities/assets.dart';
|
import 'package:stackwallet/utilities/assets.dart';
|
||||||
import 'package:stackwallet/utilities/constants.dart';
|
import 'package:stackwallet/utilities/constants.dart';
|
||||||
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
||||||
import 'package:stackwallet/utilities/format.dart';
|
import 'package:stackwallet/utilities/format.dart';
|
||||||
import 'package:stackwallet/utilities/prefs.dart';
|
|
||||||
import 'package:stackwallet/utilities/text_styles.dart';
|
import 'package:stackwallet/utilities/text_styles.dart';
|
||||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||||
import 'package:stackwallet/widgets/rounded_white_container.dart';
|
import 'package:stackwallet/widgets/rounded_white_container.dart';
|
||||||
|
import 'package:tuple/tuple.dart';
|
||||||
|
|
||||||
class WalletListItem extends ConsumerWidget {
|
class WalletListItem extends ConsumerWidget {
|
||||||
const WalletListItem({
|
const WalletListItem({
|
||||||
|
@ -41,7 +44,25 @@ class WalletListItem extends ConsumerWidget {
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(Constants.size.circularBorderRadius),
|
BorderRadius.circular(Constants.size.circularBorderRadius),
|
||||||
),
|
),
|
||||||
onPressed: () {
|
onPressed: () async {
|
||||||
|
if (walletCount == 1) {
|
||||||
|
final providersByCoin = ref.watch(walletsChangeNotifierProvider
|
||||||
|
.select((value) => value.getManagerProvidersByCoin()));
|
||||||
|
final manager = ref.read(providersByCoin[coin]!.first);
|
||||||
|
if (coin == Coin.monero || coin == Coin.wownero) {
|
||||||
|
await manager.initializeExisting();
|
||||||
|
}
|
||||||
|
unawaited(
|
||||||
|
Navigator.of(context).pushNamed(
|
||||||
|
WalletView.routeName,
|
||||||
|
arguments: Tuple2(
|
||||||
|
manager.walletId,
|
||||||
|
providersByCoin[coin]!.first,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
unawaited(
|
||||||
showModalBottomSheet<dynamic>(
|
showModalBottomSheet<dynamic>(
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
context: context,
|
context: context,
|
||||||
|
@ -51,7 +72,9 @@ class WalletListItem extends ConsumerWidget {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
builder: (_) => WalletsSheet(coin: coin),
|
builder: (_) => WalletsSheet(coin: coin),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
|
|
|
@ -262,10 +262,10 @@ class _DesktopMenuItemState<T> extends ConsumerState<DesktopMenuItem<T>>
|
||||||
style: value == group
|
style: value == group
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDesktopMenuButtonColorSelected(context)
|
.getDesktopMenuButtonStyleSelected(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDesktopMenuButtonColor(context),
|
.getDesktopMenuButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
onChanged(value);
|
onChanged(value);
|
||||||
},
|
},
|
||||||
|
|
|
@ -22,7 +22,7 @@ class ExitToMyStackButton extends StatelessWidget {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSmallSecondaryEnabledButtonColor(context),
|
.getSmallSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: onPressed ??
|
onPressed: onPressed ??
|
||||||
() {
|
() {
|
||||||
Navigator.of(context).popUntil(
|
Navigator.of(context).popUntil(
|
||||||
|
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
import 'package:flutter_svg/svg.dart';
|
||||||
import 'package:stackwallet/pages_desktop_specific/my_stack_view/coin_wallets_table.dart';
|
import 'package:stackwallet/pages_desktop_specific/my_stack_view/coin_wallets_table.dart';
|
||||||
|
import 'package:stackwallet/pages_desktop_specific/my_stack_view/wallet_view/desktop_wallet_view.dart';
|
||||||
import 'package:stackwallet/providers/providers.dart';
|
import 'package:stackwallet/providers/providers.dart';
|
||||||
import 'package:stackwallet/utilities/assets.dart';
|
import 'package:stackwallet/utilities/assets.dart';
|
||||||
import 'package:stackwallet/utilities/constants.dart';
|
import 'package:stackwallet/utilities/constants.dart';
|
||||||
|
@ -43,7 +44,18 @@ class _WalletTableState extends ConsumerState<WalletSummaryTable> {
|
||||||
(value) => value
|
(value) => value
|
||||||
.getManagerProvidersForCoin(providersByCoin[i].key)));
|
.getManagerProvidersForCoin(providersByCoin[i].key)));
|
||||||
|
|
||||||
|
VoidCallback? expandOverride;
|
||||||
|
if (providers.length == 1) {
|
||||||
|
expandOverride = () {
|
||||||
|
Navigator.of(context).pushNamed(
|
||||||
|
DesktopWalletView.routeName,
|
||||||
|
arguments: ref.read(providers.first).walletId,
|
||||||
|
);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
return TableViewRow(
|
return TableViewRow(
|
||||||
|
expandOverride: expandOverride,
|
||||||
padding: const EdgeInsets.symmetric(
|
padding: const EdgeInsets.symmetric(
|
||||||
horizontal: 20,
|
horizontal: 20,
|
||||||
vertical: 16,
|
vertical: 16,
|
||||||
|
|
|
@ -425,10 +425,10 @@ class _CreatePasswordViewState extends ConsumerState<CreatePasswordView> {
|
||||||
style: nextEnabled
|
style: nextEnabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
onPressed: nextEnabled ? onNextPressed : null,
|
onPressed: nextEnabled ? onNextPressed : null,
|
||||||
child: Text(
|
child: Text(
|
||||||
"Next",
|
"Next",
|
||||||
|
|
|
@ -169,6 +169,8 @@ class _ThemeToggle extends ConsumerState<ThemeToggle> {
|
||||||
return Assets.svg.themeOcean;
|
return Assets.svg.themeOcean;
|
||||||
case ThemeType.oledBlack:
|
case ThemeType.oledBlack:
|
||||||
return Assets.svg.themeOledBlack;
|
return Assets.svg.themeOledBlack;
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return Assets.svg.themeFruit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -159,7 +159,7 @@ class _BackupRestoreSettings extends ConsumerState<BackupRestoreSettings> {
|
||||||
leftButton: TextButton(
|
leftButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Back",
|
"Back",
|
||||||
style: STextStyles.button(context).copyWith(
|
style: STextStyles.button(context).copyWith(
|
||||||
|
@ -175,7 +175,7 @@ class _BackupRestoreSettings extends ConsumerState<BackupRestoreSettings> {
|
||||||
rightButton: TextButton(
|
rightButton: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Disable",
|
"Disable",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|
|
@ -722,7 +722,7 @@ class _CreateAutoBackup extends ConsumerState<CreateAutoBackup> {
|
||||||
fileToSave,
|
fileToSave,
|
||||||
adkString,
|
adkString,
|
||||||
jsonEncode(backup),
|
jsonEncode(backup),
|
||||||
adkVersion: adkVersion,
|
adkVersion,
|
||||||
);
|
);
|
||||||
|
|
||||||
// this future should already be complete unless there was an error encrypting
|
// this future should already be complete unless there was an error encrypting
|
||||||
|
|
|
@ -25,10 +25,10 @@ class SettingsMenuItem<T> extends StatelessWidget {
|
||||||
style: value == group
|
style: value == group
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDesktopSettingsButtonColor(context)
|
.getDesktopSettingsButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDesktopSettingsButtonColor(context),
|
.getDesktopSettingsButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
onChanged(value);
|
onChanged(value);
|
||||||
},
|
},
|
||||||
|
|
|
@ -75,8 +75,7 @@ class AutoSWBService extends ChangeNotifier {
|
||||||
createAutoBackupFilename(autoBackupDirectoryPath, now);
|
createAutoBackupFilename(autoBackupDirectoryPath, now);
|
||||||
|
|
||||||
final result = await SWB.encryptStackWalletWithADK(
|
final result = await SWB.encryptStackWalletWithADK(
|
||||||
fileToSave, adkString!, jsonString,
|
fileToSave, adkString!, jsonString, adkVersion);
|
||||||
adkVersion: adkVersion);
|
|
||||||
|
|
||||||
if (!result) {
|
if (!result) {
|
||||||
throw Exception("stack auto backup service failed to create a backup");
|
throw Exception("stack auto backup service failed to create a backup");
|
||||||
|
|
|
@ -37,6 +37,7 @@ class _SVG {
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
case ThemeType.oceanBreeze:
|
case ThemeType.oceanBreeze:
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
return "assets/svg/${Theme.of(context).extension<StackColors>()!.themeType.name}/bg.svg";
|
return "assets/svg/${Theme.of(context).extension<StackColors>()!.themeType.name}/bg.svg";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -71,6 +72,7 @@ class _SVG {
|
||||||
String txExchangeFailed(BuildContext context) =>
|
String txExchangeFailed(BuildContext context) =>
|
||||||
"assets/svg/${Theme.of(context).extension<StackColors>()!.themeType.name}/tx-exchange-icon-failed.svg";
|
"assets/svg/${Theme.of(context).extension<StackColors>()!.themeType.name}/tx-exchange-icon-failed.svg";
|
||||||
|
|
||||||
|
String get themeFruit => "assets/svg/fruit-sorbet-theme.svg";
|
||||||
String get themeOledBlack => "assets/svg/oled-black-theme.svg";
|
String get themeOledBlack => "assets/svg/oled-black-theme.svg";
|
||||||
String get themeOcean => "assets/svg/ocean-breeze-theme.svg";
|
String get themeOcean => "assets/svg/ocean-breeze-theme.svg";
|
||||||
String get themeLight => "assets/svg/light-mode.svg";
|
String get themeLight => "assets/svg/light-mode.svg";
|
||||||
|
|
|
@ -33,6 +33,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark3,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62,6 +68,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,6 +103,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 18,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -120,6 +138,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -149,6 +173,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -178,6 +208,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -207,6 +243,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -236,6 +278,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -265,6 +313,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -294,6 +348,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextPrimary,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -323,6 +383,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -352,6 +418,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark3,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -381,6 +453,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark3,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -410,6 +488,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle1,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -443,6 +527,13 @@ class STextStyles {
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
height: 14 / 14,
|
height: 14 / 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textFieldActiveSearchIconRight,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 14 / 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -472,6 +563,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w700,
|
fontWeight: FontWeight.w700,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle1,
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -501,6 +598,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).infoItemLabel,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -530,6 +633,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -559,6 +668,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -592,6 +707,13 @@ class STextStyles {
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
height: 1.5,
|
height: 1.5,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle2,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 1.5,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -625,6 +747,13 @@ class STextStyles {
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
height: 1.5,
|
height: 1.5,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 1.5,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -654,6 +783,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -683,6 +818,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).accentColorRed,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -712,6 +853,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).infoItemIcons,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -741,6 +888,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).accentColorBlue,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -770,6 +923,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -799,6 +958,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -828,6 +993,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -857,6 +1028,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -886,6 +1063,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 10,
|
fontSize: 10,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textError,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 10,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -915,6 +1098,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
fontSize: 10,
|
fontSize: 10,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle1,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 10,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -950,6 +1139,13 @@ class STextStyles {
|
||||||
fontSize: 40,
|
fontSize: 40,
|
||||||
height: 40 / 40,
|
height: 40 / 40,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 40,
|
||||||
|
height: 40 / 40,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -983,6 +1179,13 @@ class STextStyles {
|
||||||
fontSize: 32,
|
fontSize: 32,
|
||||||
height: 32 / 32,
|
height: 32 / 32,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 32,
|
||||||
|
height: 32 / 32,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1016,6 +1219,13 @@ class STextStyles {
|
||||||
fontSize: 24,
|
fontSize: 24,
|
||||||
height: 24 / 24,
|
height: 24 / 24,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 24,
|
||||||
|
height: 24 / 24,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1049,6 +1259,13 @@ class STextStyles {
|
||||||
fontSize: 24,
|
fontSize: 24,
|
||||||
height: 24 / 24,
|
height: 24 / 24,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 24,
|
||||||
|
height: 24 / 24,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1082,6 +1299,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 30 / 20,
|
height: 30 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 30 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1115,6 +1339,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 30 / 20,
|
height: 30 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 30 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1148,6 +1379,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 28 / 20,
|
height: 28 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 28 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1181,6 +1419,13 @@ class STextStyles {
|
||||||
fontSize: 24,
|
fontSize: 24,
|
||||||
height: 33 / 24,
|
height: 33 / 24,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 24,
|
||||||
|
height: 33 / 24,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1214,6 +1459,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 26 / 20,
|
height: 26 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextPrimary,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 26 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1247,6 +1499,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 26 / 20,
|
height: 26 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextPrimaryDisabled,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 26 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1280,6 +1539,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 26 / 20,
|
height: 26 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextSecondary,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 26 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1313,6 +1579,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 26 / 20,
|
height: 26 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextSecondaryDisabled,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 26 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1346,6 +1619,13 @@ class STextStyles {
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
height: 27 / 18,
|
height: 27 / 18,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 18,
|
||||||
|
height: 27 / 18,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1379,6 +1659,13 @@ class STextStyles {
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
height: 27 / 18,
|
height: 27 / 18,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w700,
|
||||||
|
fontSize: 18,
|
||||||
|
height: 27 / 18,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1412,6 +1699,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 24 / 16,
|
height: 24 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextPrimaryDisabled,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 24 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1445,6 +1739,13 @@ class STextStyles {
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
height: 21 / 14,
|
height: 21 / 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle1,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 21 / 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1478,6 +1779,13 @@ class STextStyles {
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
height: 21 / 14,
|
height: 21 / 14,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 14,
|
||||||
|
height: 21 / 14,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1511,6 +1819,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 24 / 16,
|
height: 24 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).buttonTextSecondary,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 24 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1544,6 +1859,13 @@ class STextStyles {
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
height: 30 / 20,
|
height: 30 / 20,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textSubtitle2,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 20,
|
||||||
|
height: 30 / 20,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1577,6 +1899,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 20.8 / 16,
|
height: 20.8 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark.withOpacity(0.8),
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 20.8 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1610,6 +1939,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 20.8 / 16,
|
height: 20.8 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 20.8 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1643,6 +1979,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 20.8 / 16,
|
height: 20.8 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark.withOpacity(0.5),
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 20.8 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1676,6 +2019,13 @@ class STextStyles {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
height: 20.8 / 16,
|
height: 20.8 / 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w500,
|
||||||
|
fontSize: 16,
|
||||||
|
height: 20.8 / 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1705,6 +2055,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 8,
|
fontSize: 8,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.roboto(
|
||||||
|
color: _theme(context).textDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 8,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1734,6 +2090,12 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
fontSize: 26,
|
fontSize: 26,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.roboto(
|
||||||
|
color: _theme(context).numberTextDefault,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 26,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1767,6 +2129,13 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w400,
|
fontWeight: FontWeight.w400,
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
letterSpacing: 0.5,
|
||||||
|
color: _theme(context).accentColorDark,
|
||||||
|
fontWeight: FontWeight.w400,
|
||||||
|
fontSize: 12,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1800,6 +2169,13 @@ class STextStyles {
|
||||||
fontWeight: FontWeight.w600,
|
fontWeight: FontWeight.w600,
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
);
|
);
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return GoogleFonts.inter(
|
||||||
|
letterSpacing: 0.5,
|
||||||
|
color: _theme(context).accentColorDark,
|
||||||
|
fontWeight: FontWeight.w600,
|
||||||
|
fontSize: 16,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
||||||
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
import 'package:stackwallet/utilities/theme/dark_colors.dart';
|
||||||
|
import 'package:stackwallet/utilities/theme/fruit_sorbet_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
import 'package:stackwallet/utilities/theme/ocean_breeze_colors.dart';
|
||||||
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
import 'package:stackwallet/utilities/theme/oled_black_colors.dart';
|
||||||
|
|
||||||
enum ThemeType { light, dark, oceanBreeze, oledBlack }
|
enum ThemeType { light, dark, oceanBreeze, oledBlack, fruitSorbet }
|
||||||
|
|
||||||
// adjust this file
|
// adjust this file
|
||||||
|
|
||||||
|
@ -20,6 +21,8 @@ extension ThemeTypeExt on ThemeType {
|
||||||
return OceanBreezeColors();
|
return OceanBreezeColors();
|
||||||
case ThemeType.oledBlack:
|
case ThemeType.oledBlack:
|
||||||
return OledBlackColors();
|
return OledBlackColors();
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return FruitSorbetColors();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -33,6 +36,8 @@ extension ThemeTypeExt on ThemeType {
|
||||||
return "Ocean Breeze";
|
return "Ocean Breeze";
|
||||||
case ThemeType.oledBlack:
|
case ThemeType.oledBlack:
|
||||||
return "Oled Black";
|
return "Oled Black";
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
|
return "Fruit Sorbet";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -77,6 +82,8 @@ abstract class StackColorTheme {
|
||||||
Color get buttonBackSecondaryDisabled;
|
Color get buttonBackSecondaryDisabled;
|
||||||
Color get buttonBackBorder;
|
Color get buttonBackBorder;
|
||||||
Color get buttonBackBorderDisabled;
|
Color get buttonBackBorderDisabled;
|
||||||
|
Color get buttonBackBorderSecondary;
|
||||||
|
Color get buttonBackBorderSecondaryDisabled;
|
||||||
Color get numberBackDefault;
|
Color get numberBackDefault;
|
||||||
Color get numpadBackDefault;
|
Color get numpadBackDefault;
|
||||||
Color get bottomNavBack;
|
Color get bottomNavBack;
|
||||||
|
@ -212,6 +219,9 @@ abstract class StackColorTheme {
|
||||||
Color get myStackContactIconBG;
|
Color get myStackContactIconBG;
|
||||||
Color get textConfirmTotalAmount;
|
Color get textConfirmTotalAmount;
|
||||||
Color get textSelectedWordTableItem;
|
Color get textSelectedWordTableItem;
|
||||||
|
|
||||||
|
BoxShadow get standardBoxShadow;
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow;
|
||||||
}
|
}
|
||||||
|
|
||||||
class CoinThemeColor {
|
class CoinThemeColor {
|
||||||
|
|
|
@ -71,6 +71,10 @@ class DarkColors extends StackColorTheme {
|
||||||
Color get buttonBackBorder => const Color(0xFF4C86E9);
|
Color get buttonBackBorder => const Color(0xFF4C86E9);
|
||||||
@override
|
@override
|
||||||
Color get buttonBackBorderDisabled => const Color(0xFF314265);
|
Color get buttonBackBorderDisabled => const Color(0xFF314265);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondary => buttonBackSecondary;
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondaryDisabled => buttonBackSecondaryDisabled;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Color get numberBackDefault => const Color(0xFF484B51);
|
Color get numberBackDefault => const Color(0xFF484B51);
|
||||||
|
@ -314,4 +318,18 @@ class DarkColors extends StackColorTheme {
|
||||||
Color get textConfirmTotalAmount => const Color(0xFF003921);
|
Color get textConfirmTotalAmount => const Color(0xFF003921);
|
||||||
@override
|
@override
|
||||||
Color get textSelectedWordTableItem => const Color(0xFF00297A);
|
Color get textSelectedWordTableItem => const Color(0xFF00297A);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow get standardBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
331
lib/utilities/theme/fruit_sorbet_colors.dart
Normal file
|
@ -0,0 +1,331 @@
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:stackwallet/utilities/theme/color_theme.dart';
|
||||||
|
|
||||||
|
class FruitSorbetColors extends StackColorTheme {
|
||||||
|
@override
|
||||||
|
ThemeType get themeType => ThemeType.fruitSorbet;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get background => Colors.transparent;
|
||||||
|
@override
|
||||||
|
Color get backgroundAppBar => background;
|
||||||
|
@override
|
||||||
|
Gradient? get gradientBackground => null;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get overlay => const Color(0xFF111215);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get accentColorBlue => const Color(0xFF1276EB);
|
||||||
|
@override
|
||||||
|
Color get accentColorGreen => const Color(0xFF00A578);
|
||||||
|
@override
|
||||||
|
Color get accentColorYellow => const Color(0xFFFDC800);
|
||||||
|
@override
|
||||||
|
Color get accentColorRed => const Color(0xFFDD5869);
|
||||||
|
@override
|
||||||
|
Color get accentColorOrange => const Color(0xFFF8894B);
|
||||||
|
@override
|
||||||
|
Color get accentColorDark => const Color(0xFFF95369);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get shadow => const Color(0x0F2D3132);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get textDark => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get textDark2 => const Color(0xFF333333);
|
||||||
|
@override
|
||||||
|
Color get textDark3 => const Color(0xFF696B6C);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle1 => const Color(0xFF7E8284);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle2 => const Color(0xFF8E9192);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle3 => const Color(0xFFB0B2B2);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle4 => const Color(0xFFD1D3D3);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle5 => const Color(0xFFDEDFE1);
|
||||||
|
@override
|
||||||
|
Color get textSubtitle6 => const Color(0xFFF1F1F1);
|
||||||
|
@override
|
||||||
|
Color get textWhite => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get textFavoriteCard => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get textError => const Color(0xFFA8000C);
|
||||||
|
@override
|
||||||
|
Color get textRestore => overlay;
|
||||||
|
|
||||||
|
// button background
|
||||||
|
@override
|
||||||
|
Color get buttonBackPrimary => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get buttonBackSecondary => const Color(0xFFFDCBD2);
|
||||||
|
@override
|
||||||
|
Color get buttonBackPrimaryDisabled => const Color(0xFFFDC3CB);
|
||||||
|
@override
|
||||||
|
Color get buttonBackSecondaryDisabled => const Color(0xFFFEEAED);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorder => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderDisabled => const Color(0xFFFCA7B3);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondary => buttonBackBorder;
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondaryDisabled => buttonBackSecondaryDisabled;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get numberBackDefault => const Color(0xFFFFF8EE);
|
||||||
|
@override
|
||||||
|
Color get numpadBackDefault => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get bottomNavBack => const Color(0xFFFFFFFF);
|
||||||
|
|
||||||
|
// button text/element
|
||||||
|
@override
|
||||||
|
Color get buttonTextPrimary => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get buttonTextSecondary => const Color(0xFF9D3241);
|
||||||
|
@override
|
||||||
|
Color get buttonTextPrimaryDisabled => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get buttonTextSecondaryDisabled => const Color(0xFFD8ADB3);
|
||||||
|
@override
|
||||||
|
Color get buttonTextBorder => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get buttonTextDisabled => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get buttonTextBorderless => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get buttonTextBorderlessDisabled => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get numberTextDefault => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get numpadTextDefault => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get bottomNavText => const Color(0xFFD12B41);
|
||||||
|
|
||||||
|
// switch
|
||||||
|
@override
|
||||||
|
Color get switchBGOn => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get switchBGOff => const Color(0xFFFCADB2);
|
||||||
|
@override
|
||||||
|
Color get switchBGDisabled => const Color(0xFFC5C6C9);
|
||||||
|
@override
|
||||||
|
Color get switchCircleOn => const Color(0xFFFFEEF0);
|
||||||
|
@override
|
||||||
|
Color get switchCircleOff => const Color(0xFFFFFCF5);
|
||||||
|
@override
|
||||||
|
Color get switchCircleDisabled => const Color(0xFFFFFCF5);
|
||||||
|
|
||||||
|
// step indicator background
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorBGCheck => const Color(0xFFFFC6AE);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorBGNumber => const Color(0xFFFFC6AE);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorBGInactive => const Color(0xFFBFBFBF);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorBGLines => const Color(0xFFF39774);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorBGLinesInactive => const Color(0xFFB3B3B3);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorIconText => const Color(0xFFE12F09);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorIconNumber => const Color(0xFFE12F09);
|
||||||
|
@override
|
||||||
|
Color get stepIndicatorIconInactive => const Color(0xFFFFCFBA);
|
||||||
|
|
||||||
|
// checkbox
|
||||||
|
@override
|
||||||
|
Color get checkboxBGChecked => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get checkboxBorderEmpty => const Color(0xFF8C8F90);
|
||||||
|
@override
|
||||||
|
Color get checkboxBGDisabled => const Color(0xFFFDB0AE);
|
||||||
|
@override
|
||||||
|
Color get checkboxIconChecked => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get checkboxIconDisabled => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get checkboxTextLabel => const Color(0xFF232323);
|
||||||
|
|
||||||
|
// snack bar
|
||||||
|
@override
|
||||||
|
Color get snackBarBackSuccess => const Color(0xFFB7F0CC);
|
||||||
|
@override
|
||||||
|
Color get snackBarBackError => const Color(0xFFFCBDBA);
|
||||||
|
@override
|
||||||
|
Color get snackBarBackInfo => const Color(0xFFDAE2FF);
|
||||||
|
@override
|
||||||
|
Color get snackBarTextSuccess => const Color(0xFF2E7356);
|
||||||
|
@override
|
||||||
|
Color get snackBarTextError => const Color(0xFFBC0D20);
|
||||||
|
@override
|
||||||
|
Color get snackBarTextInfo => const Color(0xFF143E8C);
|
||||||
|
|
||||||
|
// icons
|
||||||
|
@override
|
||||||
|
Color get bottomNavIconBack => const Color(0xFFFDBAC3);
|
||||||
|
@override
|
||||||
|
Color get bottomNavIconIcon => const Color(0xFFD12B41);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get topNavIconPrimary => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get topNavIconGreen => const Color(0xFF00A578);
|
||||||
|
@override
|
||||||
|
Color get topNavIconYellow => const Color(0xFFF8894B);
|
||||||
|
@override
|
||||||
|
Color get topNavIconRed => const Color(0xFFD91B1B);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get settingsIconBack => const Color(0xFFFED7CA);
|
||||||
|
@override
|
||||||
|
Color get settingsIconIcon => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get settingsIconBack2 => const Color(0xFF80D2BB);
|
||||||
|
@override
|
||||||
|
Color get settingsIconElement => const Color(0xFF00A578);
|
||||||
|
|
||||||
|
// text field
|
||||||
|
@override
|
||||||
|
Color get textFieldActiveBG => const Color(0xFFFFFBF6);
|
||||||
|
@override
|
||||||
|
Color get textFieldDefaultBG => const Color(0xFFFFF8EE);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorBG => const Color(0xFFFCBDBA);
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessBG => const Color(0xFFB7F0CC);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorBorder => textFieldErrorBG;
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessBorder => textFieldSuccessBG;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get textFieldActiveSearchIconLeft => const Color(0xFF86898C);
|
||||||
|
@override
|
||||||
|
Color get textFieldDefaultSearchIconLeft => const Color(0xFF9A9DA0);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorSearchIconLeft => const Color(0xFFBC0D20);
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessSearchIconLeft => const Color(0xFF387D60);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get textFieldActiveText => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get textFieldDefaultText => const Color(0xFF86898C);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorText => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessText => const Color(0xFF232323);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get textFieldActiveLabel => const Color(0xFF86898C);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorLabel => const Color(0xFFBC0D20);
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessLabel => const Color(0xFF387D60);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get textFieldActiveSearchIconRight => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get textFieldDefaultSearchIconRight => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get textFieldErrorSearchIconRight => const Color(0xFFBC0D20);
|
||||||
|
@override
|
||||||
|
Color get textFieldSuccessSearchIconRight => const Color(0xFF387D60);
|
||||||
|
|
||||||
|
// settings item level2
|
||||||
|
@override
|
||||||
|
Color get settingsItem2ActiveBG => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get settingsItem2ActiveText => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get settingsItem2ActiveSub => const Color(0xFFFED7CA);
|
||||||
|
|
||||||
|
// radio buttons
|
||||||
|
@override
|
||||||
|
Color get radioButtonIconBorder => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get radioButtonIconBorderDisabled => const Color(0xFF8C8D97);
|
||||||
|
@override
|
||||||
|
Color get radioButtonBorderEnabled => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get radioButtonBorderDisabled => const Color(0xFF8C8D97);
|
||||||
|
@override
|
||||||
|
Color get radioButtonIconCircle => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get radioButtonIconEnabled => const Color(0xFFF95369);
|
||||||
|
@override
|
||||||
|
Color get radioButtonTextEnabled => const Color(0xFF42444B);
|
||||||
|
@override
|
||||||
|
Color get radioButtonTextDisabled => const Color(0xFF42444B);
|
||||||
|
@override
|
||||||
|
Color get radioButtonLabelEnabled => const Color(0xFF8C8F90);
|
||||||
|
@override
|
||||||
|
Color get radioButtonLabelDisabled => const Color(0xFF8C8F90);
|
||||||
|
|
||||||
|
// info text
|
||||||
|
@override
|
||||||
|
Color get infoItemBG => const Color(0xFFFFF8EE);
|
||||||
|
@override
|
||||||
|
Color get infoItemLabel => const Color(0xFF838788);
|
||||||
|
@override
|
||||||
|
Color get infoItemText => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get infoItemIcons => const Color(0xFF0A6CE1);
|
||||||
|
|
||||||
|
// popup
|
||||||
|
@override
|
||||||
|
Color get popupBG => const Color(0xFFFFF8EE);
|
||||||
|
|
||||||
|
// currency list
|
||||||
|
@override
|
||||||
|
Color get currencyListItemBG => const Color(0xFFFFEBE0);
|
||||||
|
|
||||||
|
// bottom nav
|
||||||
|
@override
|
||||||
|
Color get stackWalletBG => const Color(0xFFFFFFFF);
|
||||||
|
@override
|
||||||
|
Color get stackWalletMid => const Color(0xFF666666);
|
||||||
|
@override
|
||||||
|
Color get stackWalletBottom => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get bottomNavShadow => const Color(0xFFFE7160);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get favoriteStarActive => infoItemIcons;
|
||||||
|
@override
|
||||||
|
Color get favoriteStarInactive => textSubtitle3;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Color get splash => const Color(0xFF8E9192);
|
||||||
|
@override
|
||||||
|
Color get highlight => const Color(0xFFA9ACAC);
|
||||||
|
@override
|
||||||
|
Color get warningForeground => textDark;
|
||||||
|
@override
|
||||||
|
Color get warningBackground => const Color(0xFFFCBDBA);
|
||||||
|
@override
|
||||||
|
Color get loadingOverlayTextColor => const Color(0xFFF7F7F7);
|
||||||
|
@override
|
||||||
|
Color get myStackContactIconBG => textFieldDefaultBG;
|
||||||
|
@override
|
||||||
|
Color get textConfirmTotalAmount => const Color(0xFF232323);
|
||||||
|
@override
|
||||||
|
Color get textSelectedWordTableItem => const Color(0xFF232323);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow get standardBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow => null;
|
||||||
|
}
|
|
@ -71,6 +71,10 @@ class LightColors extends StackColorTheme {
|
||||||
Color get buttonBackBorder => const Color(0xFF232323);
|
Color get buttonBackBorder => const Color(0xFF232323);
|
||||||
@override
|
@override
|
||||||
Color get buttonBackBorderDisabled => const Color(0xFFB6B6B6);
|
Color get buttonBackBorderDisabled => const Color(0xFFB6B6B6);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondary => buttonBackSecondary;
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondaryDisabled => buttonBackSecondaryDisabled;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Color get numberBackDefault => const Color(0xFFFFFFFF);
|
Color get numberBackDefault => const Color(0xFFFFFFFF);
|
||||||
|
@ -314,4 +318,18 @@ class LightColors extends StackColorTheme {
|
||||||
Color get textConfirmTotalAmount => const Color(0xFF232323);
|
Color get textConfirmTotalAmount => const Color(0xFF232323);
|
||||||
@override
|
@override
|
||||||
Color get textSelectedWordTableItem => const Color(0xFF232323);
|
Color get textSelectedWordTableItem => const Color(0xFF232323);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow get standardBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -78,6 +78,10 @@ class OceanBreezeColors extends StackColorTheme {
|
||||||
Color get buttonBackBorder => const Color(0xFF227386);
|
Color get buttonBackBorder => const Color(0xFF227386);
|
||||||
@override
|
@override
|
||||||
Color get buttonBackBorderDisabled => const Color(0xFFBDD5DB);
|
Color get buttonBackBorderDisabled => const Color(0xFFBDD5DB);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondary => buttonBackSecondary;
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondaryDisabled => buttonBackSecondaryDisabled;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Color get numberBackDefault => const Color(0xFFFFFFFF);
|
Color get numberBackDefault => const Color(0xFFFFFFFF);
|
||||||
|
@ -321,4 +325,18 @@ class OceanBreezeColors extends StackColorTheme {
|
||||||
Color get textConfirmTotalAmount => const Color(0xFF232323);
|
Color get textConfirmTotalAmount => const Color(0xFF232323);
|
||||||
@override
|
@override
|
||||||
Color get textSelectedWordTableItem => const Color(0xFF232323);
|
Color get textSelectedWordTableItem => const Color(0xFF232323);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow get standardBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,6 +72,10 @@ class OledBlackColors extends StackColorTheme {
|
||||||
Color get buttonBackBorder => const Color(0xFF6F9CE9);
|
Color get buttonBackBorder => const Color(0xFF6F9CE9);
|
||||||
@override
|
@override
|
||||||
Color get buttonBackBorderDisabled => const Color(0xFF212F46);
|
Color get buttonBackBorderDisabled => const Color(0xFF212F46);
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondary => buttonBackSecondary;
|
||||||
|
@override
|
||||||
|
Color get buttonBackBorderSecondaryDisabled => buttonBackSecondaryDisabled;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Color get numberBackDefault => const Color(0xFF242424);
|
Color get numberBackDefault => const Color(0xFF242424);
|
||||||
|
@ -316,4 +320,18 @@ class OledBlackColors extends StackColorTheme {
|
||||||
Color get textConfirmTotalAmount => const Color(0xFF144D35);
|
Color get textConfirmTotalAmount => const Color(0xFF144D35);
|
||||||
@override
|
@override
|
||||||
Color get textSelectedWordTableItem => const Color(0xFF143D8E);
|
Color get textSelectedWordTableItem => const Color(0xFF143D8E);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow get standardBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
BoxShadow? get homeViewButtonBarBoxShadow => BoxShadow(
|
||||||
|
color: shadow,
|
||||||
|
spreadRadius: 3,
|
||||||
|
blurRadius: 4,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,6 +41,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
final Color buttonBackSecondaryDisabled;
|
final Color buttonBackSecondaryDisabled;
|
||||||
final Color buttonBackBorder;
|
final Color buttonBackBorder;
|
||||||
final Color buttonBackBorderDisabled;
|
final Color buttonBackBorderDisabled;
|
||||||
|
final Color buttonBackBorderSecondary;
|
||||||
|
final Color buttonBackBorderSecondaryDisabled;
|
||||||
final Color numberBackDefault;
|
final Color numberBackDefault;
|
||||||
final Color numpadBackDefault;
|
final Color numpadBackDefault;
|
||||||
final Color bottomNavBack;
|
final Color bottomNavBack;
|
||||||
|
@ -176,6 +178,9 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
final Color textConfirmTotalAmount;
|
final Color textConfirmTotalAmount;
|
||||||
final Color textSelectedWordTableItem;
|
final Color textSelectedWordTableItem;
|
||||||
|
|
||||||
|
final BoxShadow standardBoxShadow;
|
||||||
|
final BoxShadow? homeViewButtonBarBoxShadow;
|
||||||
|
|
||||||
StackColors({
|
StackColors({
|
||||||
required this.themeType,
|
required this.themeType,
|
||||||
required this.background,
|
required this.background,
|
||||||
|
@ -208,6 +213,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
required this.buttonBackSecondaryDisabled,
|
required this.buttonBackSecondaryDisabled,
|
||||||
required this.buttonBackBorder,
|
required this.buttonBackBorder,
|
||||||
required this.buttonBackBorderDisabled,
|
required this.buttonBackBorderDisabled,
|
||||||
|
required this.buttonBackBorderSecondary,
|
||||||
|
required this.buttonBackBorderSecondaryDisabled,
|
||||||
required this.numberBackDefault,
|
required this.numberBackDefault,
|
||||||
required this.numpadBackDefault,
|
required this.numpadBackDefault,
|
||||||
required this.bottomNavBack,
|
required this.bottomNavBack,
|
||||||
|
@ -312,6 +319,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
required this.myStackContactIconBG,
|
required this.myStackContactIconBG,
|
||||||
required this.textConfirmTotalAmount,
|
required this.textConfirmTotalAmount,
|
||||||
required this.textSelectedWordTableItem,
|
required this.textSelectedWordTableItem,
|
||||||
|
required this.standardBoxShadow,
|
||||||
|
required this.homeViewButtonBarBoxShadow,
|
||||||
});
|
});
|
||||||
|
|
||||||
factory StackColors.fromStackColorTheme(StackColorTheme colorTheme) {
|
factory StackColors.fromStackColorTheme(StackColorTheme colorTheme) {
|
||||||
|
@ -347,6 +356,9 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
buttonBackSecondaryDisabled: colorTheme.buttonBackSecondaryDisabled,
|
buttonBackSecondaryDisabled: colorTheme.buttonBackSecondaryDisabled,
|
||||||
buttonBackBorder: colorTheme.buttonBackBorder,
|
buttonBackBorder: colorTheme.buttonBackBorder,
|
||||||
buttonBackBorderDisabled: colorTheme.buttonBackBorderDisabled,
|
buttonBackBorderDisabled: colorTheme.buttonBackBorderDisabled,
|
||||||
|
buttonBackBorderSecondary: colorTheme.buttonBackBorderSecondary,
|
||||||
|
buttonBackBorderSecondaryDisabled:
|
||||||
|
colorTheme.buttonBackBorderSecondaryDisabled,
|
||||||
numberBackDefault: colorTheme.numberBackDefault,
|
numberBackDefault: colorTheme.numberBackDefault,
|
||||||
numpadBackDefault: colorTheme.numpadBackDefault,
|
numpadBackDefault: colorTheme.numpadBackDefault,
|
||||||
bottomNavBack: colorTheme.bottomNavBack,
|
bottomNavBack: colorTheme.bottomNavBack,
|
||||||
|
@ -453,6 +465,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
myStackContactIconBG: colorTheme.myStackContactIconBG,
|
myStackContactIconBG: colorTheme.myStackContactIconBG,
|
||||||
textConfirmTotalAmount: colorTheme.textConfirmTotalAmount,
|
textConfirmTotalAmount: colorTheme.textConfirmTotalAmount,
|
||||||
textSelectedWordTableItem: colorTheme.textSelectedWordTableItem,
|
textSelectedWordTableItem: colorTheme.textSelectedWordTableItem,
|
||||||
|
homeViewButtonBarBoxShadow: colorTheme.homeViewButtonBarBoxShadow,
|
||||||
|
standardBoxShadow: colorTheme.standardBoxShadow,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -489,6 +503,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
Color? buttonBackSecondaryDisabled,
|
Color? buttonBackSecondaryDisabled,
|
||||||
Color? buttonBackBorder,
|
Color? buttonBackBorder,
|
||||||
Color? buttonBackBorderDisabled,
|
Color? buttonBackBorderDisabled,
|
||||||
|
Color? buttonBackBorderSecondary,
|
||||||
|
Color? buttonBackBorderSecondaryDisabled,
|
||||||
Color? numberBackDefault,
|
Color? numberBackDefault,
|
||||||
Color? numpadBackDefault,
|
Color? numpadBackDefault,
|
||||||
Color? bottomNavBack,
|
Color? bottomNavBack,
|
||||||
|
@ -593,6 +609,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
Color? myStackContactIconBG,
|
Color? myStackContactIconBG,
|
||||||
Color? textConfirmTotalAmount,
|
Color? textConfirmTotalAmount,
|
||||||
Color? textSelectedWordTableItem,
|
Color? textSelectedWordTableItem,
|
||||||
|
BoxShadow? homeViewButtonBarBoxShadow,
|
||||||
|
BoxShadow? standardBoxShadow,
|
||||||
}) {
|
}) {
|
||||||
return StackColors(
|
return StackColors(
|
||||||
themeType: themeType ?? this.themeType,
|
themeType: themeType ?? this.themeType,
|
||||||
|
@ -629,6 +647,10 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
buttonBackBorder: buttonBackBorder ?? this.buttonBackBorder,
|
buttonBackBorder: buttonBackBorder ?? this.buttonBackBorder,
|
||||||
buttonBackBorderDisabled:
|
buttonBackBorderDisabled:
|
||||||
buttonBackBorderDisabled ?? this.buttonBackBorderDisabled,
|
buttonBackBorderDisabled ?? this.buttonBackBorderDisabled,
|
||||||
|
buttonBackBorderSecondary:
|
||||||
|
buttonBackBorderSecondary ?? this.buttonBackBorderSecondary,
|
||||||
|
buttonBackBorderSecondaryDisabled: buttonBackBorderSecondaryDisabled ??
|
||||||
|
this.buttonBackBorderSecondaryDisabled,
|
||||||
numberBackDefault: numberBackDefault ?? this.numberBackDefault,
|
numberBackDefault: numberBackDefault ?? this.numberBackDefault,
|
||||||
numpadBackDefault: numpadBackDefault ?? this.numpadBackDefault,
|
numpadBackDefault: numpadBackDefault ?? this.numpadBackDefault,
|
||||||
bottomNavBack: bottomNavBack ?? this.bottomNavBack,
|
bottomNavBack: bottomNavBack ?? this.bottomNavBack,
|
||||||
|
@ -768,6 +790,9 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
textConfirmTotalAmount ?? this.textConfirmTotalAmount,
|
textConfirmTotalAmount ?? this.textConfirmTotalAmount,
|
||||||
textSelectedWordTableItem:
|
textSelectedWordTableItem:
|
||||||
textSelectedWordTableItem ?? this.textSelectedWordTableItem,
|
textSelectedWordTableItem ?? this.textSelectedWordTableItem,
|
||||||
|
homeViewButtonBarBoxShadow:
|
||||||
|
homeViewButtonBarBoxShadow ?? this.homeViewButtonBarBoxShadow,
|
||||||
|
standardBoxShadow: standardBoxShadow ?? this.standardBoxShadow,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -783,6 +808,8 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
return StackColors(
|
return StackColors(
|
||||||
themeType: other.themeType,
|
themeType: other.themeType,
|
||||||
gradientBackground: other.gradientBackground,
|
gradientBackground: other.gradientBackground,
|
||||||
|
homeViewButtonBarBoxShadow: other.homeViewButtonBarBoxShadow,
|
||||||
|
standardBoxShadow: other.standardBoxShadow,
|
||||||
background: Color.lerp(
|
background: Color.lerp(
|
||||||
background,
|
background,
|
||||||
other.background,
|
other.background,
|
||||||
|
@ -928,6 +955,16 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
other.buttonBackBorderDisabled,
|
other.buttonBackBorderDisabled,
|
||||||
t,
|
t,
|
||||||
)!,
|
)!,
|
||||||
|
buttonBackBorderSecondary: Color.lerp(
|
||||||
|
buttonBackBorderSecondary,
|
||||||
|
other.buttonBackBorderSecondary,
|
||||||
|
t,
|
||||||
|
)!,
|
||||||
|
buttonBackBorderSecondaryDisabled: Color.lerp(
|
||||||
|
buttonBackBorderSecondaryDisabled,
|
||||||
|
other.buttonBackBorderSecondaryDisabled,
|
||||||
|
t,
|
||||||
|
)!,
|
||||||
numberBackDefault: Color.lerp(
|
numberBackDefault: Color.lerp(
|
||||||
numberBackDefault,
|
numberBackDefault,
|
||||||
other.numberBackDefault,
|
other.numberBackDefault,
|
||||||
|
@ -1481,12 +1518,6 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
|
|
||||||
static const _coin = CoinThemeColor();
|
static const _coin = CoinThemeColor();
|
||||||
|
|
||||||
BoxShadow get standardBoxShadow => BoxShadow(
|
|
||||||
color: shadow,
|
|
||||||
spreadRadius: 3,
|
|
||||||
blurRadius: 4,
|
|
||||||
);
|
|
||||||
|
|
||||||
Color colorForStatus(String status) {
|
Color colorForStatus(String status) {
|
||||||
switch (status) {
|
switch (status) {
|
||||||
case "New":
|
case "New":
|
||||||
|
@ -1518,70 +1549,97 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ButtonStyle? getDeleteEnabledButtonColor(BuildContext context) =>
|
ButtonStyle? getDeleteEnabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
textFieldErrorBG,
|
textFieldErrorBG,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getDeleteDisabledButtonColor(BuildContext context) =>
|
ButtonStyle? getDeleteDisabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
buttonBackSecondaryDisabled,
|
buttonBackSecondaryDisabled,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getPrimaryEnabledButtonColor(BuildContext context) =>
|
ButtonStyle? getPrimaryEnabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
buttonBackPrimary,
|
buttonBackPrimary,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getPrimaryDisabledButtonColor(BuildContext context) =>
|
ButtonStyle? getPrimaryDisabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
buttonBackPrimaryDisabled,
|
buttonBackPrimaryDisabled,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getSecondaryEnabledButtonColor(BuildContext context) =>
|
ButtonStyle? getSecondaryEnabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
buttonBackSecondary,
|
buttonBackSecondary,
|
||||||
),
|
),
|
||||||
|
shape: MaterialStateProperty.all(
|
||||||
|
RoundedRectangleBorder(
|
||||||
|
side: BorderSide(
|
||||||
|
color: buttonBackBorderSecondary,
|
||||||
|
width: 1,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10000),
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getSecondaryDisabledButtonColor(BuildContext context) =>
|
ButtonStyle? getSecondaryDisabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
buttonBackSecondaryDisabled,
|
buttonBackSecondaryDisabled,
|
||||||
),
|
),
|
||||||
|
shape: MaterialStateProperty.all(
|
||||||
|
RoundedRectangleBorder(
|
||||||
|
side: BorderSide(
|
||||||
|
color: buttonBackBorderSecondaryDisabled,
|
||||||
|
width: 1,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10000),
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getSmallSecondaryEnabledButtonColor(BuildContext context) =>
|
ButtonStyle? getSmallSecondaryEnabledButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
textFieldDefaultBG,
|
textFieldDefaultBG,
|
||||||
),
|
),
|
||||||
|
shape: MaterialStateProperty.all(
|
||||||
|
RoundedRectangleBorder(
|
||||||
|
side: BorderSide(
|
||||||
|
color: buttonBackBorderSecondary,
|
||||||
|
width: 1,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10000),
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getDesktopMenuButtonColor(BuildContext context) =>
|
ButtonStyle? getDesktopMenuButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
popupBG,
|
popupBG,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getDesktopMenuButtonColorSelected(BuildContext context) =>
|
ButtonStyle? getDesktopMenuButtonStyleSelected(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
textFieldDefaultBG,
|
textFieldDefaultBG,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
ButtonStyle? getDesktopSettingsButtonColor(BuildContext context) =>
|
ButtonStyle? getDesktopSettingsButtonStyle(BuildContext context) =>
|
||||||
Theme.of(context).textButtonTheme.style?.copyWith(
|
Theme.of(context).textButtonTheme.style?.copyWith(
|
||||||
backgroundColor: MaterialStateProperty.all<Color>(
|
backgroundColor: MaterialStateProperty.all<Color>(
|
||||||
background,
|
background,
|
||||||
|
|
|
@ -17,6 +17,8 @@ class Background extends StatelessWidget {
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
Color? color;
|
Color? color;
|
||||||
|
|
||||||
|
bool shouldPad = false;
|
||||||
|
|
||||||
switch (Theme.of(context).extension<StackColors>()!.themeType) {
|
switch (Theme.of(context).extension<StackColors>()!.themeType) {
|
||||||
case ThemeType.light:
|
case ThemeType.light:
|
||||||
case ThemeType.dark:
|
case ThemeType.dark:
|
||||||
|
@ -24,6 +26,10 @@ class Background extends StatelessWidget {
|
||||||
color = Theme.of(context).extension<StackColors>()!.background;
|
color = Theme.of(context).extension<StackColors>()!.background;
|
||||||
break;
|
break;
|
||||||
case ThemeType.oceanBreeze:
|
case ThemeType.oceanBreeze:
|
||||||
|
shouldPad = true;
|
||||||
|
color = null;
|
||||||
|
break;
|
||||||
|
case ThemeType.fruitSorbet:
|
||||||
color = null;
|
color = null;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -42,10 +48,12 @@ class Background extends StatelessWidget {
|
||||||
children: [
|
children: [
|
||||||
Positioned.fill(
|
Positioned.fill(
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: EdgeInsets.only(
|
padding: shouldPad
|
||||||
|
? EdgeInsets.only(
|
||||||
top: MediaQuery.of(context).size.height * (1 / 8),
|
top: MediaQuery.of(context).size.height * (1 / 8),
|
||||||
bottom: MediaQuery.of(context).size.height * (1 / 12),
|
bottom: MediaQuery.of(context).size.height * (1 / 12),
|
||||||
),
|
)
|
||||||
|
: const EdgeInsets.all(0),
|
||||||
child: SvgPicture.asset(
|
child: SvgPicture.asset(
|
||||||
bgAsset!,
|
bgAsset!,
|
||||||
fit: BoxFit.fill,
|
fit: BoxFit.fill,
|
||||||
|
|
|
@ -64,10 +64,10 @@ class DeleteButton extends StatelessWidget {
|
||||||
style: enabled
|
style: enabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDeleteEnabledButtonColor(context)
|
.getDeleteEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getDeleteDisabledButtonColor(context),
|
.getDeleteDisabledButtonStyle(context),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
|
|
|
@ -136,10 +136,10 @@ class PrimaryButton extends StatelessWidget {
|
||||||
style: enabled
|
style: enabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context)
|
.getPrimaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context),
|
.getPrimaryDisabledButtonStyle(context),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
|
|
|
@ -139,10 +139,10 @@ class SecondaryButton extends StatelessWidget {
|
||||||
style: enabled
|
style: enabled
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context)
|
.getSecondaryEnabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryDisabledButtonColor(context),
|
.getSecondaryDisabledButtonStyle(context),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
|
|
|
@ -20,6 +20,7 @@ class Expandable extends StatefulWidget {
|
||||||
this.animationDurationMultiplier = 1.0,
|
this.animationDurationMultiplier = 1.0,
|
||||||
this.onExpandChanged,
|
this.onExpandChanged,
|
||||||
this.controller,
|
this.controller,
|
||||||
|
this.expandOverride,
|
||||||
}) : super(key: key);
|
}) : super(key: key);
|
||||||
|
|
||||||
final Widget header;
|
final Widget header;
|
||||||
|
@ -29,6 +30,7 @@ class Expandable extends StatefulWidget {
|
||||||
final double animationDurationMultiplier;
|
final double animationDurationMultiplier;
|
||||||
final void Function(ExpandableState)? onExpandChanged;
|
final void Function(ExpandableState)? onExpandChanged;
|
||||||
final ExpandableController? controller;
|
final ExpandableController? controller;
|
||||||
|
final VoidCallback? expandOverride;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<Expandable> createState() => _ExpandableState();
|
State<Expandable> createState() => _ExpandableState();
|
||||||
|
@ -92,7 +94,7 @@ class _ExpandableState extends State<Expandable> with TickerProviderStateMixin {
|
||||||
MouseRegion(
|
MouseRegion(
|
||||||
cursor: SystemMouseCursors.click,
|
cursor: SystemMouseCursors.click,
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: toggle,
|
onTap: widget.expandOverride ?? toggle,
|
||||||
child: Container(
|
child: Container(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
child: widget.header,
|
child: widget.header,
|
||||||
|
|
|
@ -307,7 +307,7 @@ class NodeOptionsSheet extends ConsumerWidget {
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getSecondaryEnabledButtonColor(context),
|
.getSecondaryEnabledButtonStyle(context),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.of(context).pushNamed(
|
Navigator.of(context).pushNamed(
|
||||||
|
@ -337,10 +337,10 @@ class NodeOptionsSheet extends ConsumerWidget {
|
||||||
style: status == "Connected"
|
style: status == "Connected"
|
||||||
? Theme.of(context)
|
? Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryDisabledButtonColor(context)
|
.getPrimaryDisabledButtonStyle(context)
|
||||||
: Theme.of(context)
|
: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
onPressed: status == "Connected"
|
onPressed: status == "Connected"
|
||||||
? null
|
? null
|
||||||
: () async {
|
: () async {
|
||||||
|
|
|
@ -193,7 +193,7 @@ class StackOkDialog extends StatelessWidget {
|
||||||
},
|
},
|
||||||
style: Theme.of(context)
|
style: Theme.of(context)
|
||||||
.extension<StackColors>()!
|
.extension<StackColors>()!
|
||||||
.getPrimaryEnabledButtonColor(context),
|
.getPrimaryEnabledButtonStyle(context),
|
||||||
child: Text(
|
child: Text(
|
||||||
"Ok",
|
"Ok",
|
||||||
style: STextStyles.button(context),
|
style: STextStyles.button(context),
|
||||||
|
|