saito-js 0.0.5 → 0.0.7
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.
- package/configs.js +2 -0
- package/configs.js.map +1 -0
- package/index.d.ts +5 -0
- package/index.d.ts.map +1 -0
- package/index.js +11 -0
- package/index.js.map +1 -0
- package/index.node.js +37 -0
- package/index.node.js.map +1 -0
- package/index.web.js +37 -0
- package/index.web.js.map +1 -0
- package/lib/block.js +33 -0
- package/lib/block.js.map +1 -0
- package/lib/blockchain.js +9 -0
- package/lib/blockchain.js.map +1 -0
- package/lib/custom/custom_shared_methods.js +70 -0
- package/lib/custom/custom_shared_methods.js.map +1 -0
- package/lib/custom/{shared_methods.web.ts → shared_methods.web.js} +31 -40
- package/lib/custom/shared_methods.web.js.map +1 -0
- package/lib/factory.js +28 -0
- package/lib/factory.js.map +1 -0
- package/lib/{peer.ts → peer.js} +12 -24
- package/lib/peer.js.map +1 -0
- package/lib/{saito_factory.ts → saito_factory.js} +2 -0
- package/lib/saito_factory.js.map +1 -0
- package/lib/{slip.ts → slip.js} +35 -63
- package/lib/slip.js.map +1 -0
- package/lib/{transaction.ts → transaction.js} +51 -76
- package/lib/transaction.js.map +1 -0
- package/lib/wallet.js +45 -0
- package/lib/wallet.js.map +1 -0
- package/package.json +2 -2
- package/{saito.ts → saito.js} +96 -198
- package/saito.js.map +1 -0
- package/shared_methods.js +2 -0
- package/shared_methods.js.map +1 -0
- package/tests/{index.test.ts → index.test.js} +2 -0
- package/tests/index.test.js.map +1 -0
- package/.github/workflows/publish.yml +0 -50
- package/.prettierrc.json +0 -3
- package/babel.config.json +0 -13
- package/configs.ts +0 -26
- package/dist/browser/index.js +0 -3669
- package/dist/server/index.js +0 -3731
- package/index.node.ts +0 -51
- package/index.web.ts +0 -47
- package/lib/block.ts +0 -42
- package/lib/blockchain.ts +0 -14
- package/lib/custom/custom_shared_methods.ts +0 -92
- package/lib/factory.ts +0 -32
- package/lib/wallet.ts +0 -61
- package/shared_methods.ts +0 -40
- package/tsconfig.json +0 -111
- package/tsconfig.testing.json +0 -19
- package/webpack.config.js +0 -136
- package/webpack.prod.config.js +0 -136
- /package/{dist/configs.d.ts → configs.d.ts} +0 -0
- /package/{dist/configs.d.ts.map → configs.d.ts.map} +0 -0
- /package/{dist/index.node.d.ts → index.node.d.ts} +0 -0
- /package/{dist/index.node.d.ts.map → index.node.d.ts.map} +0 -0
- /package/{dist/index.web.d.ts → index.web.d.ts} +0 -0
- /package/{dist/index.web.d.ts.map → index.web.d.ts.map} +0 -0
- /package/{dist/lib → lib}/block.d.ts +0 -0
- /package/{dist/lib → lib}/block.d.ts.map +0 -0
- /package/{dist/lib → lib}/blockchain.d.ts +0 -0
- /package/{dist/lib → lib}/blockchain.d.ts.map +0 -0
- /package/{dist/lib → lib}/custom/custom_shared_methods.d.ts +0 -0
- /package/{dist/lib → lib}/custom/custom_shared_methods.d.ts.map +0 -0
- /package/{dist/lib → lib}/custom/shared_methods.web.d.ts +0 -0
- /package/{dist/lib → lib}/custom/shared_methods.web.d.ts.map +0 -0
- /package/{dist/lib → lib}/factory.d.ts +0 -0
- /package/{dist/lib → lib}/factory.d.ts.map +0 -0
- /package/{dist/lib → lib}/peer.d.ts +0 -0
- /package/{dist/lib → lib}/peer.d.ts.map +0 -0
- /package/{dist/lib → lib}/saito_factory.d.ts +0 -0
- /package/{dist/lib → lib}/saito_factory.d.ts.map +0 -0
- /package/{dist/lib → lib}/slip.d.ts +0 -0
- /package/{dist/lib → lib}/slip.d.ts.map +0 -0
- /package/{dist/lib → lib}/transaction.d.ts +0 -0
- /package/{dist/lib → lib}/transaction.d.ts.map +0 -0
- /package/{dist/lib → lib}/wallet.d.ts +0 -0
- /package/{dist/lib → lib}/wallet.d.ts.map +0 -0
- /package/{dist/saito.d.ts → saito.d.ts} +0 -0
- /package/{dist/saito.d.ts.map → saito.d.ts.map} +0 -0
- /package/{dist/shared_methods.d.ts → shared_methods.d.ts} +0 -0
- /package/{dist/shared_methods.d.ts.map → shared_methods.d.ts.map} +0 -0
- /package/{dist/tests → tests}/index.test.d.ts +0 -0
- /package/{dist/tests → tests}/index.test.d.ts.map +0 -0
package/lib/{slip.ts → slip.js}
RENAMED
|
@@ -1,25 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
1
|
+
export var SlipType;
|
|
2
|
+
(function (SlipType) {
|
|
3
|
+
SlipType[SlipType["Normal"] = 0] = "Normal";
|
|
4
|
+
SlipType[SlipType["ATR"] = 1] = "ATR";
|
|
5
|
+
SlipType[SlipType["VipInput"] = 2] = "VipInput";
|
|
6
|
+
SlipType[SlipType["VipOutput"] = 3] = "VipOutput";
|
|
7
|
+
SlipType[SlipType["MinerInput"] = 4] = "MinerInput";
|
|
8
|
+
SlipType[SlipType["MinerOutput"] = 5] = "MinerOutput";
|
|
9
|
+
SlipType[SlipType["RouterInput"] = 6] = "RouterInput";
|
|
10
|
+
SlipType[SlipType["RouterOutput"] = 7] = "RouterOutput";
|
|
11
|
+
SlipType[SlipType["Other"] = 8] = "Other";
|
|
12
|
+
})(SlipType || (SlipType = {}));
|
|
15
13
|
export default class Slip {
|
|
16
|
-
|
|
17
|
-
public static Type: any;
|
|
18
|
-
|
|
19
|
-
public constructor(slip?: WasmSlip, json?: any) {
|
|
14
|
+
constructor(slip, json) {
|
|
20
15
|
if (!slip) {
|
|
21
16
|
this.slip = new Slip.Type();
|
|
22
|
-
}
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
23
19
|
this.slip = slip;
|
|
24
20
|
}
|
|
25
21
|
if (json) {
|
|
@@ -32,76 +28,52 @@ export default class Slip {
|
|
|
32
28
|
this.utxoKey = json.utxoKey;
|
|
33
29
|
}
|
|
34
30
|
}
|
|
35
|
-
|
|
36
|
-
public get wasmSlip(): WasmSlip {
|
|
31
|
+
get wasmSlip() {
|
|
37
32
|
return this.slip;
|
|
38
33
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return this.slip.slip_type as SlipType;
|
|
34
|
+
get type() {
|
|
35
|
+
return this.slip.slip_type;
|
|
42
36
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
this.slip.slip_type = type as number;
|
|
37
|
+
set type(type) {
|
|
38
|
+
this.slip.slip_type = type;
|
|
46
39
|
}
|
|
47
|
-
|
|
48
|
-
public get amount(): bigint {
|
|
40
|
+
get amount() {
|
|
49
41
|
return this.slip.amount;
|
|
50
42
|
}
|
|
51
|
-
|
|
52
|
-
public set amount(amount: bigint | number) {
|
|
43
|
+
set amount(amount) {
|
|
53
44
|
this.slip.amount = BigInt(amount);
|
|
54
45
|
}
|
|
55
|
-
|
|
56
|
-
public get publicKey(): string {
|
|
46
|
+
get publicKey() {
|
|
57
47
|
return this.slip.public_key;
|
|
58
48
|
}
|
|
59
|
-
|
|
60
|
-
public set publicKey(key: string) {
|
|
49
|
+
set publicKey(key) {
|
|
61
50
|
this.slip.public_key = key;
|
|
62
51
|
}
|
|
63
|
-
|
|
64
|
-
public set index(index: number) {
|
|
52
|
+
set index(index) {
|
|
65
53
|
this.slip.slip_index = index;
|
|
66
54
|
}
|
|
67
|
-
|
|
68
|
-
public get index(): number {
|
|
55
|
+
get index() {
|
|
69
56
|
return this.slip.slip_index;
|
|
70
57
|
}
|
|
71
|
-
|
|
72
|
-
public set blockId(id: bigint) {
|
|
58
|
+
set blockId(id) {
|
|
73
59
|
this.slip.block_id = id;
|
|
74
60
|
}
|
|
75
|
-
|
|
76
|
-
public get blockId(): bigint {
|
|
61
|
+
get blockId() {
|
|
77
62
|
return this.slip.block_id;
|
|
78
63
|
}
|
|
79
|
-
|
|
80
|
-
public set txOrdinal(ordinal: bigint) {
|
|
64
|
+
set txOrdinal(ordinal) {
|
|
81
65
|
this.slip.tx_ordinal = ordinal;
|
|
82
66
|
}
|
|
83
|
-
|
|
84
|
-
public get txOrdinal(): bigint {
|
|
67
|
+
get txOrdinal() {
|
|
85
68
|
return this.slip.tx_ordinal;
|
|
86
69
|
}
|
|
87
|
-
|
|
88
|
-
public set utxoKey(key: string) {
|
|
70
|
+
set utxoKey(key) {
|
|
89
71
|
this.slip.utxo_key = key;
|
|
90
72
|
}
|
|
91
|
-
|
|
92
|
-
public get utxoKey(): string {
|
|
73
|
+
get utxoKey() {
|
|
93
74
|
return this.slip.utxo_key;
|
|
94
75
|
}
|
|
95
|
-
|
|
96
|
-
public toJson(): {
|
|
97
|
-
blockId: bigint;
|
|
98
|
-
utxoKey: string;
|
|
99
|
-
amount: bigint;
|
|
100
|
-
index: number;
|
|
101
|
-
publicKey: string;
|
|
102
|
-
txOrdinal: bigint;
|
|
103
|
-
type: any;
|
|
104
|
-
} {
|
|
76
|
+
toJson() {
|
|
105
77
|
return {
|
|
106
78
|
publicKey: this.publicKey,
|
|
107
79
|
type: this.type,
|
|
@@ -112,8 +84,8 @@ export default class Slip {
|
|
|
112
84
|
utxoKey: this.utxoKey,
|
|
113
85
|
};
|
|
114
86
|
}
|
|
115
|
-
|
|
116
|
-
public clone() {
|
|
87
|
+
clone() {
|
|
117
88
|
return new Slip(undefined, this.toJson());
|
|
118
89
|
}
|
|
119
90
|
}
|
|
91
|
+
//# sourceMappingURL=slip.js.map
|
package/lib/slip.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slip.js","sourceRoot":"","sources":["../../lib/slip.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,QAUX;AAVD,WAAY,QAAQ;IAChB,2CAAU,CAAA;IACV,qCAAO,CAAA;IACP,+CAAY,CAAA;IACZ,iDAAa,CAAA;IACb,mDAAc,CAAA;IACd,qDAAe,CAAA;IACf,qDAAe,CAAA;IACf,uDAAgB,CAAA;IAChB,yCAAS,CAAA;AACb,CAAC,EAVW,QAAQ,KAAR,QAAQ,QAUnB;AAED,MAAM,CAAC,OAAO,OAAO,IAAI;IAIrB,YAAmB,IAAe,EAAE,IAAU;QAC1C,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;SAC/B;aAAM;YACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;SACpB;QACD,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;SAC/B;IACL,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,SAAqB,CAAC;IAC3C,CAAC;IAED,IAAW,IAAI,CAAC,IAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAc,CAAC;IACzC,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,IAAW,MAAM,CAAC,MAAuB;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,IAAW,SAAS,CAAC,GAAW;QAC5B,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;IAC/B,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,IAAW,OAAO,CAAC,EAAU;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,IAAW,SAAS,CAAC,OAAe;QAChC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;IACnC,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,IAAW,OAAO,CAAC,GAAW;QAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;IAC7B,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAEM,MAAM;QAST,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC;IACN,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,CAAC;CACJ"}
|
|
@@ -1,29 +1,24 @@
|
|
|
1
|
-
import type {WasmTransaction} from "saito-wasm/dist/types/pkg/node/index_bg";
|
|
2
1
|
import Slip from "./slip";
|
|
3
2
|
import Saito from "../saito";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
3
|
+
export var TransactionType;
|
|
4
|
+
(function (TransactionType) {
|
|
5
|
+
TransactionType[TransactionType["Normal"] = 0] = "Normal";
|
|
6
|
+
TransactionType[TransactionType["Fee"] = 1] = "Fee";
|
|
7
|
+
TransactionType[TransactionType["GoldenTicket"] = 2] = "GoldenTicket";
|
|
8
|
+
TransactionType[TransactionType["ATR"] = 3] = "ATR";
|
|
9
|
+
TransactionType[TransactionType["Vip"] = 4] = "Vip";
|
|
10
|
+
TransactionType[TransactionType["SPV"] = 5] = "SPV";
|
|
11
|
+
TransactionType[TransactionType["Issuance"] = 6] = "Issuance";
|
|
12
|
+
TransactionType[TransactionType["Other"] = 7] = "Other";
|
|
13
|
+
})(TransactionType || (TransactionType = {}));
|
|
17
14
|
export default class Transaction {
|
|
18
|
-
protected tx: WasmTransaction;
|
|
19
|
-
public static Type: any;
|
|
20
|
-
public msg: any = {};
|
|
21
|
-
|
|
22
15
|
// TODO : factory pattern might be useful here to remove unnecessary wrappings
|
|
23
|
-
constructor(tx
|
|
16
|
+
constructor(tx, json) {
|
|
17
|
+
this.msg = {};
|
|
24
18
|
if (tx) {
|
|
25
19
|
this.tx = tx;
|
|
26
|
-
}
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
27
22
|
this.tx = new Transaction.Type();
|
|
28
23
|
}
|
|
29
24
|
if (json) {
|
|
@@ -42,92 +37,71 @@ export default class Transaction {
|
|
|
42
37
|
this.txs_replacements = json.txs_replacements;
|
|
43
38
|
}
|
|
44
39
|
}
|
|
45
|
-
|
|
46
|
-
public get wasmTransaction(): WasmTransaction {
|
|
40
|
+
get wasmTransaction() {
|
|
47
41
|
return this.tx;
|
|
48
42
|
}
|
|
49
|
-
|
|
50
|
-
public addFromSlip(slip: Slip) {
|
|
43
|
+
addFromSlip(slip) {
|
|
51
44
|
this.tx.add_from_slip(slip.wasmSlip);
|
|
52
45
|
}
|
|
53
|
-
|
|
54
|
-
public addToSlip(slip: Slip) {
|
|
46
|
+
addToSlip(slip) {
|
|
55
47
|
this.tx.add_to_slip(slip.wasmSlip);
|
|
56
48
|
}
|
|
57
|
-
|
|
58
|
-
public get to(): Array<Slip> {
|
|
49
|
+
get to() {
|
|
59
50
|
return this.tx.to.map((slip) => {
|
|
60
51
|
return Saito.getInstance().factory.createSlip(slip);
|
|
61
52
|
});
|
|
62
53
|
}
|
|
63
|
-
|
|
64
|
-
public get from(): Array<Slip> {
|
|
54
|
+
get from() {
|
|
65
55
|
return this.tx.from.map((slip) => {
|
|
66
56
|
return Saito.getInstance().factory.createSlip(slip);
|
|
67
57
|
});
|
|
68
58
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
return this.tx.type as TransactionType;
|
|
59
|
+
get type() {
|
|
60
|
+
return this.tx.type;
|
|
72
61
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
this.tx.type = type as number;
|
|
62
|
+
set type(type) {
|
|
63
|
+
this.tx.type = type;
|
|
76
64
|
}
|
|
77
|
-
|
|
78
|
-
public get timestamp(): number {
|
|
65
|
+
get timestamp() {
|
|
79
66
|
return Number(this.tx.timestamp);
|
|
80
67
|
}
|
|
81
|
-
|
|
82
|
-
public set timestamp(timestamp: bigint | number) {
|
|
68
|
+
set timestamp(timestamp) {
|
|
83
69
|
this.tx.timestamp = BigInt(timestamp);
|
|
84
70
|
}
|
|
85
|
-
|
|
86
|
-
public set signature(sig: string) {
|
|
71
|
+
set signature(sig) {
|
|
87
72
|
this.tx.signature = sig;
|
|
88
73
|
}
|
|
89
|
-
|
|
90
|
-
public get signature(): string {
|
|
74
|
+
get signature() {
|
|
91
75
|
return this.tx.signature;
|
|
92
76
|
}
|
|
93
|
-
|
|
94
|
-
public set data(buffer: Uint8Array) {
|
|
77
|
+
set data(buffer) {
|
|
95
78
|
this.tx.data = buffer;
|
|
96
79
|
}
|
|
97
|
-
|
|
98
|
-
public get data(): Uint8Array {
|
|
80
|
+
get data() {
|
|
99
81
|
return this.tx.data;
|
|
100
82
|
}
|
|
101
|
-
|
|
102
|
-
public set txs_replacements(r: number) {
|
|
83
|
+
set txs_replacements(r) {
|
|
103
84
|
this.tx.txs_replacements = r;
|
|
104
85
|
}
|
|
105
|
-
|
|
106
|
-
public get txs_replacements(): number {
|
|
86
|
+
get txs_replacements() {
|
|
107
87
|
return this.tx.txs_replacements;
|
|
108
88
|
}
|
|
109
|
-
|
|
110
|
-
public get total_fees(): bigint {
|
|
89
|
+
get total_fees() {
|
|
111
90
|
return this.tx.total_fees;
|
|
112
91
|
}
|
|
113
|
-
|
|
114
|
-
public async sign() {
|
|
92
|
+
async sign() {
|
|
115
93
|
return this.tx.sign();
|
|
116
94
|
}
|
|
117
|
-
|
|
118
|
-
public async signAndEncrypt() {
|
|
95
|
+
async signAndEncrypt() {
|
|
119
96
|
return this.tx.sign_and_encrypt();
|
|
120
97
|
}
|
|
121
|
-
|
|
122
|
-
public isFrom(key: string): boolean {
|
|
98
|
+
isFrom(key) {
|
|
123
99
|
return this.tx.is_from(key);
|
|
124
100
|
}
|
|
125
|
-
|
|
126
|
-
public isTo(key: string): boolean {
|
|
101
|
+
isTo(key) {
|
|
127
102
|
return this.tx.is_to(key);
|
|
128
103
|
}
|
|
129
|
-
|
|
130
|
-
public toJson() {
|
|
104
|
+
toJson() {
|
|
131
105
|
this.packData();
|
|
132
106
|
return {
|
|
133
107
|
to: this.to.map((slip) => slip.toJson()),
|
|
@@ -140,36 +114,36 @@ export default class Transaction {
|
|
|
140
114
|
total_fees: this.total_fees,
|
|
141
115
|
};
|
|
142
116
|
}
|
|
143
|
-
|
|
144
|
-
public static deserialize(buffer: Uint8Array, factory: Factory): Transaction | null {
|
|
117
|
+
static deserialize(buffer, factory) {
|
|
145
118
|
try {
|
|
146
119
|
let wasmTx = Transaction.Type.deserialize(buffer);
|
|
147
120
|
return factory.createTransaction(wasmTx);
|
|
148
|
-
}
|
|
121
|
+
}
|
|
122
|
+
catch (e) {
|
|
149
123
|
console.debug(e);
|
|
150
124
|
return null;
|
|
151
125
|
}
|
|
152
126
|
}
|
|
153
|
-
|
|
154
|
-
public serialize(): Uint8Array {
|
|
127
|
+
serialize() {
|
|
155
128
|
return this.tx.serialize();
|
|
156
129
|
}
|
|
157
|
-
|
|
158
|
-
public packData() {
|
|
130
|
+
packData() {
|
|
159
131
|
if (Object.keys(this.msg).length === 0) {
|
|
160
132
|
this.data = new Uint8Array(Buffer.alloc(0));
|
|
161
|
-
}
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
162
135
|
this.data = new Uint8Array(Buffer.from(JSON.stringify(this.msg), "utf-8"));
|
|
163
136
|
}
|
|
164
137
|
}
|
|
165
|
-
|
|
166
|
-
public unpackData() {
|
|
138
|
+
unpackData() {
|
|
167
139
|
if (this.data.byteLength === 0) {
|
|
168
140
|
this.msg = {};
|
|
169
|
-
}
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
170
143
|
try {
|
|
171
144
|
this.msg = JSON.parse(Buffer.from(this.data).toString("utf-8"));
|
|
172
|
-
}
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
173
147
|
console.log("failed parsing tx buffer into msg");
|
|
174
148
|
console.error(error);
|
|
175
149
|
this.msg = {};
|
|
@@ -177,3 +151,4 @@ export default class Transaction {
|
|
|
177
151
|
}
|
|
178
152
|
}
|
|
179
153
|
}
|
|
154
|
+
//# sourceMappingURL=transaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../lib/transaction.ts"],"names":[],"mappings":"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"}
|
package/lib/wallet.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import Saito from "../saito";
|
|
2
|
+
export const DefaultEmptyPrivateKey = "0000000000000000000000000000000000000000000000000000000000000000";
|
|
3
|
+
export const DefaultEmptyPublicKey = "000000000000000000000000000000000000000000000000000000000000000000";
|
|
4
|
+
export default class Wallet {
|
|
5
|
+
constructor(wallet) {
|
|
6
|
+
this.wallet = wallet;
|
|
7
|
+
}
|
|
8
|
+
async save() {
|
|
9
|
+
return this.wallet.save();
|
|
10
|
+
}
|
|
11
|
+
async load() {
|
|
12
|
+
return this.wallet.load();
|
|
13
|
+
}
|
|
14
|
+
async reset() {
|
|
15
|
+
return this.wallet.reset();
|
|
16
|
+
}
|
|
17
|
+
async getPublicKey() {
|
|
18
|
+
let key = await this.wallet.get_public_key();
|
|
19
|
+
return key === DefaultEmptyPublicKey ? "" : key;
|
|
20
|
+
}
|
|
21
|
+
async setPublicKey(key) {
|
|
22
|
+
if (key === "") {
|
|
23
|
+
key = DefaultEmptyPublicKey;
|
|
24
|
+
}
|
|
25
|
+
return this.wallet.set_public_key(key);
|
|
26
|
+
}
|
|
27
|
+
async getPrivateKey() {
|
|
28
|
+
let key = await this.wallet.get_private_key();
|
|
29
|
+
return key === DefaultEmptyPrivateKey ? "" : key;
|
|
30
|
+
}
|
|
31
|
+
async setPrivateKey(key) {
|
|
32
|
+
if (key === "") {
|
|
33
|
+
key = DefaultEmptyPrivateKey;
|
|
34
|
+
}
|
|
35
|
+
return this.wallet.set_private_key(key);
|
|
36
|
+
}
|
|
37
|
+
async getBalance() {
|
|
38
|
+
return this.wallet.get_balance();
|
|
39
|
+
}
|
|
40
|
+
async getPendingTxs() {
|
|
41
|
+
let txs = await this.wallet.get_pending_txs();
|
|
42
|
+
return txs.map((tx) => Saito.getInstance().factory.createTransaction(tx));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=wallet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../lib/wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,UAAU,CAAC;AAE7B,MAAM,CAAC,MAAM,sBAAsB,GACjC,kEAAkE,CAAC;AACrE,MAAM,CAAC,MAAM,qBAAqB,GAChC,oEAAoE,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,MAAM;IAIzB,YAAY,MAAkB;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC7C,OAAO,GAAG,KAAK,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,GAAW;QACnC,IAAI,GAAG,KAAK,EAAE,EAAE;YACd,GAAG,GAAG,qBAAqB,CAAC;SAC7B;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,aAAa;QACxB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,GAAG,KAAK,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,GAAW;QACpC,IAAI,GAAG,KAAK,EAAE,EAAE;YACd,GAAG,GAAG,sBAAsB,CAAC;SAC9B;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,aAAa;QACxB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "saito-js",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "js wrappings around saito-core using wasm",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "env TS_NODE_PROJECT=\"tsconfig.testing.json\" mocha --require ts-node/register 'tests/**/*.ts'",
|
|
7
7
|
"build prod": "webpack --config webpack.prod.config.js",
|
|
8
|
-
"build": "
|
|
8
|
+
"build": "tsc",
|
|
9
9
|
"serve": "webpack-dev-server"
|
|
10
10
|
},
|
|
11
11
|
"author": "",
|