@ledgerhq/coin-canton 0.9.0-nightly.1 → 0.9.0-nightly.20251030160608

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 (205) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.unimportedrc.json +2 -1
  3. package/CHANGELOG.md +26 -9
  4. package/README.md +75 -0
  5. package/lib/bridge/deviceTransactionConfig.d.ts +1 -1
  6. package/lib/bridge/deviceTransactionConfig.d.ts.map +1 -1
  7. package/lib/bridge/deviceTransactionConfig.js +1 -1
  8. package/lib/bridge/deviceTransactionConfig.js.map +1 -1
  9. package/lib/bridge/estimateMaxSpendable.d.ts +2 -2
  10. package/lib/bridge/estimateMaxSpendable.d.ts.map +1 -1
  11. package/lib/bridge/estimateMaxSpendable.js +2 -3
  12. package/lib/bridge/estimateMaxSpendable.js.map +1 -1
  13. package/lib/bridge/getTransactionStatus.d.ts +5 -3
  14. package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
  15. package/lib/bridge/getTransactionStatus.js +27 -10
  16. package/lib/bridge/getTransactionStatus.js.map +1 -1
  17. package/lib/bridge/index.d.ts +2 -2
  18. package/lib/bridge/index.d.ts.map +1 -1
  19. package/lib/bridge/index.js +3 -3
  20. package/lib/bridge/index.js.map +1 -1
  21. package/lib/bridge/onboard.d.ts.map +1 -1
  22. package/lib/bridge/onboard.js +48 -22
  23. package/lib/bridge/onboard.js.map +1 -1
  24. package/lib/bridge/prepareTransaction.js +1 -1
  25. package/lib/bridge/prepareTransaction.js.map +1 -1
  26. package/lib/bridge/serialization.d.ts +4 -0
  27. package/lib/bridge/serialization.d.ts.map +1 -0
  28. package/lib/bridge/serialization.js +36 -0
  29. package/lib/bridge/serialization.js.map +1 -0
  30. package/lib/bridge/signOperation.d.ts.map +1 -1
  31. package/lib/bridge/signOperation.js +11 -4
  32. package/lib/bridge/signOperation.js.map +1 -1
  33. package/lib/bridge/sync.d.ts.map +1 -1
  34. package/lib/bridge/sync.js +14 -6
  35. package/lib/bridge/sync.js.map +1 -1
  36. package/lib/bridge/transaction.js +1 -1
  37. package/lib/bridge/transaction.js.map +1 -1
  38. package/lib/common-logic/account/getBalance.d.ts +5 -1
  39. package/lib/common-logic/account/getBalance.d.ts.map +1 -1
  40. package/lib/common-logic/account/getBalance.js +2 -0
  41. package/lib/common-logic/account/getBalance.js.map +1 -1
  42. package/lib/common-logic/index.d.ts +1 -0
  43. package/lib/common-logic/index.d.ts.map +1 -1
  44. package/lib/common-logic/index.js +3 -1
  45. package/lib/common-logic/index.js.map +1 -1
  46. package/lib/common-logic/transaction/craftTransaction.js +1 -1
  47. package/lib/common-logic/transaction/craftTransaction.js.map +1 -1
  48. package/lib/common-logic/transaction/estimateFees.js +1 -1
  49. package/lib/common-logic/transaction/estimateFees.js.map +1 -1
  50. package/lib/common-logic/transaction/sign.d.ts +8 -0
  51. package/lib/common-logic/transaction/sign.d.ts.map +1 -0
  52. package/lib/common-logic/transaction/sign.js +45 -0
  53. package/lib/common-logic/transaction/sign.js.map +1 -0
  54. package/lib/common-logic/transaction/split.d.ts +9 -0
  55. package/lib/common-logic/transaction/split.d.ts.map +1 -0
  56. package/lib/common-logic/transaction/split.js +119 -0
  57. package/lib/common-logic/transaction/split.js.map +1 -0
  58. package/lib/common-logic/utils.js +2 -2
  59. package/lib/common-logic/utils.js.map +1 -1
  60. package/lib/network/gateway.d.ts +6 -1
  61. package/lib/network/gateway.d.ts.map +1 -1
  62. package/lib/network/gateway.js +6 -9
  63. package/lib/network/gateway.js.map +1 -1
  64. package/lib/test/cantonTestUtils.d.ts +4 -9
  65. package/lib/test/cantonTestUtils.d.ts.map +1 -1
  66. package/lib/test/cantonTestUtils.js +736 -27
  67. package/lib/test/cantonTestUtils.js.map +1 -1
  68. package/lib/test/fixtures.d.ts +5 -0
  69. package/lib/test/fixtures.d.ts.map +1 -0
  70. package/lib/test/fixtures.js +57 -0
  71. package/lib/test/fixtures.js.map +1 -0
  72. package/lib/types/bridge.d.ts +14 -2
  73. package/lib/types/bridge.d.ts.map +1 -1
  74. package/lib/types/errors.d.ts +6 -0
  75. package/lib/types/errors.d.ts.map +1 -1
  76. package/lib/types/errors.js +3 -1
  77. package/lib/types/errors.js.map +1 -1
  78. package/lib/types/index.d.ts +1 -0
  79. package/lib/types/index.d.ts.map +1 -1
  80. package/lib/types/index.js +1 -0
  81. package/lib/types/index.js.map +1 -1
  82. package/lib/types/signer.d.ts +15 -2
  83. package/lib/types/signer.d.ts.map +1 -1
  84. package/lib/types/transaction-proto.json +1238 -0
  85. package/lib-es/bridge/deviceTransactionConfig.d.ts +1 -1
  86. package/lib-es/bridge/deviceTransactionConfig.d.ts.map +1 -1
  87. package/lib-es/bridge/deviceTransactionConfig.js +1 -1
  88. package/lib-es/bridge/deviceTransactionConfig.js.map +1 -1
  89. package/lib-es/bridge/estimateMaxSpendable.d.ts +2 -2
  90. package/lib-es/bridge/estimateMaxSpendable.d.ts.map +1 -1
  91. package/lib-es/bridge/estimateMaxSpendable.js +2 -3
  92. package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
  93. package/lib-es/bridge/getTransactionStatus.d.ts +5 -3
  94. package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
  95. package/lib-es/bridge/getTransactionStatus.js +27 -10
  96. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  97. package/lib-es/bridge/index.d.ts +2 -2
  98. package/lib-es/bridge/index.d.ts.map +1 -1
  99. package/lib-es/bridge/index.js +3 -3
  100. package/lib-es/bridge/index.js.map +1 -1
  101. package/lib-es/bridge/onboard.d.ts.map +1 -1
  102. package/lib-es/bridge/onboard.js +49 -23
  103. package/lib-es/bridge/onboard.js.map +1 -1
  104. package/lib-es/bridge/prepareTransaction.js +1 -1
  105. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  106. package/lib-es/bridge/serialization.d.ts +4 -0
  107. package/lib-es/bridge/serialization.d.ts.map +1 -0
  108. package/lib-es/bridge/serialization.js +32 -0
  109. package/lib-es/bridge/serialization.js.map +1 -0
  110. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  111. package/lib-es/bridge/signOperation.js +11 -4
  112. package/lib-es/bridge/signOperation.js.map +1 -1
  113. package/lib-es/bridge/sync.d.ts.map +1 -1
  114. package/lib-es/bridge/sync.js +14 -6
  115. package/lib-es/bridge/sync.js.map +1 -1
  116. package/lib-es/bridge/transaction.js +1 -1
  117. package/lib-es/bridge/transaction.js.map +1 -1
  118. package/lib-es/common-logic/account/getBalance.d.ts +5 -1
  119. package/lib-es/common-logic/account/getBalance.d.ts.map +1 -1
  120. package/lib-es/common-logic/account/getBalance.js +2 -0
  121. package/lib-es/common-logic/account/getBalance.js.map +1 -1
  122. package/lib-es/common-logic/index.d.ts +1 -0
  123. package/lib-es/common-logic/index.d.ts.map +1 -1
  124. package/lib-es/common-logic/index.js +1 -0
  125. package/lib-es/common-logic/index.js.map +1 -1
  126. package/lib-es/common-logic/transaction/craftTransaction.js +1 -1
  127. package/lib-es/common-logic/transaction/craftTransaction.js.map +1 -1
  128. package/lib-es/common-logic/transaction/estimateFees.js +1 -1
  129. package/lib-es/common-logic/transaction/estimateFees.js.map +1 -1
  130. package/lib-es/common-logic/transaction/sign.d.ts +8 -0
  131. package/lib-es/common-logic/transaction/sign.d.ts.map +1 -0
  132. package/lib-es/common-logic/transaction/sign.js +42 -0
  133. package/lib-es/common-logic/transaction/sign.js.map +1 -0
  134. package/lib-es/common-logic/transaction/split.d.ts +9 -0
  135. package/lib-es/common-logic/transaction/split.d.ts.map +1 -0
  136. package/lib-es/common-logic/transaction/split.js +83 -0
  137. package/lib-es/common-logic/transaction/split.js.map +1 -0
  138. package/lib-es/common-logic/utils.js +2 -2
  139. package/lib-es/common-logic/utils.js.map +1 -1
  140. package/lib-es/network/gateway.d.ts +6 -1
  141. package/lib-es/network/gateway.d.ts.map +1 -1
  142. package/lib-es/network/gateway.js +5 -10
  143. package/lib-es/network/gateway.js.map +1 -1
  144. package/lib-es/test/cantonTestUtils.d.ts +4 -9
  145. package/lib-es/test/cantonTestUtils.d.ts.map +1 -1
  146. package/lib-es/test/cantonTestUtils.js +697 -21
  147. package/lib-es/test/cantonTestUtils.js.map +1 -1
  148. package/lib-es/test/fixtures.d.ts +5 -0
  149. package/lib-es/test/fixtures.d.ts.map +1 -0
  150. package/lib-es/test/fixtures.js +49 -0
  151. package/lib-es/test/fixtures.js.map +1 -0
  152. package/lib-es/types/bridge.d.ts +14 -2
  153. package/lib-es/types/bridge.d.ts.map +1 -1
  154. package/lib-es/types/errors.d.ts +6 -0
  155. package/lib-es/types/errors.d.ts.map +1 -1
  156. package/lib-es/types/errors.js +2 -0
  157. package/lib-es/types/errors.js.map +1 -1
  158. package/lib-es/types/index.d.ts +1 -0
  159. package/lib-es/types/index.d.ts.map +1 -1
  160. package/lib-es/types/index.js +1 -0
  161. package/lib-es/types/index.js.map +1 -1
  162. package/lib-es/types/signer.d.ts +15 -2
  163. package/lib-es/types/signer.d.ts.map +1 -1
  164. package/lib-es/types/transaction-proto.json +1238 -0
  165. package/package.json +13 -10
  166. package/scripts/generate.js +261 -0
  167. package/src/bridge/deviceTransactionConfig.test.ts +14 -10
  168. package/src/bridge/deviceTransactionConfig.ts +2 -2
  169. package/src/bridge/estimateMaxSpendable.ts +6 -8
  170. package/src/bridge/getTransactionStatus.test.ts +103 -165
  171. package/src/bridge/getTransactionStatus.ts +43 -11
  172. package/src/bridge/index.ts +6 -5
  173. package/src/bridge/onboard.integ.test.ts +8 -51
  174. package/src/bridge/onboard.ts +58 -33
  175. package/src/bridge/prepareTransaction.ts +1 -1
  176. package/src/bridge/serialization.ts +44 -0
  177. package/src/bridge/signOperation.test.ts +123 -0
  178. package/src/bridge/signOperation.ts +13 -6
  179. package/src/bridge/sync.integ.test.ts +157 -132
  180. package/src/bridge/sync.test.ts +5 -1
  181. package/src/bridge/sync.ts +18 -7
  182. package/src/bridge/transaction.ts +1 -1
  183. package/src/common-logic/account/getBalance.ts +12 -2
  184. package/src/common-logic/account/getBalance.unit.test.ts +7 -1
  185. package/src/common-logic/index.ts +1 -0
  186. package/src/common-logic/transaction/craftTransaction.ts +1 -1
  187. package/src/common-logic/transaction/estimateFees.test.ts +10 -0
  188. package/src/common-logic/transaction/estimateFees.ts +1 -1
  189. package/src/common-logic/transaction/sign.test.ts +389 -0
  190. package/src/common-logic/transaction/sign.ts +59 -0
  191. package/src/common-logic/transaction/split.test.ts +50 -0
  192. package/src/common-logic/transaction/split.ts +101 -0
  193. package/src/common-logic/utils.test.ts +22 -30
  194. package/src/common-logic/utils.ts +2 -2
  195. package/src/network/gateway.integ.test.ts +5 -6
  196. package/src/network/gateway.ts +13 -10
  197. package/src/test/cantonTestUtils.ts +789 -24
  198. package/src/test/fixtures.ts +53 -0
  199. package/src/test/prepare-transfer-serialized.json +26 -0
  200. package/src/test/prepare-transfer.json +3298 -0
  201. package/src/types/bridge.ts +15 -2
  202. package/src/types/errors.ts +3 -0
  203. package/src/types/index.ts +1 -0
  204. package/src/types/signer.ts +21 -3
  205. package/src/types/transaction-proto.json +1238 -0
