@metamask/bridge-status-controller 38.0.0 → 38.1.0

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 (54) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/dist/bridge-status-controller.cjs +6 -1
  3. package/dist/bridge-status-controller.cjs.map +1 -1
  4. package/dist/bridge-status-controller.d.cts.map +1 -1
  5. package/dist/bridge-status-controller.d.mts.map +1 -1
  6. package/dist/bridge-status-controller.mjs +7 -2
  7. package/dist/bridge-status-controller.mjs.map +1 -1
  8. package/dist/types.cjs.map +1 -1
  9. package/dist/types.d.cts +2 -1
  10. package/dist/types.d.cts.map +1 -1
  11. package/dist/types.d.mts +2 -1
  12. package/dist/types.d.mts.map +1 -1
  13. package/dist/types.mjs.map +1 -1
  14. package/dist/utils/gas.cjs +31 -1
  15. package/dist/utils/gas.cjs.map +1 -1
  16. package/dist/utils/gas.d.cts +13 -3
  17. package/dist/utils/gas.d.cts.map +1 -1
  18. package/dist/utils/gas.d.mts +13 -3
  19. package/dist/utils/gas.d.mts.map +1 -1
  20. package/dist/utils/gas.mjs +29 -0
  21. package/dist/utils/gas.mjs.map +1 -1
  22. package/dist/utils/metrics.cjs +37 -8
  23. package/dist/utils/metrics.cjs.map +1 -1
  24. package/dist/utils/metrics.d.cts +13 -5
  25. package/dist/utils/metrics.d.cts.map +1 -1
  26. package/dist/utils/metrics.d.mts +13 -5
  27. package/dist/utils/metrics.d.mts.map +1 -1
  28. package/dist/utils/metrics.mjs +37 -8
  29. package/dist/utils/metrics.mjs.map +1 -1
  30. package/dist/utils/swap-received-amount.cjs +96 -0
  31. package/dist/utils/swap-received-amount.cjs.map +1 -0
  32. package/dist/utils/swap-received-amount.d.cts +25 -0
  33. package/dist/utils/swap-received-amount.d.cts.map +1 -0
  34. package/dist/utils/swap-received-amount.d.mts +25 -0
  35. package/dist/utils/swap-received-amount.d.mts.map +1 -0
  36. package/dist/utils/swap-received-amount.mjs +91 -0
  37. package/dist/utils/swap-received-amount.mjs.map +1 -0
  38. package/dist/utils/transaction.cjs +15 -1
  39. package/dist/utils/transaction.cjs.map +1 -1
  40. package/dist/utils/transaction.d.cts +8 -0
  41. package/dist/utils/transaction.d.cts.map +1 -1
  42. package/dist/utils/transaction.d.mts +8 -0
  43. package/dist/utils/transaction.d.mts.map +1 -1
  44. package/dist/utils/transaction.mjs +13 -0
  45. package/dist/utils/transaction.mjs.map +1 -1
  46. package/dist/utils/validators.cjs +1 -1
  47. package/dist/utils/validators.cjs.map +1 -1
  48. package/dist/utils/validators.d.cts +18 -6
  49. package/dist/utils/validators.d.cts.map +1 -1
  50. package/dist/utils/validators.d.mts +18 -6
  51. package/dist/utils/validators.d.mts.map +1 -1
  52. package/dist/utils/validators.mjs +2 -2
  53. package/dist/utils/validators.mjs.map +1 -1
  54. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.mts","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,oCAAoC;AA4C7E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAxB/B;;;WAGG;;QAEH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAQH;;WAEG;;;;;;;;;;;;;;;;;EAeH,CAAC;AAEH,eAAO,MAAM,4BAA4B,SAAU,OAAO,SAkBzD,CAAC"}
