@ton/ton 13.5.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 (80) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/LICENSE +9 -0
  3. package/README.md +78 -0
  4. package/dist/client/TonClient.d.ts +231 -0
  5. package/dist/client/TonClient.js +392 -0
  6. package/dist/client/TonClient.spec.d.ts +1 -0
  7. package/dist/client/TonClient.spec.js +37 -0
  8. package/dist/client/TonClient4.d.ts +289 -0
  9. package/dist/client/TonClient4.js +514 -0
  10. package/dist/client/TonClient4.spec.d.ts +1 -0
  11. package/dist/client/TonClient4.spec.js +36 -0
  12. package/dist/client/api/HttpApi.d.ts +632 -0
  13. package/dist/client/api/HttpApi.js +297 -0
  14. package/dist/client/api/TonCache.d.ts +16 -0
  15. package/dist/client/api/TonCache.js +33 -0
  16. package/dist/index.d.ts +24 -0
  17. package/dist/index.js +68 -0
  18. package/dist/jetton/JettonMaster.d.ts +21 -0
  19. package/dist/jetton/JettonMaster.js +39 -0
  20. package/dist/jetton/JettonMaster.spec.d.ts +8 -0
  21. package/dist/jetton/JettonMaster.spec.js +27 -0
  22. package/dist/jetton/JettonWallet.d.ts +14 -0
  23. package/dist/jetton/JettonWallet.js +27 -0
  24. package/dist/multisig/MultisigOrder.d.ts +17 -0
  25. package/dist/multisig/MultisigOrder.js +73 -0
  26. package/dist/multisig/MultisigOrder.spec.d.ts +1 -0
  27. package/dist/multisig/MultisigOrder.spec.js +139 -0
  28. package/dist/multisig/MultisigOrderBuilder.d.ts +13 -0
  29. package/dist/multisig/MultisigOrderBuilder.js +37 -0
  30. package/dist/multisig/MultisigWallet.d.ts +26 -0
  31. package/dist/multisig/MultisigWallet.js +120 -0
  32. package/dist/multisig/MultisigWallet.spec.d.ts +1 -0
  33. package/dist/multisig/MultisigWallet.spec.js +230 -0
  34. package/dist/utils/createTestClient.d.ts +9 -0
  35. package/dist/utils/createTestClient.js +18 -0
  36. package/dist/utils/createTestClient4.d.ts +9 -0
  37. package/dist/utils/createTestClient4.js +15 -0
  38. package/dist/utils/maybe.d.ts +8 -0
  39. package/dist/utils/maybe.js +9 -0
  40. package/dist/utils/randomTestKey.d.ts +8 -0
  41. package/dist/utils/randomTestKey.js +24 -0
  42. package/dist/utils/time.d.ts +15 -0
  43. package/dist/utils/time.js +63 -0
  44. package/dist/utils/toUrlSafe.d.ts +8 -0
  45. package/dist/utils/toUrlSafe.js +23 -0
  46. package/dist/wallets/WalletContractV1R1.d.ts +58 -0
  47. package/dist/wallets/WalletContractV1R1.js +100 -0
  48. package/dist/wallets/WalletContractV1R1.spec.d.ts +8 -0
  49. package/dist/wallets/WalletContractV1R1.spec.js +44 -0
  50. package/dist/wallets/WalletContractV1R2.d.ts +58 -0
  51. package/dist/wallets/WalletContractV1R2.js +101 -0
  52. package/dist/wallets/WalletContractV1R2.spec.d.ts +8 -0
  53. package/dist/wallets/WalletContractV1R2.spec.js +44 -0
  54. package/dist/wallets/WalletContractV1R3.d.ts +58 -0
  55. package/dist/wallets/WalletContractV1R3.js +101 -0
  56. package/dist/wallets/WalletContractV1R3.spec.d.ts +8 -0
  57. package/dist/wallets/WalletContractV1R3.spec.js +44 -0
  58. package/dist/wallets/WalletContractV2R1.d.ts +60 -0
  59. package/dist/wallets/WalletContractV2R1.js +102 -0
  60. package/dist/wallets/WalletContractV2R1.spec.d.ts +8 -0
  61. package/dist/wallets/WalletContractV2R1.spec.js +44 -0
  62. package/dist/wallets/WalletContractV2R2.d.ts +60 -0
  63. package/dist/wallets/WalletContractV2R2.js +102 -0
  64. package/dist/wallets/WalletContractV2R2.spec.d.ts +8 -0
  65. package/dist/wallets/WalletContractV2R2.spec.js +44 -0
  66. package/dist/wallets/WalletContractV3R1.d.ts +62 -0
  67. package/dist/wallets/WalletContractV3R1.js +111 -0
  68. package/dist/wallets/WalletContractV3R1.spec.d.ts +8 -0
  69. package/dist/wallets/WalletContractV3R1.spec.js +44 -0
  70. package/dist/wallets/WalletContractV3R2.d.ts +62 -0
  71. package/dist/wallets/WalletContractV3R2.js +111 -0
  72. package/dist/wallets/WalletContractV3R2.spec.d.ts +8 -0
  73. package/dist/wallets/WalletContractV3R2.spec.js +44 -0
  74. package/dist/wallets/WalletContractV4.d.ts +62 -0
  75. package/dist/wallets/WalletContractV4.js +112 -0
  76. package/dist/wallets/WalletContractV4.spec.d.ts +8 -0
  77. package/dist/wallets/WalletContractV4.spec.js +48 -0
  78. package/dist/wallets/signing/createWalletTransfer.d.ts +39 -0
  79. package/dist/wallets/signing/createWalletTransfer.js +122 -0
  80. package/package.json +68 -0
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Whales Corp.
4
+ * All Rights Reserved.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.createWalletTransferV4 = exports.createWalletTransferV3 = exports.createWalletTransferV2 = exports.createWalletTransferV1 = void 0;
11
+ const core_1 = require("@ton/core");
12
+ const crypto_1 = require("@ton/crypto");
13
+ function createWalletTransferV1(args) {
14
+ // Create message
15
+ let signingMessage = (0, core_1.beginCell)()
16
+ .storeUint(args.seqno, 32);
17
+ if (args.message) {
18
+ signingMessage.storeUint(args.sendMode, 8);
19
+ signingMessage.storeRef((0, core_1.beginCell)().store((0, core_1.storeMessageRelaxed)(args.message)));
20
+ }
21
+ // Sign message
22
+ let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey);
23
+ // Body
24
+ const body = (0, core_1.beginCell)()
25
+ .storeBuffer(signature)
26
+ .storeBuilder(signingMessage)
27
+ .endCell();
28
+ return body;
29
+ }
30
+ exports.createWalletTransferV1 = createWalletTransferV1;
31
+ function createWalletTransferV2(args) {
32
+ // Check number of messages
33
+ if (args.messages.length > 4) {
34
+ throw Error("Maximum number of messages in a single transfer is 4");
35
+ }
36
+ // Create message
37
+ let signingMessage = (0, core_1.beginCell)()
38
+ .storeUint(args.seqno, 32);
39
+ if (args.seqno === 0) {
40
+ for (let i = 0; i < 32; i++) {
41
+ signingMessage.storeBit(1);
42
+ }
43
+ }
44
+ else {
45
+ signingMessage.storeUint(args.timeout || Math.floor(Date.now() / 1e3) + 60, 32); // Default timeout: 60 seconds
46
+ }
47
+ for (let m of args.messages) {
48
+ signingMessage.storeUint(args.sendMode, 8);
49
+ signingMessage.storeRef((0, core_1.beginCell)().store((0, core_1.storeMessageRelaxed)(m)));
50
+ }
51
+ // Sign message
52
+ let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey);
53
+ // Body
54
+ const body = (0, core_1.beginCell)()
55
+ .storeBuffer(signature)
56
+ .storeBuilder(signingMessage)
57
+ .endCell();
58
+ return body;
59
+ }
60
+ exports.createWalletTransferV2 = createWalletTransferV2;
61
+ function createWalletTransferV3(args) {
62
+ // Check number of messages
63
+ if (args.messages.length > 4) {
64
+ throw Error("Maximum number of messages in a single transfer is 4");
65
+ }
66
+ // Create message to sign
67
+ let signingMessage = (0, core_1.beginCell)()
68
+ .storeUint(args.walletId, 32);
69
+ if (args.seqno === 0) {
70
+ for (let i = 0; i < 32; i++) {
71
+ signingMessage.storeBit(1);
72
+ }
73
+ }
74
+ else {
75
+ signingMessage.storeUint(args.timeout || Math.floor(Date.now() / 1e3) + 60, 32); // Default timeout: 60 seconds
76
+ }
77
+ signingMessage.storeUint(args.seqno, 32);
78
+ for (let m of args.messages) {
79
+ signingMessage.storeUint(args.sendMode, 8);
80
+ signingMessage.storeRef((0, core_1.beginCell)().store((0, core_1.storeMessageRelaxed)(m)));
81
+ }
82
+ // Sign message
83
+ let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey);
84
+ // Body
85
+ const body = (0, core_1.beginCell)()
86
+ .storeBuffer(signature)
87
+ .storeBuilder(signingMessage)
88
+ .endCell();
89
+ return body;
90
+ }
91
+ exports.createWalletTransferV3 = createWalletTransferV3;
92
+ function createWalletTransferV4(args) {
93
+ // Check number of messages
94
+ if (args.messages.length > 4) {
95
+ throw Error("Maximum number of messages in a single transfer is 4");
96
+ }
97
+ let signingMessage = (0, core_1.beginCell)()
98
+ .storeUint(args.walletId, 32);
99
+ if (args.seqno === 0) {
100
+ for (let i = 0; i < 32; i++) {
101
+ signingMessage.storeBit(1);
102
+ }
103
+ }
104
+ else {
105
+ signingMessage.storeUint(args.timeout || Math.floor(Date.now() / 1e3) + 60, 32); // Default timeout: 60 seconds
106
+ }
107
+ signingMessage.storeUint(args.seqno, 32);
108
+ signingMessage.storeUint(0, 8); // Simple order
109
+ for (let m of args.messages) {
110
+ signingMessage.storeUint(args.sendMode, 8);
111
+ signingMessage.storeRef((0, core_1.beginCell)().store((0, core_1.storeMessageRelaxed)(m)));
112
+ }
113
+ // Sign message
114
+ let signature = (0, crypto_1.sign)(signingMessage.endCell().hash(), args.secretKey);
115
+ // Body
116
+ const body = (0, core_1.beginCell)()
117
+ .storeBuffer(signature)
118
+ .storeBuilder(signingMessage)
119
+ .endCell();
120
+ return body;
121
+ }
122
+ exports.createWalletTransferV4 = createWalletTransferV4;
package/package.json ADDED
@@ -0,0 +1,68 @@
1
+ {
2
+ "name": "@ton/ton",
3
+ "version": "13.5.1",
4
+ "repository": "https://github.com/ton-org/ton.git",
5
+ "author": "Whales Corp. <developers@whalescorp.com>",
6
+ "license": "MIT",
7
+ "main": "dist/index.js",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "scripts": {
12
+ "docs": "rm -fr docs && typedoc src/index.ts",
13
+ "build": "rm -fr dist && tsc --declaration",
14
+ "test": "jest --verbose --runInBand",
15
+ "release": "yarn build && yarn release-it --npm.yarn1"
16
+ },
17
+ "devDependencies": {
18
+ "@release-it/keep-a-changelog": "^3.1.0",
19
+ "@ton/core": "^0.49.2",
20
+ "@ton/crypto": "3.2.0",
21
+ "@ton/emulator": "^2.1.1",
22
+ "@types/jest": "^27.0.1",
23
+ "@types/node": "^16.7.10",
24
+ "buffer": "^6.0.3",
25
+ "expect": "^27.1.0",
26
+ "jest": "^27.1.0",
27
+ "jest-mock": "^27.1.0",
28
+ "karma": "^6.3.4",
29
+ "karma-chrome-launcher": "^3.1.0",
30
+ "karma-jasmine": "^4.0.1",
31
+ "karma-typescript": "^5.5.2",
32
+ "karma-webpack": "^5.0.0",
33
+ "prando": "^6.0.1",
34
+ "release-it": "^15.5.1",
35
+ "ts-jest": "^27.0.5",
36
+ "ts-loader": "^9.2.5",
37
+ "ts-node": "^10.7.0",
38
+ "typedoc": "^0.23.24",
39
+ "typescript": "^4.4.2",
40
+ "webpack": "^5.51.2"
41
+ },
42
+ "dependencies": {
43
+ "axios": "^0.25.0",
44
+ "dataloader": "^2.0.0",
45
+ "symbol.inspect": "1.0.1",
46
+ "teslabot": "^1.3.0",
47
+ "zod": "^3.21.4"
48
+ },
49
+ "peerDependencies": {
50
+ "@ton/core": ">=0.49.2",
51
+ "@ton/crypto": ">=3.2.0"
52
+ },
53
+ "publishConfig": {
54
+ "access": "public",
55
+ "registry": "https://registry.npmjs.org/"
56
+ },
57
+ "release-it": {
58
+ "github": {
59
+ "release": true
60
+ },
61
+ "plugins": {
62
+ "@release-it/keep-a-changelog": {
63
+ "filename": "CHANGELOG.md"
64
+ }
65
+ }
66
+ },
67
+ "packageManager": "yarn@3.4.1"
68
+ }