@rosen-bridge/tx-pot 0.1.0 → 1.0.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,22 @@
1
+ # @rosen-bridge/tx-pot
2
+
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - - add id to validator registration
8
+ - support registering multiple callbacks using id
9
+
10
+ ### Minor Changes
11
+
12
+ - add function to unregister validators and callbacks
13
+ - add function to register submit-only validator (validates tx for submit)
14
+ - add function to only update extra columns
15
+
16
+ ## 0.1.1
17
+
18
+ ### Patch Changes
19
+
20
+ - support multiple validators
21
+ add extra fields to `addTx` function
22
+ improve processing of `signed` and `sent` txs
@@ -9,7 +9,7 @@ export declare class TransactionEntity {
9
9
  failedInSign: boolean;
10
10
  signFailedCount: number;
11
11
  serializedTx: string;
12
- extra?: string;
13
- extra2?: string;
12
+ extra?: string | null;
13
+ extra2?: string | null;
14
14
  }
15
15
  //# sourceMappingURL=TransactionEntity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionEntity.d.ts","sourceRoot":"","sources":["../../../lib/db/entities/TransactionEntity.ts"],"names":[],"mappings":"AAEA,qBACa,iBAAiB;IAE5B,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,MAAM,CAAC;IAGrB,SAAS,EAAE,MAAM,CAAC;IAGlB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,OAAO,CAAC;IAGtB,eAAe,EAAE,MAAM,CAAC;IAGxB,YAAY,EAAE,MAAM,CAAC;IAKrB,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"TransactionEntity.d.ts","sourceRoot":"","sources":["../../../lib/db/entities/TransactionEntity.ts"],"names":[],"mappings":"AAEA,qBACa,iBAAiB;IAE5B,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,MAAM,CAAC;IAGrB,SAAS,EAAE,MAAM,CAAC;IAGlB,gBAAgB,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,OAAO,CAAC;IAGtB,eAAe,EAAE,MAAM,CAAC;IAGxB,YAAY,EAAE,MAAM,CAAC;IAKrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAKtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB"}
@@ -66,16 +66,16 @@ __decorate([
66
66
  Column('varchar', {
67
67
  nullable: true,
68
68
  }),
69
- __metadata("design:type", String)
69
+ __metadata("design:type", Object)
70
70
  ], TransactionEntity.prototype, "extra", void 0);
71
71
  __decorate([
72
72
  Column('varchar', {
73
73
  nullable: true,
74
74
  }),
75
- __metadata("design:type", String)
75
+ __metadata("design:type", Object)
76
76
  ], TransactionEntity.prototype, "extra2", void 0);
77
77
  TransactionEntity = __decorate([
78
78
  Entity()
79
79
  ], TransactionEntity);
