@instadapp/avocado-base 0.0.0-dev.2037715 → 0.0.0-dev.21292ef

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.
Files changed (52) hide show
  1. package/.github/workflows/npm-publish-dev.yml +2 -5
  2. package/.vscode/settings.json +68 -0
  3. package/abi/multisigAgnosticForwarder.json +938 -0
  4. package/abi/multisigForwarder.json +697 -0
  5. package/app.vue +7 -0
  6. package/assets/images/icons/change-threshold.svg +4 -0
  7. package/assets/images/icons/check.svg +3 -0
  8. package/assets/images/icons/copy.svg +9 -2
  9. package/assets/images/icons/cross-transfer.svg +7 -0
  10. package/assets/images/icons/dapp.svg +4 -0
  11. package/assets/images/icons/deploy.svg +12 -0
  12. package/assets/images/icons/gas.svg +12 -5
  13. package/assets/images/icons/hammer.svg +5 -0
  14. package/assets/images/icons/info-2.svg +12 -0
  15. package/assets/images/icons/instadapp-pro.svg +4 -0
  16. package/assets/images/icons/multi-send.svg +7 -0
  17. package/assets/images/icons/permit-sign.svg +11 -0
  18. package/assets/images/icons/plus-circle.svg +6 -0
  19. package/assets/images/icons/refresh.svg +4 -4
  20. package/assets/images/icons/reject-proposal.svg +6 -0
  21. package/assets/images/icons/stars.svg +4 -0
  22. package/assets/images/icons/transfer.svg +5 -0
  23. package/assets/images/icons/trash-2.svg +8 -0
  24. package/assets/images/icons/upgrade.svg +4 -0
  25. package/components/ActionLogo.vue +42 -0
  26. package/components/ActionMetadata.vue +57 -19
  27. package/components/Address.vue +74 -0
  28. package/components/AuthorityAvatar.vue +37 -0
  29. package/components/ChainLogo.vue +14 -563
  30. package/components/CopyClipboard.vue +42 -0
  31. package/components/metadata/Bridge.vue +30 -8
  32. package/components/metadata/CrossTransfer.vue +39 -28
  33. package/components/metadata/GasTopup.vue +10 -2
  34. package/components/metadata/Permit2.vue +6 -1
  35. package/components/metadata/Signers.vue +19 -0
  36. package/components/metadata/Swap.vue +45 -45
  37. package/components/metadata/Transfer.vue +28 -23
  38. package/contracts/MultisigAgnosticForwarder.ts +1423 -0
  39. package/contracts/MultisigForwarder.ts +859 -0
  40. package/contracts/factories/MultisigAgnosticForwarder__factory.ts +2135 -0
  41. package/contracts/factories/MultisigForwarder__factory.ts +721 -0
  42. package/contracts/factories/index.ts +2 -0
  43. package/contracts/index.ts +4 -0
  44. package/eslint.config.mjs +20 -0
  45. package/nuxt.config.ts +7 -2
  46. package/package.json +20 -13
  47. package/utils/formatter.ts +2 -2
  48. package/utils/helper.ts +8 -0
  49. package/utils/metadata.ts +444 -194
  50. package/utils/network.ts +514 -184
  51. package/utils/services.ts +8 -1
  52. package/utils/utils.d.ts +145 -128
@@ -6,9 +6,13 @@ export type { BalanceResolver } from "./BalanceResolver";
6
6
  export type { Erc20 } from "./Erc20";
7
7
  export type { Forwarder } from "./Forwarder";
8
8
  export type { GaslessWallet } from "./GaslessWallet";
9
+ export type { MultisigAgnosticForwarder } from "./MultisigAgnosticForwarder";
10
+ export type { MultisigForwarder } from "./MultisigForwarder";
9
11
  export * as factories from "./factories";
10
12
  export { AvoFactoryProxy__factory } from "./factories/AvoFactoryProxy__factory";
11
13
  export { BalanceResolver__factory } from "./factories/BalanceResolver__factory";
12
14
  export { Erc20__factory } from "./factories/Erc20__factory";
13
15
  export { Forwarder__factory } from "./factories/Forwarder__factory";
14
16
  export { GaslessWallet__factory } from "./factories/GaslessWallet__factory";
