@mainsail/transactions 0.0.1-evm.5 → 0.0.1-evm.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/distribution/handlers/handler-provider.d.ts +0 -1
- package/distribution/handlers/handler-provider.d.ts.map +1 -1
- package/distribution/handlers/handler-provider.js +2 -44
- package/distribution/handlers/handler-provider.js.map +1 -1
- package/distribution/handlers/handler-registry.d.ts +2 -2
- package/distribution/handlers/handler-registry.d.ts.map +1 -1
- package/distribution/handlers/handler-registry.js +6 -15
- package/distribution/handlers/handler-registry.js.map +1 -1
- package/distribution/handlers/transaction.d.ts +0 -2
- package/distribution/handlers/transaction.d.ts.map +1 -1
- package/distribution/handlers/transaction.js +2 -11
- package/distribution/handlers/transaction.js.map +1 -1
- package/distribution/transaction-validator.js +1 -1
- package/distribution/transaction-validator.js.map +1 -1
- package/package.json +6 -9
@@ -2,7 +2,6 @@ import { Contracts } from "@mainsail/contracts";
|
|
2
2
|
export declare class TransactionHandlerProvider implements Contracts.Transactions.TransactionHandlerProvider {
|
3
3
|
#private;
|
4
4
|
private readonly handlerConstructors;
|
5
|
-
private readonly transactionRegistry;
|
6
5
|
isRegistrationRequired(): boolean;
|
7
6
|
registerHandlers(): void;
|
8
7
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"handler-provider.d.ts","sourceRoot":"","sources":["../../source/handlers/handler-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,
|
1
|
+
{"version":3,"file":"handler-provider.d.ts","sourceRoot":"","sources":["../../source/handlers/handler-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAK7D,qBACa,0BAA2B,YAAW,SAAS,CAAC,YAAY,CAAC,0BAA0B;;IAEnG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmC;IAKhE,sBAAsB,IAAI,OAAO;IAIjC,gBAAgB,IAAI,IAAI;CAc/B"}
|
@@ -18,11 +18,9 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
18
18
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
19
19
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
20
20
|
};
|
21
|
-
var _TransactionHandlerProvider_instances, _TransactionHandlerProvider_registered, _TransactionHandlerProvider_handlerDependencyLookup, _TransactionHandlerProvider_registerHandler
|
21
|
+
var _TransactionHandlerProvider_instances, _TransactionHandlerProvider_registered, _TransactionHandlerProvider_handlerDependencyLookup, _TransactionHandlerProvider_registerHandler;
|
22
22
|
import { inject, injectable } from "@mainsail/container";
|
23
|
-
import {
|
24
|
-
import { InternalTransactionType } from "@mainsail/crypto-transaction";
|
25
|
-
import { Utils } from "@mainsail/kernel";
|
23
|
+
import { Identifiers } from "@mainsail/contracts";
|
26
24
|
let TransactionHandlerProvider = class TransactionHandlerProvider {
|
27
25
|
constructor() {
|
28
26
|
_TransactionHandlerProvider_instances.add(this);
|
@@ -46,51 +44,11 @@ _TransactionHandlerProvider_registerHandler = function _TransactionHandlerProvid
|
|
46
44
|
const handler = new handlerConstructor();
|
47
45
|
const transactionConstructor = handler.getConstructor();
|
48
46
|
__classPrivateFieldGet(this, _TransactionHandlerProvider_handlerDependencyLookup, "f").add(transactionConstructor);
|
49
|
-
Utils.assert.defined(transactionConstructor.type);
|
50
|
-
Utils.assert.defined(transactionConstructor.typeGroup);
|
51
|
-
const internalType = InternalTransactionType.from(transactionConstructor.type, transactionConstructor.typeGroup);
|
52
|
-
if (__classPrivateFieldGet(this, _TransactionHandlerProvider_instances, "m", _TransactionHandlerProvider_hasOtherHandlerHandling).call(this, handlerConstructor, internalType, transactionConstructor.version)) {
|
53
|
-
throw new Exceptions.AlreadyRegisteredError(internalType);
|
54
|
-
}
|
55
|
-
for (const dependency of handler.dependencies()) {
|
56
|
-
if (__classPrivateFieldGet(this, _TransactionHandlerProvider_instances, "m", _TransactionHandlerProvider_hasOtherHandler).call(this, dependency) === false) {
|
57
|
-
throw new Exceptions.UnsatisfiedDependencyError(internalType);
|
58
|
-
}
|
59
|
-
}
|
60
|
-
if (transactionConstructor.typeGroup !== Contracts.Crypto.TransactionTypeGroup.Core) {
|
61
|
-
this.transactionRegistry.registerTransactionType(transactionConstructor);
|
62
|
-
}
|
63
|
-
};
|
64
|
-
_TransactionHandlerProvider_hasOtherHandlerHandling = function _TransactionHandlerProvider_hasOtherHandlerHandling(handlerConstructor, internalType, version) {
|
65
|
-
for (const otherHandlerConstructor of this.handlerConstructors) {
|
66
|
-
if (otherHandlerConstructor === handlerConstructor) {
|
67
|
-
continue;
|
68
|
-
}
|
69
|
-
const otherHandler = new otherHandlerConstructor();
|
70
|
-
const otherTransactionConstructor = otherHandler.getConstructor();
|
71
|
-
Utils.assert.defined(otherTransactionConstructor.type);
|
72
|
-
Utils.assert.defined(otherTransactionConstructor.typeGroup);
|
73
|
-
const otherInternalType = InternalTransactionType.from(otherTransactionConstructor.type, otherTransactionConstructor.typeGroup);
|
74
|
-
if (otherInternalType === internalType && otherTransactionConstructor.version === version) {
|
75
|
-
return true;
|
76
|
-
}
|
77
|
-
}
|
78
|
-
return false;
|
79
|
-
};
|
80
|
-
_TransactionHandlerProvider_hasOtherHandler = function _TransactionHandlerProvider_hasOtherHandler(dependencyConstructor) {
|
81
|
-
const dependency = new dependencyConstructor().getConstructor();
|
82
|
-
return [...__classPrivateFieldGet(this, _TransactionHandlerProvider_handlerDependencyLookup, "f")].some((handler) => handler.type === dependency.type &&
|
83
|
-
handler.typeGroup === dependency.typeGroup &&
|
84
|
-
handler.version === dependency.version);
|
85
47
|
};
|
86
48
|
__decorate([
|
87
49
|
inject(Identifiers.Transaction.Handler.Constructors),
|
88
50
|
__metadata("design:type", Array)
|
89
51
|
], TransactionHandlerProvider.prototype, "handlerConstructors", void 0);
|
90
|
-
__decorate([
|
91
|
-
inject(Identifiers.Cryptography.Transaction.Registry),
|
92
|
-
__metadata("design:type", Object)
|
93
|
-
], TransactionHandlerProvider.prototype, "transactionRegistry", void 0);
|
94
52
|
TransactionHandlerProvider = __decorate([
|
95
53
|
injectable()
|
96
54
|
], TransactionHandlerProvider);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"handler-provider.js","sourceRoot":"","sources":["../../source/handlers/handler-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,
|
1
|
+
{"version":3,"file":"handler-provider.js","sourceRoot":"","sources":["../../source/handlers/handler-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAa,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAMtD,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAAhC;;QAIN,iDAAc,KAAK,EAAC;QACpB,8DAA2B,IAAI,GAAG,EAA0B,EAAC;IAoB9D,CAAC;IAlBO,sBAAsB;QAC5B,OAAO,uBAAA,IAAI,8CAAY,KAAK,KAAK,CAAC;IACnC,CAAC;IAEM,gBAAgB;QACtB,KAAK,MAAM,kBAAkB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3D,uBAAA,IAAI,0FAAiB,MAArB,IAAI,EAAkB,kBAAkB,CAAC,CAAC;QAC3C,CAAC;QAED,uBAAA,IAAI,0CAAe,IAAI,MAAA,CAAC;IACzB,CAAC;CAQD,CAAA;;;;mGANiB,kBAAiD;IACjE,MAAM,OAAO,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACzC,MAAM,sBAAsB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAExD,uBAAA,IAAI,2DAAyB,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAC3D,CAAC;AAtBgB;IADhB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC;;uEACkB;AAF3D,0BAA0B;IADtC,UAAU,EAAE;GACA,0BAA0B,CAyBtC"}
|
@@ -5,9 +5,9 @@ export declare class TransactionHandlerRegistry implements Contracts.Transaction
|
|
5
5
|
private readonly handlers;
|
6
6
|
initialize(): void;
|
7
7
|
getRegisteredHandlers(): TransactionHandler[];
|
8
|
-
getRegisteredHandlerByType(internalType:
|
8
|
+
getRegisteredHandlerByType(internalType: number, version?: number): TransactionHandler;
|
9
9
|
getActivatedHandlers(): Promise<TransactionHandler[]>;
|
10
|
-
getActivatedHandlerByType(internalType:
|
10
|
+
getActivatedHandlerByType(internalType: number, version?: number): Promise<TransactionHandler>;
|
11
11
|
getActivatedHandlerForData(transactionData: Contracts.Crypto.TransactionData): Promise<TransactionHandler>;
|
12
12
|
}
|
13
13
|
//# sourceMappingURL=handler-registry.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"handler-registry.d.ts","sourceRoot":"","sources":["../../source/handlers/handler-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"handler-registry.d.ts","sourceRoot":"","sources":["../../source/handlers/handler-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,qBACa,0BAA2B,YAAW,SAAS,CAAC,YAAY,CAAC,0BAA0B;IAEnG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAGvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IAG1C,UAAU,IAAI,IAAI;IAMlB,qBAAqB,IAAI,kBAAkB,EAAE;IAI7C,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,kBAAkB;IAM3E,oBAAoB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IASrD,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQzF,0BAA0B,CACtC,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,eAAe,GAC/C,OAAO,CAAC,kBAAkB,CAAC;CAG9B"}
|
@@ -9,7 +9,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
};
|
10
10
|
import { inject, injectable, multiInject, postConstruct } from "@mainsail/container";
|
11
11
|
import { Exceptions, Identifiers } from "@mainsail/contracts";
|
12
|
-
import { InternalTransactionType } from "@mainsail/crypto-transaction";
|
13
12
|
import { Utils } from "@mainsail/kernel";
|
14
13
|
import { TransactionHandlerProvider } from "./handler-provider.js";
|
15
14
|
let TransactionHandlerRegistry = class TransactionHandlerRegistry {
|
@@ -21,17 +20,10 @@ let TransactionHandlerRegistry = class TransactionHandlerRegistry {
|
|
21
20
|
getRegisteredHandlers() {
|
22
21
|
return this.handlers;
|
23
22
|
}
|
24
|
-
getRegisteredHandlerByType(internalType, version =
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
Utils.assert.defined(transactionConstructor.typeGroup);
|
29
|
-
const handlerInternalType = InternalTransactionType.from(transactionConstructor.type, transactionConstructor.typeGroup);
|
30
|
-
if (handlerInternalType === internalType && transactionConstructor.version === version) {
|
31
|
-
return handler;
|
32
|
-
}
|
33
|
-
}
|
34
|
-
throw new Exceptions.InvalidTransactionTypeError(internalType);
|
23
|
+
getRegisteredHandlerByType(internalType, version = 0) {
|
24
|
+
const [handler] = this.handlers;
|
25
|
+
Utils.assert.defined(handler);
|
26
|
+
return handler;
|
35
27
|
}
|
36
28
|
async getActivatedHandlers() {
|
37
29
|
const promises = this.handlers.map(async (handler) => [handler, await handler.isActivated()]);
|
@@ -39,7 +31,7 @@ let TransactionHandlerRegistry = class TransactionHandlerRegistry {
|
|
39
31
|
const activated = results.filter(([_, activated]) => activated);
|
40
32
|
return activated.map(([handler, _]) => handler);
|
41
33
|
}
|
42
|
-
async getActivatedHandlerByType(internalType, version =
|
34
|
+
async getActivatedHandlerByType(internalType, version = 0) {
|
43
35
|
const handler = this.getRegisteredHandlerByType(internalType, version);
|
44
36
|
if (await handler.isActivated()) {
|
45
37
|
return handler;
|
@@ -47,8 +39,7 @@ let TransactionHandlerRegistry = class TransactionHandlerRegistry {
|
|
47
39
|
throw new Exceptions.DeactivatedTransactionHandlerError(internalType);
|
48
40
|
}
|
49
41
|
async getActivatedHandlerForData(transactionData) {
|
50
|
-
|
51
|
-
return this.getActivatedHandlerByType(internalType, transactionData.version);
|
42
|
+
return this.getActivatedHandlerByType(0, 0);
|
52
43
|
}
|
53
44
|
};
|
54
45
|
__decorate([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"handler-registry.js","sourceRoot":"","sources":["../../source/handlers/handler-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrF,OAAO,EAAa,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"handler-registry.js","sourceRoot":"","sources":["../../source/handlers/handler-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrF,OAAO,EAAa,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAI5D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAQ/B,UAAU;QAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QAClC,CAAC;IACF,CAAC;IAEM,qBAAqB;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAEM,0BAA0B,CAAC,YAAoB,EAAE,OAAO,GAAG,CAAC;QAClE,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAqB,OAAO,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,oBAAoB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CACjC,KAAK,EAAE,OAAO,EAA0C,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CACjG,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,yBAAyB,CAAC,YAAoB,EAAE,OAAO,GAAG,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvE,IAAI,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YACjC,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,MAAM,IAAI,UAAU,CAAC,kCAAkC,CAAC,YAAY,CAAC,CAAC;IACvE,CAAC;IAEM,KAAK,CAAC,0BAA0B,CACtC,eAAiD;QAEjD,OAAO,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;CACD,CAAA;AA5CiB;IADhB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;8BACrB,0BAA0B;4DAAC;AAGtC;IADhB,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;;4DACN;AAG1C;IADN,aAAa,EAAE;;;;4DAKf;AAZW,0BAA0B;IADtC,UAAU,EAAE;GACA,0BAA0B,CA8CtC"}
|
@@ -5,13 +5,11 @@ export declare abstract class TransactionHandler implements Contracts.Transactio
|
|
5
5
|
protected readonly logger: Contracts.Kernel.Logger;
|
6
6
|
protected readonly configuration: Contracts.Crypto.Configuration;
|
7
7
|
protected readonly verifier: Contracts.Crypto.TransactionVerifier;
|
8
|
-
protected readonly gasLimits: Contracts.Evm.GasLimits;
|
9
8
|
protected readonly eventDispatcher: Contracts.Kernel.EventDispatcher;
|
10
9
|
verify(transaction: Contracts.Crypto.Transaction): Promise<boolean>;
|
11
10
|
throwIfCannotBeApplied(transaction: Contracts.Crypto.Transaction, sender: Contracts.State.Wallet): Promise<void>;
|
12
11
|
emitEvents(transaction: Contracts.Crypto.Transaction): void;
|
13
12
|
verifySignatures(wallet: Contracts.State.Wallet, transaction: Contracts.Crypto.TransactionData, multiSignature: Contracts.Crypto.MultiSignatureAsset): Promise<boolean>;
|
14
|
-
protected allTransactions(transactions: Contracts.Crypto.Transaction[]): Contracts.Crypto.TransactionData[];
|
15
13
|
abstract apply(context: Contracts.Transactions.TransactionHandlerContext, transaction: Contracts.Crypto.Transaction): Promise<Contracts.Evm.TransactionReceipt>;
|
16
14
|
abstract getConstructor(): Contracts.Crypto.TransactionConstructor;
|
17
15
|
abstract dependencies(): ReadonlyArray<TransactionHandlerConstructor>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../source/handlers/transaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;AAGzE,8BACsB,kBAAmB,YAAW,SAAS,CAAC,YAAY,CAAC,kBAAkB;IAE5F,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAG,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAGrE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC;IAGnE,SAAS,CAAC,QAAQ,CAAC,
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../source/handlers/transaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;AAGzE,8BACsB,kBAAmB,YAAW,SAAS,CAAC,YAAY,CAAC,kBAAkB;IAE5F,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAG,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAGrE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC;IAGnE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAG,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC;IAEzD,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAKnE,sBAAsB,CAClC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,EACzC,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,GAC5B,OAAO,CAAC,IAAI,CAAC;IAiBT,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI;IAErD,gBAAgB,CAC5B,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAC9B,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,eAAe,EAC7C,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,mBAAmB,GAClD,OAAO,CAAC,OAAO,CAAC;aAIH,KAAK,CACpB,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,yBAAyB,EACzD,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GACvC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC;aAE5B,cAAc,IAAI,SAAS,CAAC,MAAM,CAAC,sBAAsB;aAEzD,YAAY,IAAI,aAAa,CAAC,6BAA6B,CAAC;aAE5D,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAC/C;AAED,MAAM,MAAM,6BAA6B,GAAG,UAAU,kBAAkB,CAAC"}
|
@@ -12,7 +12,7 @@ import { Contracts, Exceptions, Identifiers } from "@mainsail/contracts";
|
|
12
12
|
import { Utils as AppUtils } from "@mainsail/kernel";
|
13
13
|
let TransactionHandler = class TransactionHandler {
|
14
14
|
async verify(transaction) {
|
15
|
-
AppUtils.assert.defined(transaction.data.
|
15
|
+
AppUtils.assert.defined(transaction.data.senderAddress);
|
16
16
|
return this.verifier.verifyHash(transaction.data);
|
17
17
|
}
|
18
18
|
async throwIfCannotBeApplied(transaction, sender) {
|
@@ -21,7 +21,7 @@ let TransactionHandler = class TransactionHandler {
|
|
21
21
|
}
|
22
22
|
if (sender
|
23
23
|
.getBalance()
|
24
|
-
.minus(transaction.data.
|
24
|
+
.minus(transaction.data.value)
|
25
25
|
.minus(this.gasFeeCalculator.calculate(transaction))
|
26
26
|
.isNegative() &&
|
27
27
|
this.configuration.getHeight() > 0) {
|
@@ -32,11 +32,6 @@ let TransactionHandler = class TransactionHandler {
|
|
32
32
|
async verifySignatures(wallet, transaction, multiSignature) {
|
33
33
|
return this.verifier.verifySignatures(transaction, multiSignature);
|
34
34
|
}
|
35
|
-
allTransactions(transactions) {
|
36
|
-
return transactions
|
37
|
-
.filter(({ data }) => data.type === this.getConstructor().type && data.typeGroup === this.getConstructor().typeGroup)
|
38
|
-
.map(({ data }) => data);
|
39
|
-
}
|
40
35
|
};
|
41
36
|
__decorate([
|
42
37
|
inject(Identifiers.Application.Instance),
|
@@ -58,10 +53,6 @@ __decorate([
|
|
58
53
|
inject(Identifiers.Cryptography.Transaction.Verifier),
|
59
54
|
__metadata("design:type", Object)
|
60
55
|
], TransactionHandler.prototype, "verifier", void 0);
|
61
|
-
__decorate([
|
62
|
-
inject(Identifiers.Evm.Gas.Limits),
|
63
|
-
__metadata("design:type", Object)
|
64
|
-
], TransactionHandler.prototype, "gasLimits", void 0);
|
65
56
|
__decorate([
|
66
57
|
inject(Identifiers.Services.EventDispatcher.Service),
|
67
58
|
__metadata("design:type", Object)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../source/handlers/transaction.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG9C,IAAe,kBAAkB,GAAjC,MAAe,kBAAkB;
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../source/handlers/transaction.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG9C,IAAe,kBAAkB,GAAjC,MAAe,kBAAkB;IAmBhC,KAAK,CAAC,MAAM,CAAC,WAAyC;QAC5D,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAS,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAClC,WAAyC,EACzC,MAA8B;QAE9B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,UAAU,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3E,CAAC;QAED,IACC,MAAM;aACJ,UAAU,EAAE;aACZ,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;aAC7B,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;aACnD,UAAU,EAAE;YACd,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,EACjC,CAAC;YACF,MAAM,IAAI,UAAU,CAAC,wBAAwB,EAAE,CAAC;QACjD,CAAC;IACF,CAAC;IAEM,UAAU,CAAC,WAAyC,IAAS,CAAC;IAE9D,KAAK,CAAC,gBAAgB,CAC5B,MAA8B,EAC9B,WAA6C,EAC7C,cAAoD;QAEpD,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACpE,CAAC;CAYD,CAAA;AA9DmB;IADlB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;;+CACa;AAGnC;IADlB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;;4DAC2B;AAGlD;IADlB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;;kDACW;AAGjC;IADlB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;yDACmB;AAG/C;IADlB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC;;oDACa;AAGhD;IADlB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC;;2DACiB;AAjBjD,kBAAkB;IADvC,UAAU,EAAE;GACS,kBAAkB,CAgEvC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"transaction-validator.js","sourceRoot":"","sources":["../source/transaction-validator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG9B,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAWzB,MAAM;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,QAAQ,CACpB,OAA2D,EAC3D,WAAyC;QAEzC,MAAM,YAAY,GAAiC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CACzF,WAAW,CAAC,UAAU,CACtB,CAAC;QACF,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAE7C,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;QAErE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,CAClC;YACC,GAAG,EAAE;gBACJ,YAAY,EAAE;oBACb,SAAS;oBACT,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;oBAC1B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;oBAC5B,gBAAgB,EAAE,gBAAgB;iBAClC;gBACD,QAAQ,EAAE,IAAI,CAAC,GAAG;aAClB;SACD,EACD,WAAW,CACX,CAAC;QAEF,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAS,WAAW,CAAC,IAAI,CAAC,
|
1
|
+
{"version":3,"file":"transaction-validator.js","sourceRoot":"","sources":["../source/transaction-validator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG9B,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAWzB,MAAM;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,QAAQ,CACpB,OAA2D,EAC3D,WAAyC;QAEzC,MAAM,YAAY,GAAiC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CACzF,WAAW,CAAC,UAAU,CACtB,CAAC;QACF,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAE7C,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;QAErE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,CAClC;YACC,GAAG,EAAE;gBACJ,YAAY,EAAE;oBACb,SAAS;oBACT,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;oBAC1B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;oBAC5B,gBAAgB,EAAE,gBAAgB;iBAClC;gBACD,QAAQ,EAAE,IAAI,CAAC,GAAG;aAClB;SACD,EACD,WAAW,CACX,CAAC;QAEF,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAS,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEhE,OAAO,OAAO,CAAC;IAChB,CAAC;CACD,CAAA;AA3CiB;IAFhB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;IAChC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC;;iDACc;AAG7B;IADhB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC;;6DACoC;AAGpE;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC;;gEACqB;AAT9D,oBAAoB;IADhC,UAAU,EAAE;GACA,oBAAoB,CA8ChC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@mainsail/transactions",
|
3
|
-
"version": "0.0.1-evm.
|
3
|
+
"version": "0.0.1-evm.7",
|
4
4
|
"description": "Transaction Services for Mainsail blockchain",
|
5
5
|
"license": "GPL-3.0-only",
|
6
6
|
"contributors": [],
|
@@ -11,16 +11,13 @@
|
|
11
11
|
"/distribution"
|
12
12
|
],
|
13
13
|
"dependencies": {
|
14
|
-
"@mainsail/container": "0.0.1-evm.
|
15
|
-
"@mainsail/
|
16
|
-
"@mainsail/
|
17
|
-
"@mainsail/kernel": "0.0.1-evm.
|
14
|
+
"@mainsail/container": "0.0.1-evm.7",
|
15
|
+
"@mainsail/contracts": "0.0.1-evm.7",
|
16
|
+
"@mainsail/crypto-transaction": "0.0.1-evm.7",
|
17
|
+
"@mainsail/kernel": "0.0.1-evm.7"
|
18
18
|
},
|
19
19
|
"devDependencies": {
|
20
|
-
"
|
21
|
-
"uvu": "^0.5.6",
|
22
|
-
"@mainsail/crypto-config": "0.0.1-evm.5",
|
23
|
-
"@mainsail/utils": "0.0.1-evm.5"
|
20
|
+
"uvu": "^0.5.6"
|
24
21
|
},
|
25
22
|
"engines": {
|
26
23
|
"node": ">=20.x"
|