@ledgerhq/coin-canton 0.6.0 → 0.7.0-nightly.1

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 (113) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +20 -0
  3. package/lib/api/lastBlock.integ.test.js +2 -0
  4. package/lib/api/lastBlock.integ.test.js.map +1 -1
  5. package/lib/api/listOperations.integ.test.js +1 -0
  6. package/lib/api/listOperations.integ.test.js.map +1 -1
  7. package/lib/bridge/createTransaction.d.ts.map +1 -1
  8. package/lib/bridge/createTransaction.js +1 -0
  9. package/lib/bridge/createTransaction.js.map +1 -1
  10. package/lib/bridge/onboard.integ.test.js +1 -0
  11. package/lib/bridge/onboard.integ.test.js.map +1 -1
  12. package/lib/bridge/prepareTransaction.d.ts.map +1 -1
  13. package/lib/bridge/prepareTransaction.js +5 -3
  14. package/lib/bridge/prepareTransaction.js.map +1 -1
  15. package/lib/bridge/prepareTransaction.test.js +12 -0
  16. package/lib/bridge/prepareTransaction.test.js.map +1 -1
  17. package/lib/bridge/signOperation.d.ts.map +1 -1
  18. package/lib/bridge/signOperation.js +1 -1
  19. package/lib/bridge/signOperation.js.map +1 -1
  20. package/lib/bridge/sync.d.ts.map +1 -1
  21. package/lib/bridge/sync.integ.test.js +1 -0
  22. package/lib/bridge/sync.integ.test.js.map +1 -1
  23. package/lib/bridge/sync.js +10 -4
  24. package/lib/bridge/sync.js.map +1 -1
  25. package/lib/bridge/transaction.d.ts.map +1 -1
  26. package/lib/bridge/transaction.js +2 -0
  27. package/lib/bridge/transaction.js.map +1 -1
  28. package/lib/common-logic/transaction/estimateFees.d.ts +1 -1
  29. package/lib/common-logic/transaction/estimateFees.d.ts.map +1 -1
  30. package/lib/common-logic/transaction/estimateFees.js +35 -3
  31. package/lib/common-logic/transaction/estimateFees.js.map +1 -1
  32. package/lib/common-logic/transaction/estimateFees.test.d.ts +2 -0
  33. package/lib/common-logic/transaction/estimateFees.test.d.ts.map +1 -0
  34. package/lib/common-logic/transaction/estimateFees.test.js +72 -0
  35. package/lib/common-logic/transaction/estimateFees.test.js.map +1 -0
  36. package/lib/config.d.ts +1 -1
  37. package/lib/config.d.ts.map +1 -1
  38. package/lib/network/gateway.integ.test.js +1 -0
  39. package/lib/network/gateway.integ.test.js.map +1 -1
  40. package/lib/network/node.integ.test.js +2 -0
  41. package/lib/network/node.integ.test.js.map +1 -1
  42. package/lib/network/node.unit.test.js +1 -0
  43. package/lib/network/node.unit.test.js.map +1 -1
  44. package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
  45. package/lib/test/bridgeDatasetTest.js +7 -0
  46. package/lib/test/bridgeDatasetTest.js.map +1 -1
  47. package/lib/types/bridge.d.ts +2 -0
  48. package/lib/types/bridge.d.ts.map +1 -1
  49. package/lib-es/api/lastBlock.integ.test.js +2 -0
  50. package/lib-es/api/lastBlock.integ.test.js.map +1 -1
  51. package/lib-es/api/listOperations.integ.test.js +1 -0
  52. package/lib-es/api/listOperations.integ.test.js.map +1 -1
  53. package/lib-es/bridge/createTransaction.d.ts.map +1 -1
  54. package/lib-es/bridge/createTransaction.js +1 -0
  55. package/lib-es/bridge/createTransaction.js.map +1 -1
  56. package/lib-es/bridge/onboard.integ.test.js +1 -0
  57. package/lib-es/bridge/onboard.integ.test.js.map +1 -1
  58. package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
  59. package/lib-es/bridge/prepareTransaction.js +5 -3
  60. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  61. package/lib-es/bridge/prepareTransaction.test.js +12 -0
  62. package/lib-es/bridge/prepareTransaction.test.js.map +1 -1
  63. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  64. package/lib-es/bridge/signOperation.js +1 -1
  65. package/lib-es/bridge/signOperation.js.map +1 -1
  66. package/lib-es/bridge/sync.d.ts.map +1 -1
  67. package/lib-es/bridge/sync.integ.test.js +1 -0
  68. package/lib-es/bridge/sync.integ.test.js.map +1 -1
  69. package/lib-es/bridge/sync.js +10 -4
  70. package/lib-es/bridge/sync.js.map +1 -1
  71. package/lib-es/bridge/transaction.d.ts.map +1 -1
  72. package/lib-es/bridge/transaction.js +2 -0
  73. package/lib-es/bridge/transaction.js.map +1 -1
  74. package/lib-es/common-logic/transaction/estimateFees.d.ts +1 -1
  75. package/lib-es/common-logic/transaction/estimateFees.d.ts.map +1 -1
  76. package/lib-es/common-logic/transaction/estimateFees.js +35 -3
  77. package/lib-es/common-logic/transaction/estimateFees.js.map +1 -1
  78. package/lib-es/common-logic/transaction/estimateFees.test.d.ts +2 -0
  79. package/lib-es/common-logic/transaction/estimateFees.test.d.ts.map +1 -0
  80. package/lib-es/common-logic/transaction/estimateFees.test.js +37 -0
  81. package/lib-es/common-logic/transaction/estimateFees.test.js.map +1 -0
  82. package/lib-es/config.d.ts +1 -1
  83. package/lib-es/config.d.ts.map +1 -1
  84. package/lib-es/network/gateway.integ.test.js +1 -0
  85. package/lib-es/network/gateway.integ.test.js.map +1 -1
  86. package/lib-es/network/node.integ.test.js +2 -0
  87. package/lib-es/network/node.integ.test.js.map +1 -1
  88. package/lib-es/network/node.unit.test.js +1 -0
  89. package/lib-es/network/node.unit.test.js.map +1 -1
  90. package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
  91. package/lib-es/test/bridgeDatasetTest.js +7 -0
  92. package/lib-es/test/bridgeDatasetTest.js.map +1 -1
  93. package/lib-es/types/bridge.d.ts +2 -0
  94. package/lib-es/types/bridge.d.ts.map +1 -1
  95. package/package.json +7 -7
  96. package/src/api/lastBlock.integ.test.ts +2 -0
  97. package/src/api/listOperations.integ.test.ts +1 -0
  98. package/src/bridge/createTransaction.ts +1 -0
  99. package/src/bridge/onboard.integ.test.ts +1 -0
  100. package/src/bridge/prepareTransaction.test.ts +13 -0
  101. package/src/bridge/prepareTransaction.ts +8 -3
  102. package/src/bridge/signOperation.ts +2 -1
  103. package/src/bridge/sync.integ.test.ts +1 -0
  104. package/src/bridge/sync.ts +11 -4
  105. package/src/bridge/transaction.ts +2 -0
  106. package/src/common-logic/transaction/estimateFees.test.ts +50 -0
  107. package/src/common-logic/transaction/estimateFees.ts +48 -4
  108. package/src/config.ts +1 -1
  109. package/src/network/gateway.integ.test.ts +1 -0
  110. package/src/network/node.integ.test.ts +2 -0
  111. package/src/network/node.unit.test.ts +1 -0
  112. package/src/test/bridgeDatasetTest.ts +7 -0
  113. package/src/types/bridge.ts +2 -0
