@avail-project/widgets 2.0.0 → 2.0.2

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 (33) hide show
  1. package/dist/common/hooks/useNexusError.d.ts +1 -1
  2. package/dist/common/utils/token-pricing.d.ts +1 -1
  3. package/dist/common/utils/token-pricing.d.ts.map +1 -1
  4. package/dist/common/utils/token-pricing.js +4 -1
  5. package/dist/nexus/NexusProvider.d.ts +4 -2
  6. package/dist/nexus/NexusProvider.d.ts.map +1 -1
  7. package/dist/nexus/NexusProvider.js +216 -39
  8. package/dist/nexus-widget/components/deposit-idle-form.d.ts +2 -1
  9. package/dist/nexus-widget/components/deposit-idle-form.d.ts.map +1 -1
  10. package/dist/nexus-widget/components/deposit-idle-form.js +26 -10
  11. package/dist/nexus-widget/components/nexus-widget-progress-screen.d.ts.map +1 -1
  12. package/dist/nexus-widget/components/nexus-widget-progress-screen.js +21 -5
  13. package/dist/nexus-widget/components/pay-with-sources.d.ts.map +1 -1
  14. package/dist/nexus-widget/components/pay-with-sources.js +43 -54
  15. package/dist/nexus-widget/components/send-idle-form.d.ts +2 -1
  16. package/dist/nexus-widget/components/send-idle-form.d.ts.map +1 -1
  17. package/dist/nexus-widget/components/send-idle-form.js +26 -10
  18. package/dist/nexus-widget/components/swap-asset-selector.d.ts +1 -1
  19. package/dist/nexus-widget/components/swap-asset-selector.d.ts.map +1 -1
  20. package/dist/nexus-widget/components/swap-asset-selector.js +198 -140
  21. package/dist/nexus-widget/components/swap-idle-form.d.ts +2 -1
  22. package/dist/nexus-widget/components/swap-idle-form.d.ts.map +1 -1
  23. package/dist/nexus-widget/components/swap-idle-form.js +3 -3
  24. package/dist/nexus-widget/components/swap-intent-preview.d.ts +5 -1
  25. package/dist/nexus-widget/components/swap-intent-preview.d.ts.map +1 -1
  26. package/dist/nexus-widget/components/swap-intent-preview.js +50 -35
  27. package/dist/nexus-widget/nexus-widget.d.ts.map +1 -1
  28. package/dist/nexus-widget/nexus-widget.js +1311 -617
  29. package/dist/nexus-widget/types.d.ts +1 -1
  30. package/dist/nexus-widget/types.d.ts.map +1 -1
  31. package/dist/nexus-widget/utils/deposit-source-selection.d.ts.map +1 -1
  32. package/dist/nexus-widget/utils/deposit-source-selection.js +68 -4
  33. package/package.json +5 -5