1
+ {"version":3,"file":"validators.d.mts","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,oCAAoC;AA2C7E,eAAO,MAAM,oBAAoB;;;;;;;;;;8BAnB/B;;eAEG;;;;;;;;;;;;;;;;;8BAFH;;eAEG;;;;;;;;;;;;;;;;;;;;;;;;8BAFH;;eAEG;;;;;;;;QAPH;;;WAGG;;QAEH;;WAEG;;;;;;;8BAFH;;eAEG;;;;;;;;;;;;;;8BAFH;;eAEG;;;;;;;;;QAQH;;WAEG;;;;;;;8BAZH;;eAEG;;;;;;;;;;EAyBH,CAAC;AAEH,eAAO,MAAM,4BAA4B,SAAU,OAAO,SAkBzD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { StatusTypes, BridgeAssetSchema } from "@metamask/bridge-controller";
2
- import { object, string, boolean, number, optional, enums, union, type, assert, StructError } from "@metamask/superstruct";
2
+ import { string, boolean, number, optional, enums, union, type, assert, StructError } from "@metamask/superstruct";
3
3
  const ChainIdSchema = number();
4
- const EmptyObjectSchema = object({});
4
+ const EmptyObjectSchema = type({});
5
5
  const SrcChainStatusSchema = type({
6
6
  chainId: ChainIdSchema,
7
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"validators.mjs","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,oCAAoC;AAC7E,OAAO,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,KAAK,EACL,IAAI,EACJ,MAAM,EACN,WAAW,EACZ,8BAA8B;AAE/B,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;AAE/B,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;AAErC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,aAAa;IACtB;;;OAGG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;CAC/D,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;CAC/D,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAE5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACzC,QAAQ,EAAE,oBAAoB;IAC9B,SAAS,EAAE,QAAQ,CAAC,qBAAqB,CAAC;IAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IACpC,2BAA2B,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,EAAE,QAAQ,CAAC,0BAA0B,CAAC;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,IAAa,EAAE,EAAE;IAC5D,MAAM,kBAAkB,GAA+B,EAAE,CAAC;IAC1D,IAAI;QACF,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;KACpC;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrD,MAAM,UAAU,GAAG,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;gBAChD,kBAAkB,CAAC,UAAU,CAAC;oBAC5B,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;SACJ;QACD,MAAM,KAAK,CAAC;KACb;YAAS;QACR,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9C,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,kBAAkB,CAAC,CAAC;SACtE;KACF;AACH,CAAC,CAAC","sourcesContent":["import { StatusTypes, BridgeAssetSchema } from '@metamask/bridge-controller';\nimport {\n object,\n string,\n boolean,\n number,\n optional,\n enums,\n union,\n type,\n assert,\n StructError,\n} from '@metamask/superstruct';\n\nconst ChainIdSchema = number();\n\nconst EmptyObjectSchema = object({});\n\nconst SrcChainStatusSchema = type({\n chainId: ChainIdSchema,\n /**\n * The txHash of the transaction on the source chain.\n * This might be undefined for smart transactions (STX)\n */\n txHash: optional(string()),\n /**\n * The atomic amount of the token sent minus fees on the source chain\n */\n amount: optional(string()),\n token: optional(union([EmptyObjectSchema, BridgeAssetSchema])),\n});\n\nconst DestChainStatusSchema = type({\n chainId: ChainIdSchema,\n txHash: optional(string()),\n /**\n * The atomic amount of the token received on the destination chain\n */\n amount: optional(string()),\n token: optional(union([EmptyObjectSchema, BridgeAssetSchema])),\n});\n\nconst RefuelStatusResponseSchema = type({});\n\nexport const StatusResponseSchema = type({\n status: enums(Object.values(StatusTypes)),\n srcChain: SrcChainStatusSchema,\n destChain: optional(DestChainStatusSchema),\n bridge: optional(string()),\n isExpectedToken: optional(boolean()),\n isUnrecognizedRouterAddress: optional(boolean()),\n refuel: optional(RefuelStatusResponseSchema),\n});\n\nexport const validateBridgeStatusResponse = (data: unknown) => {\n const validationFailures: { [path: string]: string } = {};\n try {\n assert(data, StatusResponseSchema);\n } catch (error) {\n if (error instanceof StructError) {\n error.failures().forEach(({ branch, path, message }) => {\n const pathString = path?.join('.') || 'unknown';\n validationFailures[pathString] =\n `[${branch?.[0]?.bridge || 'unknown'}] ${message}`;\n });\n }\n throw error;\n } finally {\n if (Object.keys(validationFailures).length > 0) {\n console.error(`Bridge status validation failed`, validationFailures);\n }\n }\n};\n"]}
1
+ {"version":3,"file":"validators.mjs","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,oCAAoC;AAC7E,OAAO,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,KAAK,EACL,IAAI,EACJ,MAAM,EACN,WAAW,EACZ,8BAA8B;AAE/B,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;AAE/B,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAEnC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,aAAa;IACtB;;;OAGG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;CAC/D,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,aAAa;IACtB,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;CAC/D,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAE5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACzC,QAAQ,EAAE,oBAAoB;IAC9B,SAAS,EAAE,QAAQ,CAAC,qBAAqB,CAAC;IAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IACpC,2BAA2B,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChD,MAAM,EAAE,QAAQ,CAAC,0BAA0B,CAAC;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,IAAa,EAAE,EAAE;IAC5D,MAAM,kBAAkB,GAA+B,EAAE,CAAC;IAC1D,IAAI;QACF,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;KACpC;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,KAAK,YAAY,WAAW,EAAE;YAChC,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrD,MAAM,UAAU,GAAG,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;gBAChD,kBAAkB,CAAC,UAAU,CAAC;oBAC5B,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;SACJ;QACD,MAAM,KAAK,CAAC;KACb;YAAS;QACR,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9C,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,kBAAkB,CAAC,CAAC;SACtE;KACF;AACH,CAAC,CAAC","sourcesContent":["import { StatusTypes, BridgeAssetSchema } from '@metamask/bridge-controller';\nimport {\n string,\n boolean,\n number,\n optional,\n enums,\n union,\n type,\n assert,\n StructError,\n} from '@metamask/superstruct';\n\nconst ChainIdSchema = number();\n\nconst EmptyObjectSchema = type({});\n\nconst SrcChainStatusSchema = type({\n chainId: ChainIdSchema,\n /**\n * The txHash of the transaction on the source chain.\n * This might be undefined for smart transactions (STX)\n */\n txHash: optional(string()),\n /**\n * The atomic amount of the token sent minus fees on the source chain\n */\n amount: optional(string()),\n token: optional(union([EmptyObjectSchema, BridgeAssetSchema])),\n});\n\nconst DestChainStatusSchema = type({\n chainId: ChainIdSchema,\n txHash: optional(string()),\n /**\n * The atomic amount of the token received on the destination chain\n */\n amount: optional(string()),\n token: optional(union([EmptyObjectSchema, BridgeAssetSchema])),\n});\n\nconst RefuelStatusResponseSchema = type({});\n\nexport const StatusResponseSchema = type({\n status: enums(Object.values(StatusTypes)),\n srcChain: SrcChainStatusSchema,\n destChain: optional(DestChainStatusSchema),\n bridge: optional(string()),\n isExpectedToken: optional(boolean()),\n isUnrecognizedRouterAddress: optional(boolean()),\n refuel: optional(RefuelStatusResponseSchema),\n});\n\nexport const validateBridgeStatusResponse = (data: unknown) => {\n const validationFailures: { [path: string]: string } = {};\n try {\n assert(data, StatusResponseSchema);\n } catch (error) {\n if (error instanceof StructError) {\n error.failures().forEach(({ branch, path, message }) => {\n const pathString = path?.join('.') || 'unknown';\n validationFailures[pathString] =\n `[${branch?.[0]?.bridge || 'unknown'}] ${message}`;\n });\n }\n throw error;\n } finally {\n if (Object.keys(validationFailures).length > 0) {\n console.error(`Bridge status validation failed`, validationFailures);\n }\n }\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask/bridge-status-controller",
3
- "version": "38.0.0",
3
+ "version": "38.1.0",
4
4
  "description": "Manages bridge-related status fetching functionality for MetaMask",
5
5
  "keywords": [
6
6
  "MetaMask",
@@ -48,7 +48,7 @@
48
48
  },
49
49
  "dependencies": {
50
50
  "@metamask/base-controller": "^8.1.0",
51
- "@metamask/controller-utils": "^11.11.0",
51
+ "@metamask/controller-utils": "^11.12.0",
52
52
  "@metamask/keyring-api": "^20.0.0",
53
53
  "@metamask/polling-controller": "^14.0.0",
54
54
  "@metamask/superstruct": "^3.1.0",
@@ -59,9 +59,9 @@
59
59
  "devDependencies": {
60
60
  "@metamask/accounts-controller": "^32.0.2",
61
61
  "@metamask/auto-changelog": "^3.4.4",
62
- "@metamask/bridge-controller": "^39.0.0",
62
+ "@metamask/bridge-controller": "^39.1.0",
63
63
  "@metamask/gas-fee-controller": "^24.0.0",
64
- "@metamask/network-controller": "^24.0.1",
64
+ "@metamask/network-controller": "^24.1.0",
65
65
  "@metamask/snaps-controllers": "^14.0.1",
66
66
  "@metamask/transaction-controller": "^59.2.0",
67
67
  "@types/jest": "^27.4.1",