@@ -7,7 +7,7 @@ export type CantonConfig = {
7
7
  minReserve?: number;
8
8
  networkType: "mainnet" | "devnet" | "localnet";
9
9
  useGateway?: boolean;
10
- nativeInstrumentId?: string;
10
+ nativeInstrumentId: string;
11
11
  fee?: number;
12
12
  };
13
13
  export type CantonCoinConfig = CurrencyConfig & CantonConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAwB,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,YAAY,CAAC;AAE7D,QAAA,MAAM,UAAU,EAAE;IAChB,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC9D,aAAa,EAAE,CAAC,QAAQ,CAAC,EAAE,cAAc,KAAK,gBAAgB,CAAC;CAC1B,CAAC;AAExC,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAwB,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,YAAY,CAAC;AAE7D,QAAA,MAAM,UAAU,EAAE;IAChB,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC9D,aAAa,EAAE,CAAC,QAAQ,CAAC,EAAE,cAAc,KAAK,gBAAgB,CAAC;CAC1B,CAAC;AAExC,eAAe,UAAU,CAAC"}
@@ -10,6 +10,7 @@ describe("gateway (devnet)", () => {
10
10
  coinConfig.setCoinConfig(() => ({
11
11
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
12
12
  useGateway: true,
13
+ nativeInstrumentId: "Amulet",
13
14
  networkType: "devnet",
14
15
  status: {
15
16
  type: "active",
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.integ.test.js","sourceRoot":"","sources":["../../src/network/gateway.integ.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.integ.test.js","sourceRoot":"","sources":["../../src/network/gateway.integ.test.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ describe.skip("Node (localnet)", () => {
6
6
  coinConfig.setCoinConfig(() => ({
7
7
  gatewayUrl: "http://gateway.url",
8
8
  nodeUrl: "http://localhost:2975/v2",
9
+ nativeInstrumentId: "Amulet",
9
10
  networkType: "localnet",
10
11
  status: { type: "active" },
11
12
  }));
@@ -23,6 +24,7 @@ describe.skip("Node (devnet)", () => {
23
24
  coinConfig.setCoinConfig(() => ({
24
25
  nodeUrl: "https://wallet-validator-devnet-canton.ledger-test.com/v2",
25
26
  networkType: "devnet",
27
+ nativeInstrumentId: "Amulet",
26
28
  status: { type: "active" },
27
29
  gatewayUrl: "http://gateway.url",
28
30
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"node.integ.test.js","sourceRoot":"","sources":["../../src/network/node.integ.test.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,yDAAyD;AACzD,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,0BAA0B;YACnC,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3B,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,gEAAgE;AAChE,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,OAAO,EAAE,2DAA2D;YACpE,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,UAAU,EAAE,oBAAoB;SACjC,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"node.integ.test.js","sourceRoot":"","sources":["../../src/network/node.integ.test.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,yDAAyD;AACzD,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,0BAA0B;YACnC,kBAAkB,EAAE,QAAQ;YAC5B,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3B,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,gEAAgE;AAChE,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,OAAO,EAAE,2DAA2D;YACpE,WAAW,EAAE,QAAQ;YACrB,kBAAkB,EAAE,QAAQ;YAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,UAAU,EAAE,oBAAoB;SACjC,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -13,6 +13,7 @@ describe("getLedgerEnd", () => {
13
13
  coinConfig.setCoinConfig(() => ({
14
14
  nodeUrl: "http://node-url",
15
15
  networkType: "mainnet",
16
+ nativeInstrumentId: "Amulet",
16
17
  status: {
17
18
  type: "active",
18
19
  },
@@ -1 +1 @@
1
- {"version":3,"file":"node.unit.test.js","sourceRoot":"","sources":["../../src/network/node.unit.test.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,UAAU,MAAM,WAAW,CAAC;AAEnC,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,SAAS;YACtB,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;aACf;SACF,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"node.unit.test.js","sourceRoot":"","sources":["../../src/network/node.unit.test.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,UAAU,MAAM,WAAW,CAAC;AAEnC,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpG,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,SAAS;YACtB,kBAAkB,EAAE,QAAQ;YAC5B,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;aACf;SACF,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeDatasetTest.d.ts","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASnD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAIvC,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAGF,eAAO,MAAM,cAAc;;;CAS1B,CAAC;AAaF,QAAA,MAAM,MAAM,EAAE,WAAW,CAAC,WAAW,CAwKpC,CAAC;AAEF,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"bridgeDatasetTest.d.ts","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASnD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAIvC,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAGF,eAAO,MAAM,cAAc;;;CAS1B,CAAC;AAaF,QAAA,MAAM,MAAM,EAAE,WAAW,CAAC,WAAW,CA+KpC,CAAC;AAEF,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC"}
@@ -74,6 +74,7 @@ const canton = {
74
74
  family: "canton",
75
75
  recipient: mockCantonAddresses.sender,
76
76
  amount: "10000000",
77
+ tokenId: "Amulet",
77
78
  fee: "1000",
78
79
  }),
79
80
  expectedStatus: {
@@ -93,6 +94,7 @@ const canton = {
93
94
  recipient: mockCantonAddresses.recipient1,
94
95
  amount: "10000000", // 10 CANTON
95
96
  fee: "1000",
97
+ tokenId: "Amulet",
96
98
  }),
97
99
  expectedStatus: {
98
100
  amount: new BigNumber("10000000"),
@@ -109,6 +111,7 @@ const canton = {
109
111
  recipient: mockCantonAddresses.recipient1,
110
112
  amount: "2000000000", // 2000 CANTON (more than balance)
111
113
  fee: "1000",
114
+ tokenId: "Amulet",
112
115
  }),
113
116
  expectedStatus: {
114
117
  amount: new BigNumber("2000000000"),
@@ -126,6 +129,7 @@ const canton = {
126
129
  family: "canton",
127
130
  recipient: mockCantonAddresses.invalid,
128
131
  amount: "10000000",
132
+ tokenId: "Amulet",
129
133
  fee: "1000",
130
134
  }),
131
135
  expectedStatus: {
@@ -144,6 +148,7 @@ const canton = {
144
148
  family: "canton",
145
149
  recipient: mockCantonAddresses.recipient1,
146
150
  amount: "0",
151
+ tokenId: "Amulet",
147
152
  fee: "1000",
148
153
  }),
149
154
  expectedStatus: {
@@ -162,6 +167,7 @@ const canton = {
162
167
  family: "canton",
163
168
  recipient: "",
164
169
  amount: "10000000",
170
+ tokenId: "Amulet",
165
171
  fee: "1000",
166
172
  }),
167
173
  expectedStatus: {
@@ -180,6 +186,7 @@ const canton = {
180
186
  family: "canton",
181
187
  recipient: mockCantonAddresses.recipient1,
182
188
  amount: "10000000",
189
+ tokenId: "Amulet",
183
190
  fee: "50000", // 50 CANTON fee
184
191
  }),
185
192
  expectedStatus: {
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeDatasetTest.js","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridgeDatasetTest.js","sourceRoot":"","sources":["../../src/test/bridgeDatasetTest.ts"],"names":[],"mappings":"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"}
@@ -21,11 +21,13 @@ export type Transaction = TransactionCommon & {
21
21
  family: "canton";
22
22
  fee: BigNumber | null | undefined;
23
23
  memo?: string;
24
+ tokenId: string;
24
25
  };
25
26
  export type TransactionRaw = TransactionCommonRaw & {
26
27
  family: "canton";
27
28
  fee: string | null | undefined;
28
29
  memo?: string;
30
+ tokenId: string;
29
31
  };
30
32
  export type TransactionStatus = TransactionStatusCommon;
31
33
  export type TransactionStatusRaw = TransactionStatusCommonRaw;
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,cAAc,EAAE,CACd,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,KACnB,UAAU,CAAC,qBAAqB,GAAG,mBAAmB,CAAC,CAAC;IAC7D,oBAAoB,EAAE,CACpB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,KACZ,UAAU,CAAC,yBAAyB,GAAG,uBAAuB,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,eAAe,EAAE,kBAAkB,CAAC;CACrC,CAAC"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,cAAc,EAAE,CACd,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,KACnB,UAAU,CAAC,qBAAqB,GAAG,mBAAmB,CAAC,CAAC;IAC7D,oBAAoB,EAAE,CACpB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,KACZ,UAAU,CAAC,yBAAyB,GAAG,uBAAuB,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,eAAe,EAAE,kBAAkB,CAAC;CACrC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-canton",
3
- "version": "0.6.0",
3
+ "version": "0.7.0-nightly.1",
4
4
  "description": "Canton coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -101,13 +101,13 @@
101
101
  "bignumber.js": "^9.1.2",
102
102
  "invariant": "^2.2.4",
103
103
  "rxjs": "^7.8.1",
104
- "@ledgerhq/coin-framework": "^6.5.0",
105
- "@ledgerhq/cryptoassets": "^13.29.0",
104
+ "@ledgerhq/coin-framework": "^6.6.0-nightly.1",
105
+ "@ledgerhq/cryptoassets": "^13.30.0-nightly.0",
106
106
  "@ledgerhq/devices": "8.6.0",
107
- "@ledgerhq/errors": "^6.25.0",
107
+ "@ledgerhq/errors": "^6.26.0-nightly.0",
108
108
  "@ledgerhq/live-env": "^2.17.0",
109
109
  "@ledgerhq/live-network": "^2.0.18",
110
- "@ledgerhq/types-live": "^6.85.0"
110
+ "@ledgerhq/types-live": "^6.86.0-nightly.0"
111
111
  },
112
112
  "devDependencies": {
113
113
  "@types/invariant": "^2.2.37",
@@ -117,13 +117,13 @@
117
117
  "jest": "^29.7.0",
118
118
  "ts-jest": "^29.1.1",
119
119
  "typescript": "^5.4.5",
120
- "@ledgerhq/types-cryptoassets": "^7.27.0",
120
+ "@ledgerhq/types-cryptoassets": "^7.28.0-nightly.0",
121
121
  "@ledgerhq/disable-network-setup": "^0.0.0"
122
122
  },
123
123
  "scripts": {
124
124
  "clean": "rimraf lib lib-es",
125
125
  "build": "tsc && tsc -m esnext --moduleResolution bundler --outDir lib-es",
126
- "coverage": "jest --coverage || true",
126
+ "coverage": "jest --coverage",
127
127
  "prewatch": "pnpm build",
128
128
  "watch": "tsc --watch",
129
129
  "doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
@@ -8,6 +8,7 @@ describe.skip("localnet", () => {
8
8
  beforeAll(() => {
9
9
  api = createApi({
10
10
  nodeUrl: "http://localhost:2975/v2",
11
+ nativeInstrumentId: "Amulet",
11
12
  networkType: "localnet",
12
13
  } satisfies Partial<CantonCoinConfig>);
13
14
  });
@@ -27,6 +28,7 @@ describe.skip("devnet", () => {
27
28
  networkType: "devnet",
28
29
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
29
30
  useGateway: true,
31
+ nativeInstrumentId: "Amulet",
30
32
  });
31
33
  });
32
34
 
@@ -10,6 +10,7 @@ describe.skip("devnet", () => {
10
10
  networkType: "devnet",
11
11
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
12
12
  useGateway: true,
13
+ nativeInstrumentId: "Amulet",
13
14
  });
14
15
  });
15
16
 
@@ -11,4 +11,5 @@ export const createTransaction: AccountBridge<Transaction>["createTransaction"]
11
11
  memo: "",
12
12
  networkInfo: null,
13
13
  feeCustomUnit: null,
14
+ tokenId: "",
14
15
  });
@@ -31,6 +31,7 @@ describe("onboard (devnet)", () => {
31
31
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
32
32
  useGateway: true,
33
33
  networkType: "devnet",
34
+ nativeInstrumentId: "Amulet",
34
35
  status: {
35
36
  type: "active",
36
37
  },
@@ -4,6 +4,7 @@ import { getNextSequence } from "../network/node";
4
4
  import { prepareTransaction } from "./prepareTransaction";
5
5
  import { Account } from "@ledgerhq/types-live";
6
6
  import { Transaction } from "../types";
7
+ import coinConfig from "../config";
7
8
 
8
9
  jest.mock("../network/node");
9
10
  jest.mock("../common-logic");
@@ -12,6 +13,18 @@ describe("prepareTransaction", () => {
12
13
  let estimateFeesSpy: jest.SpyInstance;
13
14
  let getNextSequenceSpy: jest.SpyInstance;
14
15
  let craftTransactionSpy: jest.SpyInstance;
16
+
17
+ beforeAll(async () => {
18
+ coinConfig.setCoinConfig(() => ({
19
+ gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
20
+ useGateway: true,
21
+ networkType: "devnet",
22
+ nativeInstrumentId: "Amulet",
23
+ status: {
24
+ type: "active",
25
+ },
26
+ }));
27
+ });
15
28
  beforeEach(() => {
16
29
  getNextSequenceSpy = jest.spyOn({ getNextSequence }, "getNextSequence");
17
30
  estimateFeesSpy = jest.spyOn({ estimateFees }, "estimateFees");
@@ -3,14 +3,19 @@ import { Transaction } from "../types";
3
3
  import { estimateFees } from "../common-logic";
4
4
  import BigNumber from "bignumber.js";
5
5
  import { updateTransaction } from "./updateTransaction";
6
+ import coinConfig from "../config";
6
7
 
7
8
  export const prepareTransaction: AccountBridge<Transaction>["prepareTransaction"] = async (
8
9
  account,
9
10
  transaction,
10
11
  ) => {
11
- let fee = transaction.fee;
12
- if (!fee || fee.eq(0)) {
13
- fee = BigNumber((await estimateFees(account.currency)).toString());
12
+ const amount = transaction.amount || BigNumber(0);
13
+ const fee = BigNumber(
14
+ (await estimateFees(account.currency, BigInt(amount.toString()))).toString(),
15
+ );
16
+
17
+ if (!transaction.tokenId) {
18
+ transaction.tokenId = coinConfig.getCoinConfig(account.currency).nativeInstrumentId;
14
19
  }
15
20
  return updateTransaction(transaction, { fee });
16
21
  };
@@ -25,6 +25,7 @@ export const buildSignOperation =
25
25
  const { freshAddressPath: derivationPath } = account;
26
26
  const partyId = (account as unknown as { cantonResources: { partyId: string } })
27
27
  .cantonResources.partyId;
28
+
28
29
  const params: {
29
30
  recipient?: string;
30
31
  amount: BigNumber;
@@ -35,7 +36,7 @@ export const buildSignOperation =
35
36
  recipient: transaction.recipient,
36
37
  amount: transaction.amount,
37
38
  expireInSeconds: 60 * 60,
38
- tokenId: "Amulet",
39
+ tokenId: transaction.tokenId,
39
40
  };
40
41
  if (transaction.memo) {
41
42
  params.memo = transaction.memo;
@@ -36,6 +36,7 @@ describe("sync (devnet)", () => {
36
36
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
37
37
  useGateway: true,
38
38
  networkType: "devnet",
39
+ nativeInstrumentId: "Amulet",
39
40
  status: {
40
41
  type: "active",
41
42
  },
@@ -21,11 +21,16 @@ const txInfoToOperationAdapter =
21
21
  transfers: [{ value: transferValue, details }],
22
22
  } = txInfo;
23
23
  let type: OperationType = "UNKNOWN";
24
- if (txInfo.type === "Send") {
24
+ if (txInfo.type === "Send" && transferValue === "0") {
25
+ type = "FEES";
26
+ } else if (txInfo.type === "Send") {
25
27
  type = senders.includes(partyId) ? "OUT" : "IN";
26
28
  } else if (txInfo.type === "Receive") {
27
29
  type = "IN";
30
+ } else if (txInfo.type === "Initialize") {
31
+ type = "PRE_APPROVAL";
28
32
  }
33
+
29
34
  const value = new BigNumber(transferValue);
30
35
  const feeValue = new BigNumber(fee);
31
36
  const memo = details.metadata.reason;
@@ -64,7 +69,7 @@ export const getAccountShape: GetAccountShape<CantonAccount> = async info => {
64
69
  const { address, initialAccount, currency, derivationMode, derivationPath, rest } = info;
65
70
 
66
71
  const xpubOrAddress = (
67
- (initialAccount && initialAccount.id && decodeAccountId(initialAccount.id).xpubOrAddress) ||
72
+ (initialAccount?.id && decodeAccountId(initialAccount.id).xpubOrAddress) ||
68
73
  ""
69
74
  ).replace(/:/g, "_");
70
75
  const partyId =
@@ -84,8 +89,10 @@ export const getAccountShape: GetAccountShape<CantonAccount> = async info => {
84
89
  // const accountInfo = await getAccountInfo(address);
85
90
  const balances = await getBalance(currency, partyId);
86
91
 
87
- const balanceData = balances.find(balance => balance.instrument_id === "Amulet") || {
88
- instrument_id: "Amulet",
92
+ const balanceData = balances.find(
93
+ balance => balance.instrument_id === coinConfig.getCoinConfig(currency).nativeInstrumentId,
94
+ ) || {
95
+ instrument_id: coinConfig.getCoinConfig(currency).nativeInstrumentId,
89
96
  amount: 0,
90
97
  locked: false,
91
98
  };
@@ -39,6 +39,7 @@ export const fromTransactionRaw = (tr: TransactionRaw): Transaction => {
39
39
  ...common,
40
40
  family: tr.family,
41
41
  fee: tr.fee ? new BigNumber(tr.fee) : null,
42
+ tokenId: tr.tokenId,
42
43
  };
43
44
  };
44
45
 
@@ -48,6 +49,7 @@ export const toTransactionRaw = (t: Transaction): TransactionRaw => {
48
49
  ...common,
49
50
  family: t.family,
50
51
  fee: t.fee ? t.fee.toString() : null,
52
+ tokenId: t.tokenId,
51
53
  };
52
54
  };
53
55
 
@@ -0,0 +1,50 @@
1
+ import { estimateFees } from "./estimateFees";
2
+ import * as coinConfigModule from "../../config";
3
+ import { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
4
+
5
+ const mockCurrency = {
6
+ id: "canton_network",
7
+ } as unknown as CryptoCurrency;
8
+
9
+ const magnitude: bigint = 10n ** 38n;
10
+
11
+ describe("estimateFees", () => {
12
+ const mockGetCoinConfig = jest.spyOn(coinConfigModule.default, "getCoinConfig");
13
+
14
+ afterEach(() => {
15
+ jest.clearAllMocks();
16
+ });
17
+
18
+ it("returns 2 CC fees for 100 CC", async () => {
19
+ mockGetCoinConfig.mockReturnValue({
20
+ fee: undefined,
21
+ } as unknown as coinConfigModule.CantonCoinConfig);
22
+
23
+ const result = await estimateFees(mockCurrency, 100n * magnitude);
24
+
25
+ // 2 CC
26
+ expect(result).toEqual(2n * magnitude);
27
+ });
28
+
29
+ it("returns 11 CC fees for 1000 CC", async () => {
30
+ mockGetCoinConfig.mockReturnValue({
31
+ fee: undefined,
32
+ } as unknown as coinConfigModule.CantonCoinConfig);
33
+
34
+ const result = await estimateFees(mockCurrency, 1000n * magnitude);
35
+
36
+ // 11 CC
37
+ expect(result).toEqual(11n * magnitude);
38
+ });
39
+
40
+ it("returns forced fees when setup in config", async () => {
41
+ mockGetCoinConfig.mockReturnValue({
42
+ fee: 3,
43
+ } as unknown as coinConfigModule.CantonCoinConfig);
44
+
45
+ const result = await estimateFees(mockCurrency, 1000n * magnitude);
46
+
47
+ // 3 CC
48
+ expect(result).toEqual(3n * magnitude);
49
+ });
50
+ });
@@ -1,9 +1,53 @@
1
1
  import coinConfig from "../../config";
2
2
  import type { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
3
3
 
4
- const feeValue = (currency: CryptoCurrency) =>
5
- coinConfig.getCoinConfig(currency).fee ?? 2n * 10n ** 38n;
4
+ const magnitude: bigint = 10n ** 38n;
6
5
 
7
- export async function estimateFees(currency: CryptoCurrency): Promise<bigint> {
8
- return Promise.resolve(BigInt(feeValue(currency)));
6
+ type FeeTier = {
7
+ limit: bigint | null; // `null` means no upper limit
8
+ rateNumerator: bigint; // e.g., 1 for 1%
9
+ rateDenominator: bigint; // e.g., 100 for 1%
10
+ };
11
+
12
+ const cantonCoinTiers: FeeTier[] = [
13
+ // 100n because of rateDenominator for percentages
14
+ { limit: 100n * 100n * magnitude, rateNumerator: 1n, rateDenominator: 100n }, // 1.0%
15
+ { limit: 1000n * 100n * magnitude, rateNumerator: 1n, rateDenominator: 1000n }, // 0.1%
16
+ { limit: 1_000_000n * 100n * magnitude, rateNumerator: 1n, rateDenominator: 10_000n }, // 0.01%
17
+ { limit: null, rateNumerator: 1n, rateDenominator: 100_000n }, // 0.001%
18
+ ];
19
+
20
+ const feeValue = (currency: CryptoCurrency) => coinConfig.getCoinConfig(currency).fee;
21
+
22
+ export async function estimateFees(currency: CryptoCurrency, amount: bigint): Promise<bigint> {
23
+ const forcedValue = feeValue(currency);
24
+ if (forcedValue) {
25
+ return Promise.resolve(BigInt(forcedValue) * magnitude);
26
+ } else {
27
+ return Promise.resolve(
28
+ // Add 1 CC as base fee
29
+ 1n * magnitude + BigInt(calculateFeeWithTiers(amount, cantonCoinTiers)),
30
+ );
31
+ }
32
+ }
33
+
34
+ function calculateFeeWithTiers(value: bigint, tiers: FeeTier[]): bigint {
35
+ let remaining = value;
36
+ let lastLimit = 0n;
37
+ let fee = 0n;
38
+
39
+ for (const tier of tiers) {
40
+ if (remaining <= 0n) break;
41
+
42
+ const currentLimit = tier.limit ?? BigInt(2 ** 62); // highest bigint value
43
+ const tierCap = currentLimit - lastLimit;
44
+ const applicable = remaining < tierCap ? remaining : tierCap;
45
+
46
+ fee += (applicable * tier.rateNumerator) / tier.rateDenominator;
47
+
48
+ remaining -= applicable;
49
+ lastLimit = currentLimit;
50
+ }
51
+
52
+ return fee;
9
53
  }
package/src/config.ts CHANGED
@@ -9,7 +9,7 @@ export type CantonConfig = {
9
9
  minReserve?: number;
10
10
  networkType: "mainnet" | "devnet" | "localnet";
11
11
  useGateway?: boolean;
12
- nativeInstrumentId?: string;
12
+ nativeInstrumentId: string;
13
13
  fee?: number;
14
14
  };
15
15
 
@@ -29,6 +29,7 @@ describe("gateway (devnet)", () => {
29
29
  coinConfig.setCoinConfig(() => ({
30
30
  gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
31
31
  useGateway: true,
32
+ nativeInstrumentId: "Amulet",
32
33
  networkType: "devnet",
33
34
  status: {
34
35
  type: "active",
@@ -7,6 +7,7 @@ describe.skip("Node (localnet)", () => {
7
7
  coinConfig.setCoinConfig(() => ({
8
8
  gatewayUrl: "http://gateway.url",
9
9
  nodeUrl: "http://localhost:2975/v2",
10
+ nativeInstrumentId: "Amulet",
10
11
  networkType: "localnet",
11
12
  status: { type: "active" },
12
13
  }));
@@ -26,6 +27,7 @@ describe.skip("Node (devnet)", () => {
26
27
  coinConfig.setCoinConfig(() => ({
27
28
  nodeUrl: "https://wallet-validator-devnet-canton.ledger-test.com/v2",
28
29
  networkType: "devnet",
30
+ nativeInstrumentId: "Amulet",
29
31
  status: { type: "active" },
30
32
  gatewayUrl: "http://gateway.url",
31
33
  }));
@@ -16,6 +16,7 @@ describe("getLedgerEnd", () => {
16
16
  coinConfig.setCoinConfig(() => ({
17
17
  nodeUrl: "http://node-url",
18
18
  networkType: "mainnet",
19
+ nativeInstrumentId: "Amulet",
19
20
  status: {
20
21
  type: "active",
21
22
  },