17
+ export { MultisigAgnosticForwarder__factory } from "./factories/MultisigAgnosticForwarder__factory";
18
+ export { MultisigForwarder__factory } from "./factories/MultisigForwarder__factory";
@@ -0,0 +1,20 @@
1
+ // @ts-check
2
+ import antfu from '@antfu/eslint-config'
3
+ import withNuxt from './.nuxt/eslint.config.mjs'
4
+
5
+ export default withNuxt(
6
+ antfu({
7
+ yaml: false,
8
+ rules: {
9
+ 'style/max-statements-per-line': 'off',
10
+ 'max-statements-per-line': 'off',
11
+ '@stylistic/max-statements-per-line': 'off',
12
+ 'vue/return-in-computed-property': 'off',
13
+ 'no-console': 'off',
14
+ 'ts/ban-ts-comment': 'off',
15
+ 'vue/prop-name-casing': 'off',
16
+ 'node/prefer-global/process': 'off',
17
+ 'eqeqeq': 'off',
18
+ },
19
+ }),
20
+ )
package/nuxt.config.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  import ViteComponents from "unplugin-vue-components/vite";
3
3
 
4
4
  export default defineNuxtConfig({
5
- modules: ["@nuxtjs/tailwindcss", "nuxt-svgo", "@vueuse/nuxt"],
5
+ modules: ["@nuxtjs/tailwindcss", "nuxt-svgo", "@vueuse/nuxt", "@nuxt/eslint"],
6
6
  svgo: {
7
7
  defaultImport: "component",
8
8
  autoImportPath: "./assets/images/icons",
@@ -17,4 +17,9 @@ export default defineNuxtConfig({
17
17
  }),
18
18
  ],
19
19
  },
20
- });
20
+ eslint: {
21
+ config: {
22
+ standalone: false,
23
+ },
24
+ },
25
+ });
package/package.json CHANGED
@@ -1,30 +1,37 @@
1
1
  {
2
2
  "name": "@instadapp/avocado-base",
3
- "version": "0.0.0-dev.2037715",
4
3
  "type": "module",
4
+ "version": "0.0.0-dev.21292ef",
5
5
  "main": "./nuxt.config.ts",
6
6
  "types": "global.d.ts",
7
+ "engines": {
8
+ "node": ">=v18.18.0"
9
+ },
7
10
  "scripts": {
8
11
  "build": "nuxt build",
9
12
  "dev": "nuxt dev",
10
13
  "generate": "nuxt generate",
11
14
  "preview": "nuxt preview",
12
- "generate:contracts": "rimraf contracts && typechain --target=ethers-v5 'abi/*.json' --out-dir 'contracts'"
15
+ "generate:contracts": "rimraf contracts && typechain --target=ethers-v5 'abi/*.json' --out-dir 'contracts'",
16
+ "typecheck": "nuxi typecheck"
17
+ },
18
+ "dependencies": {
19
+ "@antfu/eslint-config": "^2.21.1",
20
+ "@vueuse/nuxt": "^10.2.0",
21
+ "bignumber.js": "^9.1.1",
22
+ "ethers": "^5.7.2",
23
+ "viem": "^2.10.5",
24
+ "xxhashjs": "^0.2.2"
13
25
  },
14
26
  "devDependencies": {
15
- "@instadapp/avocado": "^0.1.10",
16
- "@instadapp/avocado-dev": "npm:@instadapp/avocado@dev",
17
- "@nuxtjs/tailwindcss": "^6.6.5",
27
+ "@nuxt/eslint": "^0.3.13",
28
+ "@nuxtjs/tailwindcss": "^6.11.3",
18
29
  "@typechain/ethers-v5": "^10.2.0",
19
- "nuxt": "^3.6.1",
20
- "nuxt-svgo": "^3.1.0",
30
+ "nuxt": "3.10.1",
31
+ "nuxt-svgo": "^4.0.0",
21
32
  "rimraf": "^3.0.2",
22
33
  "typechain": "^8.1.1",
23
- "unplugin-vue-components": "^0.25.1"
24
- },
25
- "dependencies": {
26
- "@vueuse/nuxt": "^10.2.0",
27
- "bignumber.js": "^9.1.1",
28
- "ethers": "^5.7.2"
34
+ "unplugin-vue-components": "^0.25.1",
35
+ "vue-tippy": "^6.0.0"
29
36
  }
30
37
  }
@@ -19,7 +19,7 @@ export function formatPercent(
19
19
  return formatter.format(valueAsNumber);
20
20
  }
21
21
 
22
- export function shortenHash(hash: string, length: number = 4) {
22
+ export function shortenHash(hash: string | `0x${string}`, length: number = 4) {
23
23
  if (!hash) return;
24
24
  if (hash.length < 12) return hash;
25
25
  const beginningChars = hash.startsWith("0x") ? length + 2 : length;
@@ -72,7 +72,7 @@ export function formatDecimal(value: string | number, fractionDigits?: number) {
72
72
  let decimals;
73
73
 
74
74
  if (num.lt(1)) {
75
- decimals = 8;
75
+ decimals = 4;
76
76
  } else if (num.lt(10)) {
77
77
  decimals = 6;
78
78
  } else if (num.lt(100)) {
package/utils/helper.ts CHANGED
@@ -52,3 +52,11 @@ 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
+ }
62
+