@@ -48,6 +48,7 @@ export type Transaction = TransactionCommon & {
48
48
  fee: BigNumber | null | undefined;
49
49
  memo?: string;
50
50
  tokenId: string;
51
+ expireInSeconds?: number;
51
52
  };
52
53
 
53
54
  export type TransactionRaw = TransactionCommonRaw & {
@@ -55,10 +56,22 @@ export type TransactionRaw = TransactionCommonRaw & {
55
56
  fee: string | null | undefined;
56
57
  memo?: string;
57
58
  tokenId: string;
59
+ expireInSeconds?: number;
58
60
  };
59
61
 
60
62
  export type TransactionStatus = TransactionStatusCommon;
61
63
  export type TransactionStatusRaw = TransactionStatusCommonRaw;
62
64
 
63
- export type CantonAccount = Account;
64
- export type CantonAccountRaw = AccountRaw;
65
+ export type CantonResources = {
66
+ instrumentUtxoCounts: Record<string, number>;
67
+ };
68
+ export type CantonResourcesRaw = {
69
+ instrumentUtxoCounts: Record<string, number>;
70
+ };
71
+
72
+ export type CantonAccount = Account & {
73
+ cantonResources: CantonResources;
74
+ };
75
+ export type CantonAccountRaw = AccountRaw & {
76
+ cantonResources: CantonResourcesRaw;
77
+ };
@@ -1,3 +1,6 @@
1
1
  import { createCustomErrorClass } from "@ledgerhq/errors";
2
2
 
3
3
  export const SimulationError = createCustomErrorClass("SimulationError");
4
+
5
+ export const TooManyUtxosCritical = createCustomErrorClass("TooManyUtxosCritical");
6
+ export const TooManyUtxosWarning = createCustomErrorClass("TooManyUtxosWarning");
@@ -1,3 +1,4 @@
1
1
  export * from "./bridge";
2
+ export * from "./errors";
2
3
  export * from "./onboard";
3
4
  export * from "./signer";
@@ -1,12 +1,30 @@
1
1
  export type CantonAddress = {
2
2
  publicKey: string;
3
3
  address: string;
4
- path: string; // TODO: check if necessary
4
+ path: string;
5
5
  };
6
6
 
7
- export type CantonSignature = string; // `0x${string}`
7
+ export type CantonSignature = {
8
+ signature: string;
9
+ applicationSignature?: string;
10
+ };
11
+
12
+ export interface CantonPreparedTransaction {
13
+ damlTransaction: Uint8Array;
14
+ nodes: Uint8Array[];
15
+ metadata: Uint8Array;
16
+ inputContracts: Uint8Array[];
17
+ }
18
+
19
+ export interface CantonUntypedVersionedMessage {
20
+ transactions: string[];
21
+ challenge?: string;
22
+ }
8
23
 
9
24
  export interface CantonSigner {
10
25
  getAddress(path: string, display?: boolean): Promise<CantonAddress>;
11
- signTransaction(path: string, rawTx: string): Promise<CantonSignature>;
26
+ signTransaction(
27
+ path: string,
28
+ data: CantonPreparedTransaction | CantonUntypedVersionedMessage | string,
29
+ ): Promise<CantonSignature>;
12
30
  }