@@ -8,7 +8,7 @@ export type DepositExecuteConfig = {
8
8
  to: Address;
9
9
  value?: bigint;
10
10
  data?: `0x${string}`;
11
- gas?: bigint;
11
+ gas: bigint;
12
12
  tokenApproval?: {
13
13
  toTokenAddress: Address;
14
14
  amount: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../.build-src/nexus-widget/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../.build-src/nexus-widget/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deposit-source-selection.d.ts","sourceRoot":"","sources":["../../../.build-src/nexus-widget/utils/deposit-source-selection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,GAAG,EAAU,MAAM,MAAM,CAAC;AAExC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9E,KAAK,wBAAwB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AA2CF,eAAO,MAAM,kBAAkB,GAC7B,cAAc,MAAM,EACpB,SAAS,MAAM,KACd,MAAsC,CAAC;AAE1C,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,KACf;IAAE,YAAY,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAS3C,CAAC;AAiHF,eAAO,MAAM,yBAAyB,GAAI,QAAQ;IAChD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;CAC5B,KAAG,MAAM,EA8BT,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,QAAQ;IACrD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC9B,KAAG,MAAM,EAoDT,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ;IAC7C,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,KAAG,KAAK,CAAC;IAAE,YAAY,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAGsB,CAAC;AAEvE,MAAM,WAAW,8BAA8B;IAC7C,WAAW,EAAE,KAAK,CAAC;QAAE,YAAY,EAAE,GAAG,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,6BAA6B,GAAI,QAAQ;IACpD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACtC,KAAG,8BA6CH,CAAC"}
1
+ {"version":3,"file":"deposit-source-selection.d.ts","sourceRoot":"","sources":["../../../.build-src/nexus-widget/utils/deposit-source-selection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,GAAG,EAAU,MAAM,MAAM,CAAC;AAExC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9E,KAAK,wBAAwB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAwHF,eAAO,MAAM,kBAAkB,GAC7B,cAAc,MAAM,EACpB,SAAS,MAAM,KACd,MAAsC,CAAC;AAE1C,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,KACf;IAAE,YAAY,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAS3C,CAAC;AAiHF,eAAO,MAAM,yBAAyB,GAAI,QAAQ;IAChD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;CAC5B,KAAG,MAAM,EA8BT,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,QAAQ;IACrD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC9B,KAAG,MAAM,EAoDT,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ;IAC7C,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,KAAG,KAAK,CAAC;IAAE,YAAY,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAGsB,CAAC;AAEvE,MAAM,WAAW,8BAA8B;IAC7C,WAAW,EAAE,KAAK,CAAC;QAAE,YAAY,EAAE,GAAG,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,6BAA6B,GAAI,QAAQ;IACpD,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,wBAAwB,CAAC;IACtC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACtC,KAAG,8BA6CH,CAAC"}
@@ -2,17 +2,81 @@
2
2
  import { padHex } from "viem";
3
3
  import { CHAIN_METADATA } from "../../common";
4
4
  const STABLECOIN_SYMBOLS = ["USDC", "USDT", "DAI", "TUSD", "USDP"];
5
+ const SDK_EXACT_OUT_STABLE_SYMBOLS = new Set([
6
+ "USDC",
7
+ "USDT",
8
+ "DAI",
9
+ "BUSD",
10
+ "TUSD",
11
+ "FRAX",
12
+ "LUSD",
13
+ "USDD",
14
+ "USDP",
15
+ "GUSD",
16
+ ]);
5
17
  const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
6
18
  const EVM_NATIVE_PLACEHOLDER = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
19
+ const ETHEREUM_MAINNET_CHAIN_ID = 1;
7
20
  const MAX_PRIORITY_RANK = Number.MAX_SAFE_INTEGER;
8
- const sortSourcesByPriority = (swapBalance, _destination) => swapBalance
21
+ const normalizeSdkStableSymbol = (symbol) => (symbol ?? "")
22
+ .trim()
23
+ .toUpperCase()
24
+ .replaceAll("\u20ae", "T")
25
+ .replaceAll(/[^A-Z0-9]/g, "");
26
+ const isSdkExactOutStablecoin = (symbol) => SDK_EXACT_OUT_STABLE_SYMBOLS.has(normalizeSdkStableSymbol(symbol));
27
+ const isNativeAddress = (address) => !address ||
28
+ address.toLowerCase() === ZERO_ADDRESS ||
29
+ address.toLowerCase() === EVM_NATIVE_PLACEHOLDER;
30
+ const isSameSdkToken = (left, right) => (isNativeAddress(left) && isNativeAddress(right)) ||
31
+ normalizeAddress(left) === normalizeAddress(right);
32
+ const getSdkExactOutPriority = (source, destination) => {
33
+ const isSameChain = source.chainID === destination.chainId;
34
+ const isSameToken = isSameSdkToken(source.tokenAddress, destination.tokenAddress);
35
+ const isStable = isSdkExactOutStablecoin(source.symbol);
36
+ const isGas = isNativeAddress(source.tokenAddress);
37
+ const isEthereum = source.chainID === ETHEREUM_MAINNET_CHAIN_ID;
38
+ if (isSameChain) {
39
+ if (isSameToken)
40
+ return 1;
41
+ if (isStable)
42
+ return 2;
43
+ if (isGas)
44
+ return 3;
45
+ return 4;
46
+ }
47
+ if (isEthereum) {
48
+ if (isSameToken)
49
+ return 8;
50
+ if (isStable)
51
+ return 9;
52
+ if (isGas)
53
+ return 10;
54
+ return 11;
55
+ }
56
+ if (isSameToken)
57
+ return 5;
58
+ if (isStable)
59
+ return 6;
60
+ return 7;
61
+ };
62
+ const sortSourcesByPriority = (swapBalance, destination) => swapBalance
9
63
  .flatMap((asset) => asset.breakdown ?? [])
10
- .sort((a, b) => parseNonNegativeNumber(b.balanceInFiat) -
11
- parseNonNegativeNumber(a.balanceInFiat))
12
64
  .map((breakdown) => ({
13
65
  chainID: breakdown.chain.id,
66
+ balanceInFiat: parseNonNegativeNumber(breakdown.balanceInFiat),
67
+ symbol: breakdown.symbol,
14
68
  tokenAddress: breakdown.contractAddress,
15
- }));
69
+ }))
70
+ .sort((a, b) => {
71
+ const priorityDiff = getSdkExactOutPriority(a, destination) -
72
+ getSdkExactOutPriority(b, destination);
73
+ if (priorityDiff !== 0)
74
+ return priorityDiff;
75
+ if (a.balanceInFiat !== b.balanceInFiat) {
76
+ return b.balanceInFiat - a.balanceInFiat;
77
+ }
78
+ return `${a.symbol ?? ""}-${a.chainID}-${a.tokenAddress}`.localeCompare(`${b.symbol ?? ""}-${b.chainID}-${b.tokenAddress}`);
79
+ });
16
80
  const parseNonNegativeNumber = (value) => {
17
81
  const parsed = Number.parseFloat(String(value));
18
82
  if (!Number.isFinite(parsed) || parsed < 0)
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@avail-project/widgets",
3
- "version": "2.0.0",
3
+ "version": "2.0.2",
4
4
  "description": "Compiled Avail widgets for React applications.",
5
- "author": "decocereus <amartya@availproject.org>",
5
+ "author": "shrinathprabhu <shrinathprabhu.123@gmail.com>",
6
6
  "contributors": [
7
- "decocereus <amartya@availproject.org>",
8
- "shrinathprabhu <shrinathprabhu.123@gmail.com>"
7
+ "shrinathprabhu <shrinathprabhu.123@gmail.com>",
8
+ "decocereus <amartya@availproject.org>"
9
9
  ],
10
10
  "repository": {
11
11
  "type": "git",
@@ -38,7 +38,7 @@
38
38
  "registry": "https://registry.npmjs.org/"
39
39
  },
40
40
  "dependencies": {
41
- "@avail-project/nexus-core": "2.0.0",
41
+ "@avail-project/nexus-core": "2.1.0",
42
42
  "@radix-ui/react-dialog": "^1.1.15",
43
43
  "@radix-ui/react-slot": "^1.2.4",
44
44
  "class-variance-authority": "^0.7.1",