80
80
  export { TransactionEntity };
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25FbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZGIvZW50aXRpZXMvVHJhbnNhY3Rpb25FbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBR2pELElBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWlCO0lBRTVCLElBQUksQ0FBUztJQUdiLEtBQUssQ0FBUztJQUdkLE1BQU0sQ0FBUztJQUdmLE1BQU0sQ0FBUztJQUdmLFlBQVksQ0FBUztJQUdyQixTQUFTLENBQVM7SUFHbEIsZ0JBQWdCLENBQVM7SUFHekIsWUFBWSxDQUFVO0lBR3RCLGVBQWUsQ0FBUztJQUd4QixZQUFZLENBQVM7SUFLckIsS0FBSyxDQUFVO0lBS2YsTUFBTSxDQUFVO0NBQ2pCLENBQUE7QUF0Q0M7SUFEQyxhQUFhLENBQUMsU0FBUyxDQUFDOzsrQ0FDWjtBQUdiO0lBREMsYUFBYSxDQUFDLFNBQVMsQ0FBQzs7Z0RBQ1g7QUFHZDtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7O2lEQUNIO0FBR2Y7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOztpREFDSDtBQUdmO0lBREMsTUFBTSxDQUFDLFNBQVMsQ0FBQzs7dURBQ0c7QUFHckI7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOztvREFDQTtBQUdsQjtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7OzJEQUNPO0FBR3pCO0lBREMsTUFBTSxDQUFDLFNBQVMsQ0FBQzs7dURBQ0k7QUFHdEI7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOzswREFDTTtBQUd4QjtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7O3VEQUNHO0FBS3JCO0lBSEMsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUNqQixRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUM7O2dEQUNhO0FBS2Y7SUFIQyxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQ2pCLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQzs7aURBQ2M7QUF2Q0wsaUJBQWlCO0lBRDdCLE1BQU0sRUFBRTtHQUNJLGlCQUFpQixDQXdDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2x1bW4sIEVudGl0eSwgUHJpbWFyeUNvbHVtbiB9IGZyb20gJ3R5cGVvcm0nO1xuXG5ARW50aXR5KClcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkVudGl0eSB7XG4gIEBQcmltYXJ5Q29sdW1uKCd2YXJjaGFyJylcbiAgdHhJZDogc3RyaW5nO1xuXG4gIEBQcmltYXJ5Q29sdW1uKCd2YXJjaGFyJylcbiAgY2hhaW46IHN0cmluZztcblxuICBAQ29sdW1uKCd2YXJjaGFyJylcbiAgdHhUeXBlOiBzdHJpbmc7XG5cbiAgQENvbHVtbigndmFyY2hhcicpXG4gIHN0YXR1czogc3RyaW5nO1xuXG4gIEBDb2x1bW4oJ2ludGVnZXInKVxuICByZXF1aXJlZFNpZ246IG51bWJlcjtcblxuICBAQ29sdW1uKCdpbnRlZ2VyJylcbiAgbGFzdENoZWNrOiBudW1iZXI7XG5cbiAgQENvbHVtbigndmFyY2hhcicpXG4gIGxhc3RTdGF0dXNVcGRhdGU6IHN0cmluZztcblxuICBAQ29sdW1uKCdib29sZWFuJylcbiAgZmFpbGVkSW5TaWduOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oJ2ludGVnZXInKVxuICBzaWduRmFpbGVkQ291bnQ6IG51bWJlcjtcblxuICBAQ29sdW1uKCd2YXJjaGFyJylcbiAgc2VyaWFsaXplZFR4OiBzdHJpbmc7XG5cbiAgQENvbHVtbigndmFyY2hhcicsIHtcbiAgICBudWxsYWJsZTogdHJ1ZSxcbiAgfSlcbiAgZXh0cmE/OiBzdHJpbmc7XG5cbiAgQENvbHVtbigndmFyY2hhcicsIHtcbiAgICBudWxsYWJsZTogdHJ1ZSxcbiAgfSlcbiAgZXh0cmEyPzogc3RyaW5nO1xufVxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25FbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZGIvZW50aXRpZXMvVHJhbnNhY3Rpb25FbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBR2pELElBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWlCO0lBRTVCLElBQUksQ0FBUztJQUdiLEtBQUssQ0FBUztJQUdkLE1BQU0sQ0FBUztJQUdmLE1BQU0sQ0FBUztJQUdmLFlBQVksQ0FBUztJQUdyQixTQUFTLENBQVM7SUFHbEIsZ0JBQWdCLENBQVM7SUFHekIsWUFBWSxDQUFVO0lBR3RCLGVBQWUsQ0FBUztJQUd4QixZQUFZLENBQVM7SUFLckIsS0FBSyxDQUFpQjtJQUt0QixNQUFNLENBQWlCO0NBQ3hCLENBQUE7QUF0Q0M7SUFEQyxhQUFhLENBQUMsU0FBUyxDQUFDOzsrQ0FDWjtBQUdiO0lBREMsYUFBYSxDQUFDLFNBQVMsQ0FBQzs7Z0RBQ1g7QUFHZDtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7O2lEQUNIO0FBR2Y7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOztpREFDSDtBQUdmO0lBREMsTUFBTSxDQUFDLFNBQVMsQ0FBQzs7dURBQ0c7QUFHckI7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOztvREFDQTtBQUdsQjtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7OzJEQUNPO0FBR3pCO0lBREMsTUFBTSxDQUFDLFNBQVMsQ0FBQzs7dURBQ0k7QUFHdEI7SUFEQyxNQUFNLENBQUMsU0FBUyxDQUFDOzswREFDTTtBQUd4QjtJQURDLE1BQU0sQ0FBQyxTQUFTLENBQUM7O3VEQUNHO0FBS3JCO0lBSEMsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUNqQixRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUM7O2dEQUNvQjtBQUt0QjtJQUhDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7UUFDakIsUUFBUSxFQUFFLElBQUk7S0FDZixDQUFDOztpREFDcUI7QUF2Q1osaUJBQWlCO0lBRDdCLE1BQU0sRUFBRTtHQUNJLGlCQUFpQixDQXdDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2x1bW4sIEVudGl0eSwgUHJpbWFyeUNvbHVtbiB9IGZyb20gJ3R5cGVvcm0nO1xuXG5ARW50aXR5KClcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkVudGl0eSB7XG4gIEBQcmltYXJ5Q29sdW1uKCd2YXJjaGFyJylcbiAgdHhJZDogc3RyaW5nO1xuXG4gIEBQcmltYXJ5Q29sdW1uKCd2YXJjaGFyJylcbiAgY2hhaW46IHN0cmluZztcblxuICBAQ29sdW1uKCd2YXJjaGFyJylcbiAgdHhUeXBlOiBzdHJpbmc7XG5cbiAgQENvbHVtbigndmFyY2hhcicpXG4gIHN0YXR1czogc3RyaW5nO1xuXG4gIEBDb2x1bW4oJ2ludGVnZXInKVxuICByZXF1aXJlZFNpZ246IG51bWJlcjtcblxuICBAQ29sdW1uKCdpbnRlZ2VyJylcbiAgbGFzdENoZWNrOiBudW1iZXI7XG5cbiAgQENvbHVtbigndmFyY2hhcicpXG4gIGxhc3RTdGF0dXNVcGRhdGU6IHN0cmluZztcblxuICBAQ29sdW1uKCdib29sZWFuJylcbiAgZmFpbGVkSW5TaWduOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oJ2ludGVnZXInKVxuICBzaWduRmFpbGVkQ291bnQ6IG51bWJlcjtcblxuICBAQ29sdW1uKCd2YXJjaGFyJylcbiAgc2VyaWFsaXplZFR4OiBzdHJpbmc7XG5cbiAgQENvbHVtbigndmFyY2hhcicsIHtcbiAgICBudWxsYWJsZTogdHJ1ZSxcbiAgfSlcbiAgZXh0cmE/OiBzdHJpbmcgfCBudWxsO1xuXG4gIEBDb2x1bW4oJ3ZhcmNoYXInLCB7XG4gICAgbnVsbGFibGU6IHRydWUsXG4gIH0pXG4gIGV4dHJhMj86IHN0cmluZyB8IG51bGw7XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { Migration1706350644686 } from './postgres/1706350644686-migration';
2
2
  import { Migration1706007154531 } from './sqlite/1706007154531-migration';
