@instadapp/avocado-base 0.0.37 → 0.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app.vue +7 -0
- package/assets/images/icons/change-threshold.svg +4 -0
- package/assets/images/icons/cross-transfer.svg +7 -0
- package/assets/images/icons/dapp.svg +4 -0
- package/assets/images/icons/deploy.svg +12 -0
- package/assets/images/icons/gas.svg +12 -5
- package/assets/images/icons/instadapp-pro.svg +4 -0
- package/assets/images/icons/multi-send.svg +7 -0
- package/assets/images/icons/permit-sign.svg +11 -0
- package/assets/images/icons/plus-circle.svg +6 -0
- package/assets/images/icons/refresh.svg +4 -4
- package/assets/images/icons/reject-proposal.svg +6 -0
- package/assets/images/icons/transfer.svg +5 -0
- package/assets/images/icons/trash-2.svg +8 -0
- package/assets/images/icons/upgrade.svg +4 -0
- package/components/ActionLogo.vue +38 -0
- package/components/ActionMetadata.vue +22 -2
- package/package.json +1 -1
- package/utils/helper.ts +7 -0
- package/utils/metadata.ts +183 -127
- package/utils/utils.d.ts +127 -127
package/app.vue
CHANGED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M4.80469 9.3209H6.74805L8.48912 5.65137L10.9863 13.5476L13.3078 9.3209H15.2511" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M12 4H16V8" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M16 12L16 16L12 16" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M16 4L6 14" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
<path d="M16 16L6 6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
+
</svg>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M5.86776 7.56373C8.14869 5.47876 11.8513 5.47876 14.1322 7.56373L14.4068 7.81658C14.522 7.92021 14.522 8.09016 14.4068 8.19378L13.4679 9.05181C13.4103 9.1057 13.3173 9.1057 13.2597 9.05181L12.8833 8.70777C11.2888 7.25285 8.71117 7.25285 7.11674 8.70777L6.7137 9.07668C6.65612 9.13057 6.56311 9.13057 6.50554 9.07668L5.56659 8.21865C5.45144 8.11503 5.45144 7.94508 5.56659 7.84145L5.86776 7.56373ZM16.0766 9.33782L16.9136 10.1005C17.0288 10.2041 17.0288 10.3741 16.9136 10.4777L13.1446 13.9223C13.0294 14.0259 12.8434 14.0259 12.7327 13.9223L10.0576 11.4767C10.031 11.4518 9.98229 11.4518 9.95571 11.4767L7.28061 13.9223C7.16545 14.0259 6.97944 14.0259 6.86871 13.9223L3.08637 10.4777C2.97121 10.3741 2.97121 10.2041 3.08637 10.1005L3.92344 9.33782C4.0386 9.2342 4.22461 9.2342 4.33534 9.33782L7.01044 11.7834C7.03701 11.8083 7.08573 11.8083 7.11231 11.7834L9.78741 9.33782C9.90256 9.2342 10.0886 9.2342 10.1993 9.33782L12.8744 11.7834C12.901 11.8083 12.9497 11.8083 12.9763 11.7834L15.6514 9.33782C15.7754 9.2342 15.9614 9.2342 16.0766 9.33782Z" fill="currentColor"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<g clip-path="url(#clip0_13865_495124)">
|
|
4
|
+
<path d="M3.58203 5.3335V8.8335H7.08203" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M5.0462 11.7499C5.42443 12.8235 6.14131 13.745 7.08883 14.3757C8.03635 15.0064 9.16318 15.3121 10.2995 15.2467C11.4359 15.1813 12.5202 14.7484 13.3891 14.0131C14.258 13.2779 14.8644 12.2802 15.117 11.1703C15.3696 10.0604 15.2546 8.89857 14.7894 7.85974C14.3242 6.8209 13.534 5.96139 12.5379 5.41071C11.5417 4.86002 10.3936 4.648 9.26643 4.80658C8.13929 4.96516 7.09423 5.48576 6.2887 6.28993L3.58203 8.83326" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
</g>
|
|
7
|
+
<defs>
|
|
8
|
+
<clipPath id="clip0_13865_495124">
|
|
9
|
+
<rect width="14" height="14" fill="white" transform="translate(3 3)"/>
|
|
10
|
+
</clipPath>
|
|
11
|
+
</defs>
|
|
12
|
+
</svg>
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
2
|
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
-
<
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
<g clip-path="url(#clip0_13865_495109)">
|
|
4
|
+
<rect x="4.44922" y="4.4502" width="6.9" height="11.1" rx="1.25" stroke="currentColor" stroke-width="1.5"/>
|
|
5
|
+
<rect x="6.85" y="9.6498" width="2.1" height="0.7" rx="0.35" fill="currentColor" stroke="currentColor" stroke-width="0.7"/>
|
|
6
|
+
<rect x="6.85" y="12.4501" width="2.1" height="0.7" rx="0.35" fill="currentColor" stroke="currentColor" stroke-width="0.7"/>
|
|
7
|
+
<path d="M12.1016 10H12.8516C13.4038 10 13.8516 10.4477 13.8516 11V13.9C13.8516 14.4523 14.2993 14.9 14.8516 14.9H14.9516C15.5038 14.9 15.9516 14.4523 15.9516 13.9V4.75" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
8
|
+
</g>
|
|
9
|
+
<defs>
|
|
10
|
+
<clipPath id="clip0_13865_495109">
|
|
11
|
+
<rect width="14" height="14" fill="white" transform="translate(3 3)"/>
|
|
12
|
+
</clipPath>
|
|
13
|
+
</defs>
|
|
14
|
+
</svg>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg width="16" height="16" viewBox="0 0 16 16" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M8.00156 14.1775C8.00156 14.5712 8.32023 14.8941 8.70991 14.854C12.1642 14.4978 14.8588 11.5653 14.8588 8.00023C14.8588 4.43519 12.1642 1.50263 8.70991 1.14648C8.32023 1.10609 8.00156 1.42922 8.00156 1.8229V3.72362C8.00156 4.1173 8.3224 4.42902 8.70645 4.50672C10.3277 4.83529 11.5485 6.27438 11.5485 8.00023C11.5485 9.72609 10.3277 11.1652 8.70645 11.4938C8.3224 11.5714 8.00156 11.8834 8.00156 12.2768V14.1775ZM5.87349 2.43066C5.87349 1.94597 5.40133 1.60432 4.96901 1.81886C2.70303 2.94337 1.14453 5.28885 1.14453 8.00023C1.14453 10.7116 2.70303 13.0571 4.96901 14.1816C5.40133 14.3961 5.87349 14.0545 5.87349 13.5698V2.43089V2.43066Z" fill="#456CED"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M12 4H16V8" stroke="#4CA054" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M16 12L16 16L12 16" stroke="#4CA054" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M16 4L6 14" stroke="#4CA054" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
<path d="M16 16L6 6" stroke="#4CA054" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
+
</svg>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<g clip-path="url(#clip0_13865_495129)">
|
|
4
|
+
<path d="M15.2506 4.1665L14.084 5.33317M14.084 5.33317L15.834 7.08317L13.7923 9.12484L12.0423 7.37484M14.084 5.33317L12.0423 7.37484M9.64482 9.77234C9.94601 10.0695 10.1854 10.4234 10.3493 10.8135C10.5132 11.2036 10.5983 11.6222 10.5997 12.0454C10.6012 12.4685 10.5189 12.8877 10.3576 13.2789C10.1963 13.6701 9.95927 14.0256 9.66007 14.3248C9.36087 14.624 9.00544 14.861 8.61424 15.0223C8.22305 15.1836 7.80381 15.2659 7.38068 15.2644C6.95755 15.263 6.53888 15.1779 6.14878 15.014C5.75867 14.8501 5.40484 14.6107 5.10765 14.3095C4.52322 13.7044 4.19984 12.894 4.20715 12.0528C4.21446 11.2115 4.55188 10.4069 5.14673 9.812C5.74158 9.21715 6.54627 8.87973 7.38749 8.87242C8.2287 8.86511 9.03913 9.1885 9.64423 9.77292L9.64482 9.77234ZM9.64482 9.77234L12.0423 7.37484" stroke="#94A3B8" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
</g>
|
|
6
|
+
<defs>
|
|
7
|
+
<clipPath id="clip0_13865_495129">
|
|
8
|
+
<rect width="14" height="14" fill="white" transform="translate(3 3)"/>
|
|
9
|
+
</clipPath>
|
|
10
|
+
</defs>
|
|
11
|
+
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M10 7.375V12.625" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M7.375 10H12.625" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<rect x="3.75" y="3.75" width="12.5" height="12.5" rx="6.25" stroke="currentColor" stroke-width="1.5"/>
|
|
6
|
+
</svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<svg width="
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
2
|
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
-
<path d="
|
|
4
|
-
<path d="
|
|
5
|
-
<path d="
|
|
3
|
+
<path d="M15.7049 5.85205V8.96316H12.5938" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M4.29688 14.1482V11.0371H7.40799" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M5.59836 8.44436C5.86133 7.70121 6.30828 7.03679 6.89749 6.51309C7.4867 5.9894 8.19897 5.62349 8.96784 5.44953C9.73671 5.27556 10.5371 5.2992 11.2944 5.51824C12.0516 5.73728 12.7411 6.14458 13.2984 6.70213L15.7043 8.96288M4.29688 11.0369L6.7028 13.2977C7.26008 13.8552 7.94951 14.2625 8.70678 14.4816C9.46404 14.7006 10.2644 14.7243 11.0333 14.5503C11.8022 14.3763 12.5145 14.0104 13.1037 13.4867C13.6929 12.963 14.1398 12.2986 14.4028 11.5555" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
6
|
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M11.8555 8.14404L8.14316 11.8564" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M8.14453 8.14404L11.8568 11.8564" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<rect x="3.75" y="3.75" width="12.5" height="12.5" rx="6.25" stroke="#EB5757" stroke-width="1.5"/>
|
|
6
|
+
</svg>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M6.66797 13.3332L13.3346 6.6665" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M6.66797 6.6665H13.3346V13.3332" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
</svg>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M4.64453 7.21045H15.3588" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round"/>
|
|
4
|
+
<path d="M13.8495 7.21045H6.14754L6.09242 8.20701C5.98681 10.1164 6.07654 12.0315 6.36021 13.9227C6.48391 14.7473 7.19233 15.3574 8.02623 15.3574H11.9708C12.8047 15.3574 13.5131 14.7473 13.6368 13.9227C13.9205 12.0315 14.0102 10.1164 13.9046 8.207L13.8495 7.21045Z" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
5
|
+
<path d="M7.85938 7.21039V6.7825C7.85938 6.21509 8.08478 5.67091 8.486 5.26969C8.88722 4.86847 9.4314 4.64307 9.99881 4.64307C10.5662 4.64307 11.1104 4.86847 11.5116 5.26969C11.9128 5.67091 12.1382 6.21509 12.1382 6.7825V7.21039" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
6
|
+
<path d="M8.71484 9.50195V13.0487" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
7
|
+
<path d="M11.2852 9.50195V13.0487" stroke="#EB5757" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
8
|
+
</svg>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<path d="M14.8549 10.8661C14.8235 10.8264 14.8065 10.7773 14.8067 10.7268V9.27321C14.8065 9.22267 14.8235 9.17356 14.8549 9.13393L15.5254 8.29375C15.6461 8.14274 15.7184 7.95886 15.7329 7.76612C15.7474 7.57338 15.7034 7.38075 15.6067 7.21339L15.2156 6.53661C15.1192 6.36911 14.9744 6.2346 14.8003 6.15065C14.6262 6.06671 14.4308 6.03723 14.2397 6.06607L13.1772 6.22768C13.127 6.23473 13.0758 6.225 13.0317 6.2L11.7728 5.47321C11.7284 5.44656 11.6944 5.40563 11.6763 5.35714L11.2844 4.36071C11.2142 4.18096 11.0914 4.02654 10.9322 3.9176C10.7729 3.80865 10.5845 3.75025 10.3915 3.75H9.60758C9.41461 3.75025 9.2262 3.80865 9.06692 3.9176C8.90765 4.02654 8.78491 4.18096 8.71472 4.36071L8.32097 5.35714C8.30221 5.40431 8.26829 5.44389 8.22454 5.46964L6.96294 6.2C6.91882 6.22506 6.86764 6.2348 6.8174 6.22768L5.75758 6.06607C5.56646 6.03723 5.37108 6.06671 5.19698 6.15065C5.02287 6.2346 4.87814 6.36911 4.78169 6.53661L4.39061 7.21339C4.29391 7.38075 4.24993 7.57338 4.26442 7.76612C4.27892 7.95886 4.35122 8.14274 4.47186 8.29375L5.1424 9.13393C5.17378 9.17356 5.19078 9.22267 5.19061 9.27321V10.7268C5.19078 10.7773 5.17378 10.8264 5.1424 10.8661L4.47186 11.7063C4.35122 11.8573 4.27892 12.0411 4.26442 12.2339C4.24993 12.4266 4.29391 12.6193 4.39061 12.7866L4.78169 13.4634C4.87814 13.6309 5.02287 13.7654 5.19698 13.8493C5.37108 13.9333 5.56646 13.9628 5.75758 13.9339L6.82008 13.7723C6.87032 13.7652 6.9215 13.7749 6.96561 13.8L8.22454 14.5268C8.26829 14.5525 8.30221 14.5921 8.32097 14.6393L8.71294 15.6393C8.78312 15.819 8.90586 15.9735 9.06514 16.0824C9.22441 16.1913 9.41282 16.2498 9.60579 16.25H10.3879C10.5809 16.2498 10.7693 16.1913 10.9286 16.0824C11.0879 15.9735 11.2106 15.819 11.2808 15.6393L11.6728 14.6393C11.6915 14.5921 11.7254 14.5525 11.7692 14.5268L13.0281 13.8C13.0723 13.775 13.1234 13.7653 13.1736 13.7723L14.2362 13.9339C14.4273 13.9628 14.6226 13.9333 14.7968 13.8493C14.9709 13.7654 15.1156 13.6309 15.212 13.4634L15.6031 12.7866C15.6998 12.6193 15.7438 12.4266 15.7293 12.2339C15.7148 12.0411 15.6425 11.8573 15.5219 11.7063L14.8549 10.8661ZM9.99865 12.0089C9.60132 12.0089 9.21292 11.8911 8.88255 11.6704C8.55218 11.4496 8.29469 11.1359 8.14264 10.7688C7.99059 10.4017 7.95081 9.99777 8.02832 9.60808C8.10584 9.21838 8.29717 8.86043 8.57812 8.57947C8.85908 8.29852 9.21703 8.10719 9.60673 8.02967C9.99642 7.95216 10.4003 7.99194 10.7674 8.14399C11.1345 8.29604 11.4483 8.55353 11.669 8.8839C11.8898 9.21427 12.0076 9.60267 12.0076 10C12.0076 10.5328 11.7959 11.0438 11.4192 11.4205C11.0424 11.7973 10.5315 12.0089 9.99865 12.0089Z" stroke="#94A3B8" stroke-width="1.5"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import RefreshSVG from '~/assets/images/icons/refresh.svg'
|
|
3
|
+
import BridgeSVG from '~/assets/images/icons/bridge.svg'
|
|
4
|
+
import CrossTransferSVG from '~/assets/images/icons/cross-transfer.svg'
|
|
5
|
+
import TransferSVG from '~/assets/images/icons/transfer.svg'
|
|
6
|
+
import PlusCircleSVG from '~/assets/images/icons/plus-circle.svg'
|
|
7
|
+
import Trash2SVG from '~/assets/images/icons/trash-2.svg'
|
|
8
|
+
import ChangeThresholdSVG from '~/assets/images/icons/change-threshold.svg'
|
|
9
|
+
import DappSVG from '~/assets/images/icons/dapp.svg'
|
|
10
|
+
import DeploySVG from '~/assets/images/icons/deploy.svg'
|
|
11
|
+
import GasSVG from '~/assets/images/icons/gas.svg'
|
|
12
|
+
import InstadappProSVG from '~/assets/images/icons/instadapp-pro.svg'
|
|
13
|
+
import PermitSignSVG from '~/assets/images/icons/permit-sign.svg'
|
|
14
|
+
import RejectProposalSVG from '~/assets/images/icons/reject-proposal.svg'
|
|
15
|
+
import UpgradeSVG from '~/assets/images/icons/upgrade.svg'
|
|
16
|
+
|
|
17
|
+
defineProps<{
|
|
18
|
+
action: MetadataTypes
|
|
19
|
+
remove?: boolean
|
|
20
|
+
}>()
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
<template>
|
|
24
|
+
<RefreshSVG class="text-primary" v-if="action === 'swap'"/>
|
|
25
|
+
<BridgeSVG class="text-primary" v-else-if="action === 'bridge'"/>
|
|
26
|
+
<CrossTransferSVG class="text-primary" v-else-if="action === 'cross-transfer'"/>
|
|
27
|
+
<TransferSVG class="text-primary" v-else-if="action === 'transfer'"/>
|
|
28
|
+
<PlusCircleSVG class="text-primary" v-else-if="action === 'add-signers' || (action === 'auth' && !remove)"/>
|
|
29
|
+
<Trash2SVG v-else-if="action === 'remove-signers' || (action === 'auth' && remove)"/>
|
|
30
|
+
<ChangeThresholdSVG v-else-if="action === 'change-threshold'"/>
|
|
31
|
+
<DappSVG v-else-if="action === 'dapp'"/>
|
|
32
|
+
<DeploySVG v-else-if="action === 'deploy'"/>
|
|
33
|
+
<GasSVG v-else-if="action === 'gas-topup'"/>
|
|
34
|
+
<InstadappProSVG v-else-if="action === 'instadapp-pro'"/>
|
|
35
|
+
<PermitSignSVG v-else-if="action === 'permit2'"/>
|
|
36
|
+
<RejectProposalSVG v-else-if="action === 'rejection'"/>
|
|
37
|
+
<UpgradeSVG v-else-if="action === 'upgrade'"/>
|
|
38
|
+
</template>
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
|
|
3
3
|
const props = defineProps<{
|
|
4
|
-
metadata:
|
|
4
|
+
metadata: {
|
|
5
|
+
type: MetadataTypes
|
|
6
|
+
[key: string]: any
|
|
7
|
+
};
|
|
5
8
|
chain_id: number | string;
|
|
6
9
|
compact?: boolean;
|
|
7
10
|
}>();
|
|
@@ -31,7 +34,7 @@ provide('compact', props.compact);
|
|
|
31
34
|
<div v-if="metadata.type === 'deploy'" class="self-start capitalize">
|
|
32
35
|
{{ metadata?.type }}
|
|
33
36
|
</div>
|
|
34
|
-
<div v-if="metadata.type === '
|
|
37
|
+
<div v-if="metadata.type === 'auth'" class="self-start capitalize flex gap-3">
|
|
35
38
|
Authority {{ metadata.remove ? 'Removed' : 'Added' }}:
|
|
36
39
|
<a
|
|
37
40
|
class="text-primary break-all"
|
|
@@ -49,5 +52,22 @@ provide('compact', props.compact);
|
|
|
49
52
|
Instadapp Pro |
|
|
50
53
|
{{ metadata?.castDetails }}
|
|
51
54
|
</div>
|
|
55
|
+
|
|
56
|
+
<div v-if="metadata.type === 'add-signers' || metadata.type === 'remove-signers'" class="text-left w-fit" v-tippy="formatMultipleAddresses(metadata.addresses, false)" >
|
|
57
|
+
{{ formatMultipleAddresses(metadata.addresses) }}
|
|
58
|
+
</div>
|
|
59
|
+
|
|
60
|
+
<div v-if="metadata.type === 'change-threshold'" class="text-left w-fit" >
|
|
61
|
+
Change Threshold to {{ metadata.count }}
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<div v-tippy="{
|
|
65
|
+
content: metadata.id,
|
|
66
|
+
maxWidth: 'none',
|
|
67
|
+
interactive: true,
|
|
68
|
+
}"
|
|
69
|
+
v-if="metadata.type === 'rejection'" class="text-left w-fit">
|
|
70
|
+
{{ shortenHash(metadata.id) }}
|
|
71
|
+
</div>
|
|
52
72
|
</div>
|
|
53
73
|
</template>
|
package/package.json
CHANGED
package/utils/helper.ts
CHANGED
|
@@ -52,3 +52,10 @@ export function onImageError(this: HTMLImageElement) {
|
|
|
52
52
|
parentElement.classList.add("bg-gray-300");
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
+
|
|
56
|
+
export function formatMultipleAddresses(addresses: string[], shorten = true) {
|
|
57
|
+
const formatter = new Intl.ListFormat('en', { style: 'long', type: 'conjunction' })
|
|
58
|
+
const formattedString = formatter.format(addresses.map(i => shorten ? shortenHash(i) || '' : i))
|
|
59
|
+
|
|
60
|
+
return formattedString
|
|
61
|
+
}
|
package/utils/metadata.ts
CHANGED
|
@@ -1,11 +1,29 @@
|
|
|
1
1
|
import { ethers, utils } from "ethers";
|
|
2
2
|
import { Forwarder__factory } from "../contracts";
|
|
3
3
|
|
|
4
|
+
export const MetadataEnums = {
|
|
5
|
+
"transfer": "transfer",
|
|
6
|
+
"bridge": "bridge",
|
|
7
|
+
"swap": "swap",
|
|
8
|
+
"gas-topup": "gas-topup",
|
|
9
|
+
"upgrade": "upgrade",
|
|
10
|
+
"dapp": "dapp",
|
|
11
|
+
"deploy": "deploy",
|
|
12
|
+
"permit2": "permit2",
|
|
13
|
+
"cross-transfer": "cross-transfer",
|
|
14
|
+
"auth": "auth",
|
|
15
|
+
"rejection": "rejection",
|
|
16
|
+
"instadapp-pro": "instadapp-pro",
|
|
17
|
+
"add-signers": "add-signers",
|
|
18
|
+
"remove-signers": "remove-signers",
|
|
19
|
+
"change-threshold": "change-threshold",
|
|
20
|
+
} as const;
|
|
21
|
+
|
|
4
22
|
const multiMetadataTypes = ["bytes[]"];
|
|
5
23
|
|
|
6
24
|
const metadataTypes = ["bytes32 type", "uint8 version", "bytes data"];
|
|
7
25
|
|
|
8
|
-
const actionMetadataTypes = {
|
|
26
|
+
const actionMetadataTypes: Record<MetadataTypes, string[]> = {
|
|
9
27
|
transfer: ["address token", "uint256 amount", "address receiver"],
|
|
10
28
|
"cross-transfer": [
|
|
11
29
|
"address fromToken",
|
|
@@ -43,7 +61,10 @@ const actionMetadataTypes = {
|
|
|
43
61
|
"uint48 expiration",
|
|
44
62
|
],
|
|
45
63
|
"instadapp-pro": ["string castDetails"],
|
|
46
|
-
|
|
64
|
+
'add-signers': ['address[] signers'],
|
|
65
|
+
'remove-signers': ['address[] signers'],
|
|
66
|
+
'change-threshold': ['uint8 count'],
|
|
67
|
+
'rejection': ['bytes32 id'],
|
|
47
68
|
};
|
|
48
69
|
|
|
49
70
|
const encodeMetadata = (props: MetadataProps) => {
|
|
@@ -64,7 +85,7 @@ export const encodeDappMetadata = (
|
|
|
64
85
|
);
|
|
65
86
|
|
|
66
87
|
const data = encodeMetadata({
|
|
67
|
-
type:
|
|
88
|
+
type: MetadataEnums.dapp,
|
|
68
89
|
encodedData,
|
|
69
90
|
});
|
|
70
91
|
|
|
@@ -81,21 +102,21 @@ export const encodeTransferMetadata = (
|
|
|
81
102
|
);
|
|
82
103
|
|
|
83
104
|
const data = encodeMetadata({
|
|
84
|
-
type:
|
|
105
|
+
type: MetadataEnums.transfer,
|
|
85
106
|
encodedData,
|
|
86
107
|
});
|
|
87
108
|
|
|
88
109
|
return single ? encodeMultipleActions(data) : data;
|
|
89
110
|
};
|
|
90
111
|
|
|
91
|
-
export const
|
|
112
|
+
export const encodeRejectionMetadata = (id: string, single = true) => {
|
|
92
113
|
const encodedData = ethers.utils.defaultAbiCoder.encode(
|
|
93
|
-
actionMetadataTypes.
|
|
94
|
-
[
|
|
114
|
+
actionMetadataTypes.rejection,
|
|
115
|
+
[id]
|
|
95
116
|
);
|
|
96
117
|
|
|
97
118
|
const data = encodeMetadata({
|
|
98
|
-
type:
|
|
119
|
+
type: MetadataEnums.rejection,
|
|
99
120
|
encodedData,
|
|
100
121
|
});
|
|
101
122
|
|
|
@@ -118,7 +139,7 @@ export const encodeCrossTransferMetadata = (
|
|
|
118
139
|
);
|
|
119
140
|
|
|
120
141
|
const data = encodeMetadata({
|
|
121
|
-
type: "cross-transfer",
|
|
142
|
+
type: MetadataEnums["cross-transfer"],
|
|
122
143
|
encodedData,
|
|
123
144
|
});
|
|
124
145
|
|
|
@@ -135,7 +156,7 @@ export const encodeAuthMetadata = (
|
|
|
135
156
|
);
|
|
136
157
|
|
|
137
158
|
const data = encodeMetadata({
|
|
138
|
-
type:
|
|
159
|
+
type: MetadataEnums.auth,
|
|
139
160
|
encodedData,
|
|
140
161
|
});
|
|
141
162
|
|
|
@@ -144,7 +165,7 @@ export const encodeAuthMetadata = (
|
|
|
144
165
|
|
|
145
166
|
export const encodeDeployMetadata = (single = true) => {
|
|
146
167
|
const data = encodeMetadata({
|
|
147
|
-
type:
|
|
168
|
+
type: MetadataEnums.deploy,
|
|
148
169
|
encodedData: "0x",
|
|
149
170
|
});
|
|
150
171
|
|
|
@@ -161,7 +182,7 @@ export const encodeWCSignMetadata = (
|
|
|
161
182
|
);
|
|
162
183
|
|
|
163
184
|
const data = encodeMetadata({
|
|
164
|
-
type:
|
|
185
|
+
type: MetadataEnums.permit2,
|
|
165
186
|
encodedData,
|
|
166
187
|
});
|
|
167
188
|
|
|
@@ -178,7 +199,7 @@ export const encodeUpgradeMetadata = (
|
|
|
178
199
|
);
|
|
179
200
|
|
|
180
201
|
const data = encodeMetadata({
|
|
181
|
-
type:
|
|
202
|
+
type: MetadataEnums.upgrade,
|
|
182
203
|
encodedData,
|
|
183
204
|
});
|
|
184
205
|
|
|
@@ -202,7 +223,7 @@ export const encodeSwapMetadata = (
|
|
|
202
223
|
);
|
|
203
224
|
|
|
204
225
|
const data = encodeMetadata({
|
|
205
|
-
type:
|
|
226
|
+
type: MetadataEnums.swap,
|
|
206
227
|
encodedData,
|
|
207
228
|
});
|
|
208
229
|
|
|
@@ -218,10 +239,8 @@ export const encodeTopupMetadata = (
|
|
|
218
239
|
[params.amount, params.token, params.onBehalf]
|
|
219
240
|
);
|
|
220
241
|
|
|
221
|
-
console.log(params);
|
|
222
|
-
|
|
223
242
|
const data = encodeMetadata({
|
|
224
|
-
type: "gas-topup",
|
|
243
|
+
type: MetadataEnums["gas-topup"],
|
|
225
244
|
encodedData,
|
|
226
245
|
});
|
|
227
246
|
|
|
@@ -246,7 +265,58 @@ export const encodeBridgeMetadata = (
|
|
|
246
265
|
);
|
|
247
266
|
|
|
248
267
|
const data = encodeMetadata({
|
|
249
|
-
type:
|
|
268
|
+
type: MetadataEnums.bridge,
|
|
269
|
+
encodedData,
|
|
270
|
+
});
|
|
271
|
+
|
|
272
|
+
return single ? encodeMultipleActions(data) : data;
|
|
273
|
+
};
|
|
274
|
+
|
|
275
|
+
export const encodeChangeThresholdMetadata = (
|
|
276
|
+
threshold: string | number,
|
|
277
|
+
single = true
|
|
278
|
+
) => {
|
|
279
|
+
const encodedData = ethers.utils.defaultAbiCoder.encode(
|
|
280
|
+
actionMetadataTypes["change-threshold"],
|
|
281
|
+
[toBN(threshold).toNumber()]
|
|
282
|
+
);
|
|
283
|
+
|
|
284
|
+
const data = encodeMetadata({
|
|
285
|
+
type: MetadataEnums["change-threshold"],
|
|
286
|
+
encodedData,
|
|
287
|
+
});
|
|
288
|
+
|
|
289
|
+
return single ? encodeMultipleActions(data) : data;
|
|
290
|
+
};
|
|
291
|
+
|
|
292
|
+
export const encodeRemoveSignersMetadata = (
|
|
293
|
+
addresses: string[],
|
|
294
|
+
single = true
|
|
295
|
+
) => {
|
|
296
|
+
const encodedData = ethers.utils.defaultAbiCoder.encode(
|
|
297
|
+
actionMetadataTypes["remove-signers"],
|
|
298
|
+
[addresses]
|
|
299
|
+
);
|
|
300
|
+
|
|
301
|
+
const data = encodeMetadata({
|
|
302
|
+
type: MetadataEnums["remove-signers"],
|
|
303
|
+
encodedData,
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
return single ? encodeMultipleActions(data) : data;
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
export const encodeAddSignersMetadata = (
|
|
310
|
+
addresses: string[],
|
|
311
|
+
single = true
|
|
312
|
+
) => {
|
|
313
|
+
const encodedData = ethers.utils.defaultAbiCoder.encode(
|
|
314
|
+
actionMetadataTypes["add-signers"],
|
|
315
|
+
[addresses]
|
|
316
|
+
);
|
|
317
|
+
|
|
318
|
+
const data = encodeMetadata({
|
|
319
|
+
type: MetadataEnums["add-signers"],
|
|
250
320
|
encodedData,
|
|
251
321
|
});
|
|
252
322
|
|
|
@@ -325,9 +395,96 @@ const getMetadataFromData = (data: string) => {
|
|
|
325
395
|
return metadata;
|
|
326
396
|
};
|
|
327
397
|
|
|
398
|
+
|
|
399
|
+
const typesPayload: IPayload = {
|
|
400
|
+
transfer: (data, type) => ({
|
|
401
|
+
type,
|
|
402
|
+
token: data.token,
|
|
403
|
+
amount: toBN(data.amount).toFixed(),
|
|
404
|
+
receiver: data.receiver,
|
|
405
|
+
}),
|
|
406
|
+
bridge: (data, type) => ({
|
|
407
|
+
type,
|
|
408
|
+
amount: toBN(data.amount).toFixed(),
|
|
409
|
+
receiver: data.receiver,
|
|
410
|
+
toToken: data.toToken,
|
|
411
|
+
fromToken: data.fromToken,
|
|
412
|
+
toChainId: data.toChainId ? data.toChainId.toString() : null,
|
|
413
|
+
bridgeFee: toBN(data.bridgeFee).toFixed(),
|
|
414
|
+
}),
|
|
415
|
+
swap: (data, type) => ({
|
|
416
|
+
type,
|
|
417
|
+
buyAmount: toBN(data.buyAmount).toFixed(),
|
|
418
|
+
sellAmount: toBN(data.sellAmount).toFixed(),
|
|
419
|
+
buyToken: data.buyToken,
|
|
420
|
+
sellToken: data.sellToken,
|
|
421
|
+
receiver: data.receiver,
|
|
422
|
+
protocol: utils.parseBytes32String(data.protocol || ""),
|
|
423
|
+
}),
|
|
424
|
+
upgrade: (data, type) => ({
|
|
425
|
+
type,
|
|
426
|
+
version: utils.parseBytes32String(data.version || ""),
|
|
427
|
+
walletImpl: data.walletImpl,
|
|
428
|
+
}),
|
|
429
|
+
"gas-topup": (data, type) => ({
|
|
430
|
+
type,
|
|
431
|
+
amount: toBN(data.amount).toFixed(),
|
|
432
|
+
token: data.token,
|
|
433
|
+
onBehalf: data.onBehalf,
|
|
434
|
+
}),
|
|
435
|
+
"dapp": (data, type) => ({
|
|
436
|
+
type,
|
|
437
|
+
name: data.name,
|
|
438
|
+
url: data.url,
|
|
439
|
+
}),
|
|
440
|
+
"deploy": (data, type) => ({
|
|
441
|
+
type,
|
|
442
|
+
}),
|
|
443
|
+
"permit2": (data, type) => ({
|
|
444
|
+
type,
|
|
445
|
+
token: data.token,
|
|
446
|
+
spender: data.spender,
|
|
447
|
+
amount: toBN(data.amount).toFixed(),
|
|
448
|
+
expiration: data.expiration,
|
|
449
|
+
}),
|
|
450
|
+
"cross-transfer": (data, type) => ({
|
|
451
|
+
type,
|
|
452
|
+
fromToken: data.fromToken,
|
|
453
|
+
toToken: data.toToken,
|
|
454
|
+
toChainId: data.toChainId ? data.toChainId.toString() : null,
|
|
455
|
+
amount: toBN(data.amount).toFixed(),
|
|
456
|
+
receiver: data.receiver,
|
|
457
|
+
}),
|
|
458
|
+
"auth": (data) => ({
|
|
459
|
+
type: data.remove ? "remove-authority" : "add-authority",
|
|
460
|
+
address: data.address,
|
|
461
|
+
chainId: data.chainId ? data.chainId.toString() : null,
|
|
462
|
+
remove: data.remove,
|
|
463
|
+
}),
|
|
464
|
+
"instadapp-pro": (data, type) => ({
|
|
465
|
+
type,
|
|
466
|
+
castDetails: data.castDetails,
|
|
467
|
+
}),
|
|
468
|
+
"rejection": (data, type) => ({
|
|
469
|
+
type,
|
|
470
|
+
id: data.id,
|
|
471
|
+
}),
|
|
472
|
+
"add-signers": (data, type) => ({
|
|
473
|
+
type,
|
|
474
|
+
addresses: data.signers,
|
|
475
|
+
}),
|
|
476
|
+
"remove-signers": (data, type) => ({
|
|
477
|
+
type,
|
|
478
|
+
addresses: data.signers,
|
|
479
|
+
}),
|
|
480
|
+
"change-threshold": (data, type) => ({
|
|
481
|
+
type,
|
|
482
|
+
count: data.count,
|
|
483
|
+
}),
|
|
484
|
+
};
|
|
485
|
+
|
|
328
486
|
const parseMetadata = (metadata: string) => {
|
|
329
487
|
const metadataArr = [];
|
|
330
|
-
let payload = {};
|
|
331
488
|
|
|
332
489
|
const [decodedMultiMetadata = []] =
|
|
333
490
|
(ethers.utils.defaultAbiCoder.decode(
|
|
@@ -350,121 +507,20 @@ const parseMetadata = (metadata: string) => {
|
|
|
350
507
|
decodedMetadata.data
|
|
351
508
|
);
|
|
352
509
|
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
amount: toBN(decodedData.amount).toFixed(),
|
|
359
|
-
receiver: decodedData.receiver,
|
|
360
|
-
};
|
|
361
|
-
break;
|
|
362
|
-
case "bridge":
|
|
363
|
-
payload = {
|
|
364
|
-
type,
|
|
365
|
-
amount: toBN(decodedData.amount).toFixed(),
|
|
366
|
-
receiver: decodedData.receiver,
|
|
367
|
-
toToken: decodedData.toToken,
|
|
368
|
-
fromToken: decodedData.fromToken,
|
|
369
|
-
toChainId: decodedData.toChainId
|
|
370
|
-
? decodedData.toChainId.toString()
|
|
371
|
-
: null,
|
|
372
|
-
bridgeFee: toBN(decodedData.bridgeFee).toFixed(),
|
|
373
|
-
};
|
|
374
|
-
break;
|
|
375
|
-
case "swap":
|
|
376
|
-
payload = {
|
|
377
|
-
type,
|
|
378
|
-
buyAmount: toBN(decodedData.buyAmount).toFixed(),
|
|
379
|
-
sellAmount: toBN(decodedData.sellAmount).toFixed(),
|
|
380
|
-
buyToken: decodedData.buyToken,
|
|
381
|
-
sellToken: decodedData.sellToken,
|
|
382
|
-
receiver: decodedData.receiver,
|
|
383
|
-
protocol: utils.parseBytes32String(decodedData?.protocol || ""),
|
|
384
|
-
};
|
|
385
|
-
break;
|
|
386
|
-
case "upgrade":
|
|
387
|
-
payload = {
|
|
388
|
-
type,
|
|
389
|
-
version: utils.parseBytes32String(decodedData?.version || ""),
|
|
390
|
-
walletImpl: decodedData?.walletImpl,
|
|
391
|
-
};
|
|
392
|
-
break;
|
|
393
|
-
case "gas-topup":
|
|
394
|
-
payload = {
|
|
395
|
-
type,
|
|
396
|
-
amount: toBN(decodedData.amount).toFixed(),
|
|
397
|
-
token: decodedData.token,
|
|
398
|
-
onBehalf: decodedData.onBehalf,
|
|
399
|
-
};
|
|
400
|
-
break;
|
|
401
|
-
case "dapp":
|
|
402
|
-
payload = {
|
|
403
|
-
type,
|
|
404
|
-
name: decodedData?.name,
|
|
405
|
-
url: decodedData?.url,
|
|
406
|
-
};
|
|
407
|
-
break;
|
|
408
|
-
case "deploy":
|
|
409
|
-
payload = {
|
|
410
|
-
type,
|
|
411
|
-
};
|
|
412
|
-
break;
|
|
413
|
-
|
|
414
|
-
case "permit2":
|
|
415
|
-
payload = {
|
|
416
|
-
type,
|
|
417
|
-
token: decodedData.token,
|
|
418
|
-
spender: decodedData.spender,
|
|
419
|
-
amount: toBN(decodedData.amount).toFixed(),
|
|
420
|
-
expiration: decodedData.expiration,
|
|
421
|
-
};
|
|
422
|
-
break;
|
|
423
|
-
|
|
424
|
-
case "cross-transfer":
|
|
425
|
-
payload = {
|
|
426
|
-
type,
|
|
427
|
-
fromToken: decodedData.fromToken,
|
|
428
|
-
toToken: decodedData.toToken,
|
|
429
|
-
toChainId: decodedData.toChainId
|
|
430
|
-
? decodedData.toChainId.toString()
|
|
431
|
-
: null,
|
|
432
|
-
amount: toBN(decodedData.amount).toFixed(),
|
|
433
|
-
receiver: decodedData.receiver,
|
|
434
|
-
};
|
|
435
|
-
|
|
436
|
-
break;
|
|
437
|
-
case "auth":
|
|
438
|
-
payload = {
|
|
439
|
-
type: decodedData.remove ? "remove-authority" : "add-authority",
|
|
440
|
-
address: decodedData.address,
|
|
441
|
-
chainId: decodedData.chainId ? decodedData.chainId.toString() : null,
|
|
442
|
-
remove: decodedData.remove,
|
|
443
|
-
};
|
|
444
|
-
|
|
445
|
-
break;
|
|
446
|
-
case "instadapp-pro":
|
|
447
|
-
payload = {
|
|
448
|
-
type,
|
|
449
|
-
castDetails: decodedData.castDetails,
|
|
450
|
-
};
|
|
451
|
-
|
|
452
|
-
break;
|
|
453
|
-
|
|
454
|
-
case "reject":
|
|
455
|
-
payload = {
|
|
456
|
-
type,
|
|
457
|
-
reason: decodedData.reason,
|
|
458
|
-
};
|
|
459
|
-
break;
|
|
510
|
+
const payloadFunc = typesPayload[type]
|
|
511
|
+
|
|
512
|
+
if (payloadFunc) {
|
|
513
|
+
const payload = payloadFunc(decodedData, type)
|
|
514
|
+
metadataArr.push(payload);
|
|
460
515
|
}
|
|
461
516
|
|
|
462
|
-
metadataArr.push(payload);
|
|
463
517
|
}
|
|
464
518
|
|
|
465
519
|
return metadataArr;
|
|
466
520
|
};
|
|
467
521
|
|
|
522
|
+
|
|
523
|
+
|
|
468
524
|
/**
|
|
469
525
|
* Replaces hyphens with spaces and capitalizes the first letter of each word in a sentence.
|
|
470
526
|
* @param {string} txType - The input sentence to modify
|
package/utils/utils.d.ts
CHANGED
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
1
|
+
declare global {
|
|
2
|
+
type ChainId =
|
|
3
|
+
| 1
|
|
4
|
+
| 137
|
|
5
|
+
| 42161
|
|
6
|
+
| 10
|
|
7
|
+
| 56
|
|
8
|
+
| 43114
|
|
9
|
+
| 100
|
|
10
|
+
| 1101
|
|
11
|
+
| 250
|
|
12
|
+
| 634
|
|
13
|
+
| 1313161554
|
|
14
|
+
| 63400;
|
|
15
|
+
|
|
16
|
+
type ISlackMessageType = "danger" | "error" | "success" | "banner";
|
|
17
|
+
|
|
18
|
+
type MetadataTypes = keyof typeof MetadataEnums;
|
|
19
|
+
|
|
20
|
+
type PayloadFunction = (data: any, type: MetadataTypes) => any;
|
|
21
|
+
|
|
22
|
+
type IPayload = Record<MetadataTypes, PayloadFunction>;
|
|
23
|
+
|
|
24
|
+
interface Network {
|
|
25
|
+
name: string;
|
|
26
|
+
debankName?: string;
|
|
27
|
+
ankrName?: string;
|
|
28
|
+
zerionName?: string;
|
|
29
|
+
chainId: ChainId;
|
|
30
|
+
color: string;
|
|
31
|
+
isAvocado?: boolean;
|
|
32
|
+
serverRpcUrl: string | undefined;
|
|
33
|
+
balanceResolverAddress?: string;
|
|
34
|
+
usdcAddress: string;
|
|
35
|
+
explorerUrl: string;
|
|
36
|
+
params: {
|
|
37
|
+
chainName?: string;
|
|
38
|
+
iconUrls?: string[];
|
|
39
|
+
rpcUrls: string[];
|
|
40
|
+
nativeCurrency?: {
|
|
41
|
+
name: string;
|
|
42
|
+
symbol: string;
|
|
43
|
+
decimals: number;
|
|
44
|
+
};
|
|
37
45
|
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
type SignMetadataProps = {
|
|
49
|
+
token: string;
|
|
50
|
+
spender: string;
|
|
51
|
+
amount: string;
|
|
52
|
+
expiration: string;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
type DappMetadataProps = {
|
|
56
|
+
name: string;
|
|
57
|
+
url: string;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
type SendMetadataProps = {
|
|
61
|
+
token: string;
|
|
62
|
+
amount: string;
|
|
63
|
+
receiver: string;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
type CrossSendMetadataProps = {
|
|
67
|
+
fromToken: string;
|
|
68
|
+
toToken: string;
|
|
69
|
+
toChainId: string;
|
|
70
|
+
amount: string;
|
|
71
|
+
receiver: string;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
type AuthMetadataProps = {
|
|
75
|
+
address: string;
|
|
76
|
+
chainId: string;
|
|
77
|
+
remove: boolean;
|
|
38
78
|
};
|
|
39
|
-
}
|
|
40
79
|
|
|
41
|
-
type
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
toChainId: string;
|
|
90
|
-
bridgeFee: string;
|
|
91
|
-
nativeToken: string;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
type SwapMetadataProps = {
|
|
95
|
-
sellToken: string;
|
|
96
|
-
buyToken: string;
|
|
97
|
-
sellAmount: string;
|
|
98
|
-
buyAmount: string;
|
|
99
|
-
receiver: string;
|
|
100
|
-
protocol?: string;
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
type MetadataProps = {
|
|
104
|
-
type:
|
|
105
|
-
| "transfer"
|
|
106
|
-
| "bridge"
|
|
107
|
-
| "swap"
|
|
108
|
-
| "multi"
|
|
109
|
-
| "gas-topup"
|
|
110
|
-
| "upgrade"
|
|
111
|
-
| "dapp"
|
|
112
|
-
| "deploy"
|
|
113
|
-
| "permit2"
|
|
114
|
-
| "cross-transfer"
|
|
115
|
-
| "auth"
|
|
116
|
-
| "reject";
|
|
117
|
-
encodedData: string;
|
|
118
|
-
version?: string;
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
interface ITokenPrice {
|
|
122
|
-
address: string;
|
|
123
|
-
chain_id: string;
|
|
124
|
-
name: string;
|
|
125
|
-
symbol: string;
|
|
126
|
-
decimals: number;
|
|
127
|
-
logo_url: string;
|
|
128
|
-
price: string;
|
|
129
|
-
coingecko_id: string;
|
|
130
|
-
sparkline_price_7d: number[];
|
|
80
|
+
type UpgradeMetadataProps = {
|
|
81
|
+
version: string;
|
|
82
|
+
walletImpl: string;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
type TopupMetadataProps = {
|
|
86
|
+
amount: string;
|
|
87
|
+
token: string;
|
|
88
|
+
onBehalf: string;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
type BridgeMetadataProps = {
|
|
92
|
+
amount: string;
|
|
93
|
+
receiver: string;
|
|
94
|
+
fromToken: string;
|
|
95
|
+
toToken: string;
|
|
96
|
+
toChainId: string;
|
|
97
|
+
bridgeFee: string;
|
|
98
|
+
nativeToken: string;
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
type SwapMetadataProps = {
|
|
102
|
+
sellToken: string;
|
|
103
|
+
buyToken: string;
|
|
104
|
+
sellAmount: string;
|
|
105
|
+
buyAmount: string;
|
|
106
|
+
receiver: string;
|
|
107
|
+
protocol?: string;
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
type MetadataProps = {
|
|
111
|
+
type: MetadataTypes,
|
|
112
|
+
encodedData: string;
|
|
113
|
+
version?: string;
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
interface ITokenPrice {
|
|
117
|
+
address: string;
|
|
118
|
+
chain_id: string;
|
|
119
|
+
name: string;
|
|
120
|
+
symbol: string;
|
|
121
|
+
decimals: number;
|
|
122
|
+
logo_url: string;
|
|
123
|
+
price: string;
|
|
124
|
+
coingecko_id: string;
|
|
125
|
+
sparkline_price_7d: number[];
|
|
126
|
+
}
|
|
127
|
+
|
|
131
128
|
}
|
|
129
|
+
|
|
130
|
+
export { }
|
|
131
|
+
|