3
3
  export declare const migrations: {
4
- sqlite: (typeof Migration1706007154531)[];
5
- postgres: (typeof Migration1706350644686)[];
4
+ sqlite: typeof Migration1706007154531[];
5
+ postgres: typeof Migration1706350644686[];
6
6
  };
7
- //# sourceMappingURL=index.d.ts.map
7
+ //# sourceMappingURL=index.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import { Migration1706350644686 } from './postgres/1706350644686-migration';
2
2
  import { Migration1706007154531 } from './sqlite/1706007154531-migration';
3
3
  export const migrations = {
4
- sqlite: [Migration1706007154531],
5
- postgres: [Migration1706350644686],
4
+ sqlite: [Migration1706007154531],
5
+ postgres: [Migration1706350644686],
6
6
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUxRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTSxFQUFFLENBQUMsc0JBQXNCLENBQUM7SUFDaEMsUUFBUSxFQUFFLENBQUMsc0JBQXNCLENBQUM7Q0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1pZ3JhdGlvbjE3MDYzNTA2NDQ2ODYgfSBmcm9tICcuL3Bvc3RncmVzLzE3MDYzNTA2NDQ2ODYtbWlncmF0aW9uJztcbmltcG9ydCB7IE1pZ3JhdGlvbjE3MDYwMDcxNTQ1MzEgfSBmcm9tICcuL3NxbGl0ZS8xNzA2MDA3MTU0NTMxLW1pZ3JhdGlvbic7XG5cbmV4cG9ydCBjb25zdCBtaWdyYXRpb25zID0ge1xuICBzcWxpdGU6IFtNaWdyYXRpb24xNzA2MDA3MTU0NTMxXSxcbiAgcG9zdGdyZXM6IFtNaWdyYXRpb24xNzA2MzUwNjQ0Njg2XSxcbn07XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUxRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTSxFQUFFLENBQUMsc0JBQXNCLENBQUM7SUFDaEMsUUFBUSxFQUFFLENBQUMsc0JBQXNCLENBQUM7Q0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1pZ3JhdGlvbjE3MDYzNTA2NDQ2ODYgfSBmcm9tICcuL3Bvc3RncmVzLzE3MDYzNTA2NDQ2ODYtbWlncmF0aW9uJztcbmltcG9ydCB7IE1pZ3JhdGlvbjE3MDYwMDcxNTQ1MzEgfSBmcm9tICcuL3NxbGl0ZS8xNzA2MDA3MTU0NTMxLW1pZ3JhdGlvbic7XG5cbmV4cG9ydCBjb25zdCBtaWdyYXRpb25zID0ge1xuICBzcWxpdGU6IFtNaWdyYXRpb24xNzA2MDA3MTU0NTMxXSxcbiAgcG9zdGdyZXM6IFtNaWdyYXRpb24xNzA2MzUwNjQ0Njg2XSxcbn07XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { MigrationInterface, QueryRunner } from 'typeorm';
2
2
  export declare class Migration1706350644686 implements MigrationInterface {
3
- name: string;
4
- up(queryRunner: QueryRunner): Promise<void>;
5
- down(queryRunner: QueryRunner): Promise<void>;
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
6
  }
7
- //# sourceMappingURL=1706350644686-migration.d.ts.map
7
+ //# sourceMappingURL=1706350644686-migration.d.ts.map
@@ -1,7 +1,7 @@
1
1
  export class Migration1706350644686 {
2
- name = 'Migration1706350644686';
3
- async up(queryRunner) {
4
- await queryRunner.query(`
2
+ name = 'Migration1706350644686';
3
+ async up(queryRunner) {
4
+ await queryRunner.query(`
5
5
  CREATE TABLE "transaction_entity" (
6
6
  "txId" character varying NOT NULL,
7
7
  "chain" character varying NOT NULL,
@@ -18,11 +18,11 @@ export class Migration1706350644686 {
18
18
  CONSTRAINT "PK_cafcc9d8e76fef57bc0cf385caa" PRIMARY KEY ("txId", "chain")
19
19
  )
20
20
  `);
21
- }
22
- async down(queryRunner) {
23
- await queryRunner.query(`
21
+ }
22
+ async down(queryRunner) {
23
+ await queryRunner.query(`
24
24
  DROP TABLE "transaction_entity"
25
25
  `);
26
- }
26
+ }
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTcwNjM1MDY0NDY4Ni1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9wb3N0Z3Jlcy8xNzA2MzUwNjQ0Njg2LW1pZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLElBQUksR0FBRyx3QkFBd0IsQ0FBQztJQUV6QixLQUFLLENBQUMsRUFBRSxDQUFDLFdBQXdCO1FBQ3RDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztTQWdCbkIsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBd0I7UUFDeEMsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOztTQUVuQixDQUFDLENBQUM7SUFDVCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNaWdyYXRpb25JbnRlcmZhY2UsIFF1ZXJ5UnVubmVyIH0gZnJvbSAndHlwZW9ybSc7XG5cbmV4cG9ydCBjbGFzcyBNaWdyYXRpb24xNzA2MzUwNjQ0Njg2IGltcGxlbWVudHMgTWlncmF0aW9uSW50ZXJmYWNlIHtcbiAgbmFtZSA9ICdNaWdyYXRpb24xNzA2MzUwNjQ0Njg2JztcblxuICBwdWJsaWMgYXN5bmMgdXAocXVlcnlSdW5uZXI6IFF1ZXJ5UnVubmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQ1JFQVRFIFRBQkxFIFwidHJhbnNhY3Rpb25fZW50aXR5XCIgKFxuICAgICAgICAgICAgICAgIFwidHhJZFwiIGNoYXJhY3RlciB2YXJ5aW5nIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiY2hhaW5cIiBjaGFyYWN0ZXIgdmFyeWluZyBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInR4VHlwZVwiIGNoYXJhY3RlciB2YXJ5aW5nIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwic3RhdHVzXCIgY2hhcmFjdGVyIHZhcnlpbmcgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJyZXF1aXJlZFNpZ25cIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwibGFzdENoZWNrXCIgaW50ZWdlciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImxhc3RTdGF0dXNVcGRhdGVcIiBjaGFyYWN0ZXIgdmFyeWluZyBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImZhaWxlZEluU2lnblwiIGJvb2xlYW4gTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJzaWduRmFpbGVkQ291bnRcIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwic2VyaWFsaXplZFR4XCIgY2hhcmFjdGVyIHZhcnlpbmcgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJleHRyYVwiIGNoYXJhY3RlciB2YXJ5aW5nLFxuICAgICAgICAgICAgICAgIFwiZXh0cmEyXCIgY2hhcmFjdGVyIHZhcnlpbmcsXG4gICAgICAgICAgICAgICAgQ09OU1RSQUlOVCBcIlBLX2NhZmNjOWQ4ZTc2ZmVmNTdiYzBjZjM4NWNhYVwiIFBSSU1BUlkgS0VZIChcInR4SWRcIiwgXCJjaGFpblwiKVxuICAgICAgICAgICAgKVxuICAgICAgICBgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkb3duKHF1ZXJ5UnVubmVyOiBRdWVyeVJ1bm5lcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIERST1AgVEFCTEUgXCJ0cmFuc2FjdGlvbl9lbnRpdHlcIlxuICAgICAgICBgKTtcbiAgfVxufVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTcwNjM1MDY0NDY4Ni1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9wb3N0Z3Jlcy8xNzA2MzUwNjQ0Njg2LW1pZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLElBQUksR0FBRyx3QkFBd0IsQ0FBQztJQUV6QixLQUFLLENBQUMsRUFBRSxDQUFDLFdBQXdCO1FBQ3RDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztTQWdCbkIsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBd0I7UUFDeEMsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOztTQUVuQixDQUFDLENBQUM7SUFDVCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNaWdyYXRpb25JbnRlcmZhY2UsIFF1ZXJ5UnVubmVyIH0gZnJvbSAndHlwZW9ybSc7XG5cbmV4cG9ydCBjbGFzcyBNaWdyYXRpb24xNzA2MzUwNjQ0Njg2IGltcGxlbWVudHMgTWlncmF0aW9uSW50ZXJmYWNlIHtcbiAgbmFtZSA9ICdNaWdyYXRpb24xNzA2MzUwNjQ0Njg2JztcblxuICBwdWJsaWMgYXN5bmMgdXAocXVlcnlSdW5uZXI6IFF1ZXJ5UnVubmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQ1JFQVRFIFRBQkxFIFwidHJhbnNhY3Rpb25fZW50aXR5XCIgKFxuICAgICAgICAgICAgICAgIFwidHhJZFwiIGNoYXJhY3RlciB2YXJ5aW5nIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiY2hhaW5cIiBjaGFyYWN0ZXIgdmFyeWluZyBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInR4VHlwZVwiIGNoYXJhY3RlciB2YXJ5aW5nIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwic3RhdHVzXCIgY2hhcmFjdGVyIHZhcnlpbmcgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJyZXF1aXJlZFNpZ25cIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwibGFzdENoZWNrXCIgaW50ZWdlciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImxhc3RTdGF0dXNVcGRhdGVcIiBjaGFyYWN0ZXIgdmFyeWluZyBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImZhaWxlZEluU2lnblwiIGJvb2xlYW4gTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJzaWduRmFpbGVkQ291bnRcIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwic2VyaWFsaXplZFR4XCIgY2hhcmFjdGVyIHZhcnlpbmcgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJleHRyYVwiIGNoYXJhY3RlciB2YXJ5aW5nLFxuICAgICAgICAgICAgICAgIFwiZXh0cmEyXCIgY2hhcmFjdGVyIHZhcnlpbmcsXG4gICAgICAgICAgICAgICAgQ09OU1RSQUlOVCBcIlBLX2NhZmNjOWQ4ZTc2ZmVmNTdiYzBjZjM4NWNhYVwiIFBSSU1BUlkgS0VZIChcInR4SWRcIiwgXCJjaGFpblwiKVxuICAgICAgICAgICAgKVxuICAgICAgICBgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkb3duKHF1ZXJ5UnVubmVyOiBRdWVyeVJ1bm5lcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIERST1AgVEFCTEUgXCJ0cmFuc2FjdGlvbl9lbnRpdHlcIlxuICAgICAgICBgKTtcbiAgfVxufVxuIl19
@@ -1,7 +1,7 @@
1
1
  import { MigrationInterface, QueryRunner } from 'typeorm';
2
2
  export declare class Migration1706007154531 implements MigrationInterface {
3
- name: string;
4
- up(queryRunner: QueryRunner): Promise<void>;
5
- down(queryRunner: QueryRunner): Promise<void>;
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
6
  }
7
- //# sourceMappingURL=1706007154531-migration.d.ts.map
7
+ //# sourceMappingURL=1706007154531-migration.d.ts.map
@@ -1,7 +1,7 @@
1
1
  export class Migration1706007154531 {
2
- name = 'Migration1706007154531';
3
- async up(queryRunner) {
4
- await queryRunner.query(`
2
+ name = 'Migration1706007154531';
3
+ async up(queryRunner) {
4
+ await queryRunner.query(`
5
5
  CREATE TABLE "transaction_entity" (
6
6
  "txId" varchar NOT NULL,
7
7
  "chain" varchar NOT NULL,
@@ -18,11 +18,11 @@ export class Migration1706007154531 {
18
18
  PRIMARY KEY ("txId", "chain")
19
19
  )
20
20
  `);
21
- }
22
- async down(queryRunner) {
23
- await queryRunner.query(`
21
+ }
22
+ async down(queryRunner) {
23
+ await queryRunner.query(`
24
24
  DROP TABLE "transaction_entity"
25
25
  `);
26
- }
26
+ }
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTcwNjAwNzE1NDUzMS1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9zcWxpdGUvMTcwNjAwNzE1NDUzMS1taWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxJQUFJLEdBQUcsd0JBQXdCLENBQUM7SUFFekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxXQUF3QjtRQUN0QyxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnQm5CLENBQUMsQ0FBQztJQUNULENBQUM7SUFFTSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQXdCO1FBQ3hDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7U0FFbkIsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWlncmF0aW9uSW50ZXJmYWNlLCBRdWVyeVJ1bm5lciB9IGZyb20gJ3R5cGVvcm0nO1xuXG5leHBvcnQgY2xhc3MgTWlncmF0aW9uMTcwNjAwNzE1NDUzMSBpbXBsZW1lbnRzIE1pZ3JhdGlvbkludGVyZmFjZSB7XG4gIG5hbWUgPSAnTWlncmF0aW9uMTcwNjAwNzE1NDUzMSc7XG5cbiAgcHVibGljIGFzeW5jIHVwKHF1ZXJ5UnVubmVyOiBRdWVyeVJ1bm5lcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIENSRUFURSBUQUJMRSBcInRyYW5zYWN0aW9uX2VudGl0eVwiIChcbiAgICAgICAgICAgICAgICBcInR4SWRcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiY2hhaW5cIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwidHhUeXBlXCIgdmFyY2hhciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInN0YXR1c1wiIHZhcmNoYXIgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJyZXF1aXJlZFNpZ25cIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwibGFzdENoZWNrXCIgaW50ZWdlciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImxhc3RTdGF0dXNVcGRhdGVcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiZmFpbGVkSW5TaWduXCIgYm9vbGVhbiBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInNpZ25GYWlsZWRDb3VudFwiIGludGVnZXIgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJzZXJpYWxpemVkVHhcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiZXh0cmFcIiB2YXJjaGFyLFxuICAgICAgICAgICAgICAgIFwiZXh0cmEyXCIgdmFyY2hhcixcbiAgICAgICAgICAgICAgICBQUklNQVJZIEtFWSAoXCJ0eElkXCIsIFwiY2hhaW5cIilcbiAgICAgICAgICAgIClcbiAgICAgICAgYCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZG93bihxdWVyeVJ1bm5lcjogUXVlcnlSdW5uZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBEUk9QIFRBQkxFIFwidHJhbnNhY3Rpb25fZW50aXR5XCJcbiAgICAgICAgYCk7XG4gIH1cbn1cbiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTcwNjAwNzE1NDUzMS1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZGIvbWlncmF0aW9ucy9zcWxpdGUvMTcwNjAwNzE1NDUzMS1taWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxJQUFJLEdBQUcsd0JBQXdCLENBQUM7SUFFekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxXQUF3QjtRQUN0QyxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnQm5CLENBQUMsQ0FBQztJQUNULENBQUM7SUFFTSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQXdCO1FBQ3hDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7U0FFbkIsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWlncmF0aW9uSW50ZXJmYWNlLCBRdWVyeVJ1bm5lciB9IGZyb20gJ3R5cGVvcm0nO1xuXG5leHBvcnQgY2xhc3MgTWlncmF0aW9uMTcwNjAwNzE1NDUzMSBpbXBsZW1lbnRzIE1pZ3JhdGlvbkludGVyZmFjZSB7XG4gIG5hbWUgPSAnTWlncmF0aW9uMTcwNjAwNzE1NDUzMSc7XG5cbiAgcHVibGljIGFzeW5jIHVwKHF1ZXJ5UnVubmVyOiBRdWVyeVJ1bm5lcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIENSRUFURSBUQUJMRSBcInRyYW5zYWN0aW9uX2VudGl0eVwiIChcbiAgICAgICAgICAgICAgICBcInR4SWRcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiY2hhaW5cIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwidHhUeXBlXCIgdmFyY2hhciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInN0YXR1c1wiIHZhcmNoYXIgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJyZXF1aXJlZFNpZ25cIiBpbnRlZ2VyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwibGFzdENoZWNrXCIgaW50ZWdlciBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcImxhc3RTdGF0dXNVcGRhdGVcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiZmFpbGVkSW5TaWduXCIgYm9vbGVhbiBOT1QgTlVMTCxcbiAgICAgICAgICAgICAgICBcInNpZ25GYWlsZWRDb3VudFwiIGludGVnZXIgTk9UIE5VTEwsXG4gICAgICAgICAgICAgICAgXCJzZXJpYWxpemVkVHhcIiB2YXJjaGFyIE5PVCBOVUxMLFxuICAgICAgICAgICAgICAgIFwiZXh0cmFcIiB2YXJjaGFyLFxuICAgICAgICAgICAgICAgIFwiZXh0cmEyXCIgdmFyY2hhcixcbiAgICAgICAgICAgICAgICBQUklNQVJZIEtFWSAoXCJ0eElkXCIsIFwiY2hhaW5cIilcbiAgICAgICAgICAgIClcbiAgICAgICAgYCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZG93bihxdWVyeVJ1bm5lcjogUXVlcnlSdW5uZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBEUk9QIFRBQkxFIFwidHJhbnNhY3Rpb25fZW50aXR5XCJcbiAgICAgICAgYCk7XG4gIH1cbn1cbiJdfQ==
package/dist/index.d.ts CHANGED
@@ -3,4 +3,4 @@ export { TxPot } from './transaction/TxPot';
3
3
  export * from './transaction/types';
4
4
  export { TransactionEntity } from './db/entities/TransactionEntity';
5
5
  export { migrations } from './db/migrations/index';
6
- //# sourceMappingURL=index.d.ts.map
6
+ //# sourceMappingURL=index.d.ts.map
@@ -1,36 +1,39 @@
1
1
  import { SigningStatus } from '../transaction/types';
2
2
  export declare abstract class AbstractPotChainManager {
3
- /**
4
- * gets the blockchain current height
5
- */
6
- abstract getHeight: () => Promise<number>;
7
- /**
8
- * returns required number of confirmation
9
- * @param txType
10
- */
11
- abstract getTxRequiredConfirmation: (txType: string) => number;
12
- /**
13
- * gets number of confirmation for a tx
14
- * returns -1 if tx is not in the blockchain
15
- * @param txId
16
- */
17
- abstract getTxConfirmation: (txId: string) => Promise<number>;
18
- /**
19
- * checks if a tx is still valid and can be sent to the network
20
- * @param serializedTx
21
- * @param signingStatus
22
- */
23
- abstract isTxValid: (serializedTx: string, signingStatus: SigningStatus) => Promise<boolean>;
24
- /**
25
- * submits a tx to the blockchain
26
- * @param serializedTx
27
- */
28
- abstract submitTransaction: (serializedTx: string) => Promise<void>;
29
- /**
30
- * checks if a tx is in mempool
31
- * returns false if the chain has no mempool
32
- * @param txId
33
- */
34
- abstract isTxInMempool: (txId: string) => Promise<boolean>;
3
+ /**
4
+ * gets the blockchain current height
5
+ */
6
+ abstract getHeight: () => Promise<number>;
7
+ /**
8
+ * returns required number of confirmation
9
+ * @param txType
10
+ */
11
+ abstract getTxRequiredConfirmation: (txType: string) => number;
12
+ /**
13
+ * gets number of confirmation for a tx
14
+ * returns -1 if tx is not in the blockchain
15
+ * @param txId
16
+ */
17
+ abstract getTxConfirmation: (txId: string) => Promise<number>;
18
+ /**
19
+ * checks if a tx is still valid and can be sent to the network
20
+ * @param serializedTx
21
+ * @param signingStatus
22
+ */
23
+ abstract isTxValid: (
24
+ serializedTx: string,
25
+ signingStatus: SigningStatus
26
+ ) => Promise<boolean>;
27
+ /**
28
+ * submits a tx to the blockchain
29
+ * @param serializedTx
30
+ */
31
+ abstract submitTransaction: (serializedTx: string) => Promise<void>;
32
+ /**
33
+ * checks if a tx is in mempool
34
+ * returns false if the chain has no mempool
35
+ * @param txId
36
+ */
37
+ abstract isTxInMempool: (txId: string) => Promise<boolean>;
35
38
  }
36
- //# sourceMappingURL=AbstractPotChainManager.d.ts.map
39
+ //# sourceMappingURL=AbstractPotChainManager.d.ts.map
@@ -1,14 +1,15 @@
1
1
  import { DataSource, Repository } from 'typeorm';
2
2
  import { TransactionEntity } from '../db/entities/TransactionEntity';
3
- import { AbstractLogger } from '@rosen-bridge/logger-interface';
3
+ import { AbstractLogger } from '@rosen-bridge/abstract-logger';
4
4
  import { CallbackFunction, TransactionStatus, TxOptions, ValidatorFunction } from './types';
5
5
  import { AbstractPotChainManager } from '../network/AbstractPotChainManager';
6
6
  export declare class TxPot {
7
7
  protected static instance: TxPot;
8
8
  protected readonly txRepository: Repository<TransactionEntity>;
9
9
  protected chains: Map<string, AbstractPotChainManager>;
10
- protected validators: Map<string, Map<string, ValidatorFunction>>;
11
- protected txTypeCallbacks: Map<string, Map<TransactionStatus, CallbackFunction>>;
10
+ protected validators: Map<string, Map<string, Map<string, ValidatorFunction>>>;
11
+ protected txTypeCallbacks: Map<string, Map<TransactionStatus, Map<string, CallbackFunction>>>;
12
+ protected submissionAllowance: Map<string, Map<string, ValidatorFunction>>;
12
13
  protected logger: AbstractLogger;
13
14
  protected constructor(dataSource: DataSource, logger?: AbstractLogger);
14
15
  /**
@@ -33,18 +34,47 @@ export declare class TxPot {
33
34
  * registers a validator function
34
35
  * @param chain
35
36
  * @param txType
37
+ * @param id
36
38
  * @param validator
37
39
  */
38
- registerValidator: (chain: string, txType: string, validator: ValidatorFunction) => void;
40
+ registerValidator: (chain: string, txType: string, id: string, validator: ValidatorFunction) => void;
41
+ /**
42
+ * removes a validator function
43
+ * @param chain
44
+ * @param txType
45
+ * @param id
46
+ */
47
+ unregisterValidator: (chain: string, txType: string, id: string) => void;
48
+ /**
49
+ * registers a submit validator function
50
+ * @param chain
51
+ * @param id
52
+ * @param validator
53
+ */
54
+ registerSubmitValidator: (chain: string, id: string, validator: ValidatorFunction) => void;
55
+ /**
56
+ * removes a submit validator function
57
+ * @param chain
58
+ * @param id
59
+ */
60
+ unregisterSubmitValidator: (chain: string, id: string) => void;
39
61
  /**
40
62
  * registers a callback function
41
63
  * the callback will be called when status of any transactions
42
64
  * of given type changes to given status
43
65
  * @param txType
44
66
  * @param status
67
+ * @param id
45
68
  * @param callback
46
69
  */
47
- registerCallback: (txType: string, status: TransactionStatus, callback: CallbackFunction) => void;
70
+ registerCallback: (txType: string, status: TransactionStatus, id: string, callback: CallbackFunction) => void;
71
+ /**
72
+ * removes a callback function
73
+ * @param txType
74
+ * @param status
75
+ * @param id
76
+ */
77
+ unregisterCallback: (txType: string, status: TransactionStatus, id: string) => void;
48
78
  /**
49
79
  * returns chain manager for given chain
50
80
  * throws error if no manager is registered for it
@@ -63,6 +93,13 @@ export declare class TxPot {
63
93
  * @param tx
64
94
  */
65
95
  protected validateTx: (tx: TransactionEntity) => Promise<boolean>;
96
+ /**
97
+ * checks a transaction for submission
98
+ * returns true if no validator functions is set or all validators allow tx to submit
99
+ * otherwise returns false
100
+ * @param tx
101
+ */
102
+ protected isSubmitAllowed: (tx: TransactionEntity) => Promise<boolean>;
66
103
  /**
67
104
  * updates the status of a tx
68
105
  * @param txKey tx id and chain
@@ -98,15 +135,18 @@ export declare class TxPot {
98
135
  getTxsByStatus: (status: TransactionStatus, validate?: boolean) => Promise<Array<TransactionEntity>>;
99
136
  /**
100
137
  * inserts a new transaction into db
138
+ * Note: make sure to set `lastCheck` field if initialStatus is `signed` or `sent`
101
139
  * @param txId
102
140
  * @param chain
103
141
  * @param txType
104
142
  * @param requiredSign
105
143
  * @param serializedTx
106
144
  * @param initialStatus
107
- * @param lastCheck
145
+ * @param lastCheck last blockchain height that tx was valid
146
+ * @param extra
147
+ * @param extra2
108
148
  */
109
- addTx: (txId: string, chain: string, txType: string, requiredSign: number, serializedTx: string, initialStatus?: TransactionStatus, lastCheck?: number) => Promise<void>;
149
+ addTx: (txId: string, chain: string, txType: string, requiredSign: number, serializedTx: string, initialStatus?: TransactionStatus, lastCheck?: number, extra?: string | null, extra2?: string | null) => Promise<void>;
110
150
  /**
111
151
  * updates the status of a tx
112
152
  * @param txId
@@ -160,5 +200,13 @@ export declare class TxPot {
160
200
  * @returns the transactions with valid status
161
201
  */
162
202
  getTxsQuery: (options?: Array<TxOptions>) => Promise<TransactionEntity[]>;
203
+ /**
204
+ * updates extra fields of a transaction
205
+ * @param txId
206
+ * @param chain
207
+ * @param extra
208
+ * @param extra2
209
+ */
210
+ updateExtra: (txId: string, chain: string, extra?: string | null, extra2?: string | null) => Promise<void>;
163
211
  }
164
212
  //# sourceMappingURL=TxPot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TxPot.d.ts","sourceRoot":"","sources":["../../lib/transaction/TxPot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAe,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EACL,gBAAgB,EAEhB,iBAAiB,EACjB,SAAS,EAET,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,qBAAa,KAAK;IAChB,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACjC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/D,SAAS,CAAC,MAAM,uCAA8C;IAC9D,SAAS,CAAC,UAAU,8CAAqD;IACzE,SAAS,CAAC,eAAe,wDAGrB;IACJ,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;IAEjC,SAAS,aAAa,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc;IAMrE;;;;;OAKG;IACH,OAAc,KAAK,eACL,UAAU,WACb,cAAc,KACtB,KAAK,CAGN;IAEF;;;OAGG;IACH,OAAc,WAAW,QAAO,KAAK,CAGnC;IAEF;;;;OAIG;IACH,aAAa,UACJ,MAAM,gBACC,uBAAuB,KACpC,IAAI,CAKL;IAEF;;;;;OAKG;IACH,iBAAiB,UACR,MAAM,UACL,MAAM,aACH,iBAAiB,KAC3B,IAAI,CAWL;IAEF;;;;;;;OAOG;IACH,gBAAgB,WACN,MAAM,UACN,iBAAiB,YACf,gBAAgB,KACzB,IAAI,CAWL;IAEF;;;;OAIG;IACH,SAAS,CAAC,eAAe,UAAW,MAAM,KAAG,uBAAuB,CAOlE;IAEF;;;OAGG;IACH,SAAS,CAAC,uBAAuB,OAC3B,iBAAiB,KACpB,QAAQ,IAAI,CAAC,CAkBd;IAEF;;;;;OAKG;IACH,SAAS,CAAC,UAAU,OAAc,iBAAiB,KAAG,QAAQ,OAAO,CAAC,CAapE;IAEF;;;;OAIG;IACH,SAAS,CAAC,WAAW,OACf,iBAAiB,UACb,iBAAiB,KACxB,QAAQ,IAAI,CAAC,CAuBd;IAEF;;OAEG;IACH,SAAS,CAAC,WAAW,eAA+C;IAEpE;;;OAGG;IACH,SAAS,CAAC,eAAe,OAAc,iBAAiB,KAAG,QAAQ,IAAI,CAAC,CAWtE;IAEF;;;OAGG;IACH,SAAS,CAAC,eAAe,OAAc,iBAAiB,KAAG,QAAQ,IAAI,CAAC,CAyCtE;IAEF;;;;OAIG;IACH,MAAM,QAAa,QAAQ,IAAI,CAAC,CAgC9B;IAEF;;;;;OAKG;IACH,cAAc,WACJ,iBAAiB,yBAExB,QAAQ,MAAM,iBAAiB,CAAC,CAAC,CAclC;IAEF;;;;;;;;;OASG;IACH,KAAK,SACG,MAAM,SACL,MAAM,UACL,MAAM,gBACA,MAAM,gBACN,MAAM,4DAGnB,QAAQ,IAAI,CAAC,CAad;IAEF;;;;;OAKG;IACH,eAAe,SACP,MAAM,SACL,MAAM,UACL,iBAAiB,KACxB,QAAQ,IAAI,CAAC,CAKd;IAEF;;;;OAIG;IACH,iBAAiB,SAAgB,MAAM,SAAS,MAAM,KAAG,QAAQ,IAAI,CAAC,CAcpE;IAEF;;;;;;;;OAQG;IACH,aAAa,SACL,MAAM,SACL,MAAM,gBACC,MAAM,iBACL,MAAM,UACb,MAAM,WACL,MAAM,KACd,QAAQ,IAAI,CAAC,CAWd;IAEF;;;;;OAKG;IACH,iBAAiB,SACT,MAAM,SACL,MAAM,iBACE,MAAM,KACpB,QAAQ,IAAI,CAAC,CAKd;IAEF;;;;OAIG;IACH,iBAAiB,SAAgB,MAAM,SAAS,MAAM,KAAG,QAAQ,IAAI,CAAC,CAOpE;IAEF;;;;;OAKG;IACH,kBAAkB,SACV,MAAM,SACL,MAAM,gBACC,MAAM,KACnB,QAAQ,IAAI,CAAC,CAOd;IAEF;;;;OAIG;IACH,UAAU,SACF,MAAM,SACL,MAAM,KACZ,QAAQ,iBAAiB,GAAG,IAAI,CAAC,CAIlC;IAEF;;OAEG;IACH,WAAW,aACA,MAAM,SAAS,CAAC,KACxB,QAAQ,iBAAiB,EAAE,CAAC,CAI7B;CACH"}
1
+ {"version":3,"file":"TxPot.d.ts","sourceRoot":"","sources":["../../lib/transaction/TxPot.ts"],"names":[],"mappings":"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"}