@prosopo/provider 0.3.36 → 0.3.38
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/dist/api/captcha.js +0 -1
- package/dist/api/captcha.js.map +1 -1
- package/dist/cjs/api/captcha.cjs +0 -1
- package/dist/tests/accounts.d.ts +5 -4
- package/dist/tests/accounts.d.ts.map +1 -1
- package/dist/tests/accounts.js +8 -5
- package/dist/tests/accounts.js.map +1 -1
- package/dist/tests/dataUtils/DatabaseAccounts.d.ts +13 -13
- package/dist/tests/dataUtils/DatabaseAccounts.d.ts.map +1 -1
- package/dist/tests/dataUtils/DatabaseAccounts.js.map +1 -1
- package/dist/tests/dataUtils/DatabasePopulator.d.ts +36 -28
- package/dist/tests/dataUtils/DatabasePopulator.d.ts.map +1 -1
- package/dist/tests/dataUtils/DatabasePopulator.js +128 -40
- package/dist/tests/dataUtils/DatabasePopulator.js.map +1 -1
- package/dist/tests/dataUtils/funds.d.ts +2 -1
- package/dist/tests/dataUtils/funds.d.ts.map +1 -1
- package/dist/tests/dataUtils/funds.js +54 -28
- package/dist/tests/dataUtils/funds.js.map +1 -1
- package/dist/tests/dataUtils/populateDatabase.d.ts +3 -2
- package/dist/tests/dataUtils/populateDatabase.d.ts.map +1 -1
- package/dist/tests/dataUtils/populateDatabase.js +9 -14
- package/dist/tests/dataUtils/populateDatabase.js.map +1 -1
- package/dist/tests/getUser.d.ts +2 -3
- package/dist/tests/getUser.d.ts.map +1 -1
- package/dist/tests/getUser.js.map +1 -1
- package/dist/tests/tasks/tasks.test.d.ts.map +1 -1
- package/dist/tests/tasks/tasks.test.js +5 -4
- package/dist/tests/tasks/tasks.test.js.map +1 -1
- package/package.json +13 -14
package/dist/api/captcha.js
CHANGED
|
@@ -22,7 +22,6 @@ export function prosopoRouter(env) {
|
|
|
22
22
|
}
|
|
23
23
|
validateAddress(user, false, api.registry.chainSS58);
|
|
24
24
|
const blockNumberParsed = parseBlockNumber(blockNumber);
|
|
25
|
-
await tasks.validateProviderWasRandomlyChosen(user, dapp, datasetId, blockNumberParsed);
|
|
26
25
|
const taskData = await tasks.getRandomCaptchasAndRequestHash(datasetId, user);
|
|
27
26
|
const captchaResponse = {
|
|
28
27
|
captchas: taskData.captchas.map((cwp) => ({
|
package/dist/api/captcha.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/api/captcha.ts"],"names":[],"mappings":"AAaA,OAAO,EACH,SAAS,EACT,QAAQ,EACR,kBAAkB,EAElB,mBAAmB,EAOnB,iCAAiC,EACjC,4BAA4B,EAE5B,kBAAkB,GAErB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,OAAmB,MAAM,SAAS,CAAA;AAQzC,MAAM,UAAU,aAAa,CAAC,GAAwB;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;IAS5B,MAAM,CAAC,GAAG,CACN,GAAG,QAAQ,CAAC,mBAAmB,KAAK,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,WAAW,EAAE,EACzH,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,IAAI;YACA,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YACnF,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;YACnB,IAAI,GAAG,KAAK,SAAS,EAAE;gBACnB,MAAM,IAAI,eAAe,CAAC,kCAAkC,EAAE;oBAC1D,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE;iBAC3C,CAAC,CAAA;aACL;YACD,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YACpD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"captcha.js","sourceRoot":"","sources":["../../src/api/captcha.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/api/captcha.cjs
CHANGED
|
@@ -26,7 +26,6 @@ function prosopoRouter(env) {
|
|
|
26
26
|
}
|
|
27
27
|
address.validateAddress(user, false, api.registry.chainSS58);
|
|
28
28
|
const blockNumberParsed = util.parseBlockNumber(blockNumber);
|
|
29
|
-
await tasks$1.validateProviderWasRandomlyChosen(user, dapp, datasetId, blockNumberParsed);
|
|
30
29
|
const taskData = await tasks$1.getRandomCaptchasAndRequestHash(datasetId, user);
|
|
31
30
|
const captchaResponse = {
|
|
32
31
|
captchas: taskData.captchas.map((cwp) => ({
|
package/dist/tests/accounts.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { IDappAccount, IProviderAccount } from '@prosopo/types';
|
|
2
2
|
import { ProviderEnvironment } from '@prosopo/types-env';
|
|
3
3
|
import { Tasks } from '../index.js';
|
|
4
|
-
|
|
5
|
-
export declare const
|
|
6
|
-
export declare const
|
|
4
|
+
import { TestAccount } from '@prosopo/env';
|
|
5
|
+
export declare const accountMnemonic: (account: TestAccount) => string;
|
|
6
|
+
export declare const accountAddress: (account: TestAccount) => string;
|
|
7
|
+
export declare const accountContract: (account: TestAccount) => string;
|
|
7
8
|
export type Account = [mnemonic: string, address: string, contractAddress?: string];
|
|
8
9
|
export declare const PROVIDER: IProviderAccount;
|
|
9
10
|
export declare const DAPP: IDappAccount;
|
|
10
|
-
export declare function getSignedTasks(env: ProviderEnvironment, account:
|
|
11
|
+
export declare function getSignedTasks(env: ProviderEnvironment, account: TestAccount): Promise<Tasks>;
|
|
11
12
|
//# sourceMappingURL=accounts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/tests/accounts.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/tests/accounts.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAG/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG1C,eAAO,MAAM,eAAe,YAAa,WAAW,WAAqB,CAAA;AACzE,eAAO,MAAM,cAAc,YAAa,WAAW,WAAoB,CAAA;AACvE,eAAO,MAAM,eAAe,YAAsB,WAAW,KAAG,MAO/D,CAAA;AACD,MAAM,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAAA;AAEnF,eAAO,MAAM,QAAQ,EAAE,gBAStB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,YAGlB,CAAA;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAInG"}
|
package/dist/tests/accounts.js
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { BN } from '@polkadot/util/bn';
|
|
2
2
|
import { Payee } from '@prosopo/captcha-contract/types-returns';
|
|
3
|
+
import { ProsopoError } from '@prosopo/common';
|
|
3
4
|
import { Tasks } from '../index.js';
|
|
4
5
|
import { getPairAsync } from '@prosopo/contract';
|
|
5
|
-
export const accountMnemonic = (account) => account
|
|
6
|
-
export const accountAddress = (account) => account
|
|
6
|
+
export const accountMnemonic = (account) => account.mnemonic;
|
|
7
|
+
export const accountAddress = (account) => account.address;
|
|
7
8
|
export const accountContract = function (account) {
|
|
8
|
-
if (account
|
|
9
|
-
return account
|
|
9
|
+
if (account.contractAddress) {
|
|
10
|
+
return account.contractAddress;
|
|
10
11
|
}
|
|
11
|
-
throw new Error(`Account ${account
|
|
12
|
+
throw new ProsopoError(new Error(`Account ${account} does not have a contract`), {
|
|
13
|
+
context: { failedFuncName: accountContract.name },
|
|
14
|
+
});
|
|
12
15
|
};
|
|
13
16
|
export const PROVIDER = {
|
|
14
17
|
url: 'http://localhost:9229',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/tests/accounts.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAA;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/tests/accounts.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAA;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAA;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAA;AACvE,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,OAAoB;IACzD,IAAI,OAAO,CAAC,eAAe,EAAE;QACzB,OAAO,OAAO,CAAC,eAAe,CAAA;KACjC;IACD,MAAM,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC,WAAW,OAAO,2BAA2B,CAAC,EAAE;QAC7E,OAAO,EAAE,EAAE,cAAc,EAAE,eAAe,CAAC,IAAI,EAAE;KACpD,CAAC,CAAA;AACN,CAAC,CAAA;AAGD,MAAM,CAAC,MAAM,QAAQ,GAAqB;IACtC,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,KAAK,CAAC,IAAI;IACjB,KAAK,EAAE,IAAI,EAAE,CAAC,gBAAgB,CAAC;IAC/B,WAAW,EAAE,sBAAsB;IACnC,gBAAgB,EAAE,EAAE;IACpB,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;CACd,CAAA;AAED,MAAM,CAAC,MAAM,IAAI,GAAiB;IAC9B,MAAM,EAAE,UAAU;IAClB,UAAU,EAAE,IAAI,EAAE,CAAC,gBAAgB,CAAC;CACvC,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAwB,EAAE,OAAoB;IAC/E,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IAC7G,MAAM,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AACzB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AppTestAccount, ProviderTestAccount, TestAccount } from '@prosopo/env';
|
|
2
2
|
export declare enum AccountKey {
|
|
3
3
|
providers = "providers",
|
|
4
4
|
providersWithStake = "providersWithStake",
|
|
@@ -8,12 +8,12 @@ export declare enum AccountKey {
|
|
|
8
8
|
dappUsers = "dappUsers"
|
|
9
9
|
}
|
|
10
10
|
export interface IDatabaseAccounts {
|
|
11
|
-
providers:
|
|
12
|
-
providersWithStake:
|
|
13
|
-
providersWithStakeAndDataset:
|
|
14
|
-
dapps:
|
|
15
|
-
dappsWithStake:
|
|
16
|
-
dappUsers:
|
|
11
|
+
providers: ProviderTestAccount[];
|
|
12
|
+
providersWithStake: ProviderTestAccount[];
|
|
13
|
+
providersWithStakeAndDataset: ProviderTestAccount[];
|
|
14
|
+
dapps: AppTestAccount[];
|
|
15
|
+
dappsWithStake: AppTestAccount[];
|
|
16
|
+
dappUsers: TestAccount[];
|
|
17
17
|
}
|
|
18
18
|
export declare function exportDatabaseAccounts(database: IDatabaseAccounts): Promise<unknown>;
|
|
19
19
|
declare class DatabaseAccounts implements IDatabaseAccounts {
|
|
@@ -23,12 +23,12 @@ declare class DatabaseAccounts implements IDatabaseAccounts {
|
|
|
23
23
|
private _registeredDapps;
|
|
24
24
|
private _registeredDappsWithStake;
|
|
25
25
|
private _registeredDappUsers;
|
|
26
|
-
get providers():
|
|
27
|
-
get providersWithStake():
|
|
28
|
-
get providersWithStakeAndDataset():
|
|
29
|
-
get dapps():
|
|
30
|
-
get dappsWithStake():
|
|
31
|
-
get dappUsers():
|
|
26
|
+
get providers(): ProviderTestAccount[];
|
|
27
|
+
get providersWithStake(): ProviderTestAccount[];
|
|
28
|
+
get providersWithStakeAndDataset(): ProviderTestAccount[];
|
|
29
|
+
get dapps(): AppTestAccount[];
|
|
30
|
+
get dappsWithStake(): AppTestAccount[];
|
|
31
|
+
get dappUsers(): TestAccount[];
|
|
32
32
|
importDatabaseAccounts(): Promise<unknown>;
|
|
33
33
|
}
|
|
34
34
|
export default DatabaseAccounts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseAccounts.d.ts","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabaseAccounts.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"DatabaseAccounts.d.ts","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabaseAccounts.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAM/E,oBAAY,UAAU;IAClB,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,4BAA4B,iCAAiC;IAC7D,KAAK,UAAU;IACf,cAAc,mBAAmB;IACjC,SAAS,cAAc;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,mBAAmB,EAAE,CAAA;IAEhC,kBAAkB,EAAE,mBAAmB,EAAE,CAAA;IAEzC,4BAA4B,EAAE,mBAAmB,EAAE,CAAA;IAEnD,KAAK,EAAE,cAAc,EAAE,CAAA;IAEvB,cAAc,EAAE,cAAc,EAAE,CAAA;IAEhC,SAAS,EAAE,WAAW,EAAE,CAAA;CAC3B;AAQD,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,iBAAiB,oBAmBvE;AAED,cAAM,gBAAiB,YAAW,iBAAiB;IAC/C,OAAO,CAAC,oBAAoB,CAA4B;IACxD,OAAO,CAAC,6BAA6B,CAA4B;IACjE,OAAO,CAAC,uCAAuC,CAA4B;IAC3E,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,yBAAyB,CAAuB;IACxD,OAAO,CAAC,oBAAoB,CAAoB;IAEhD,IAAI,SAAS,IAAI,mBAAmB,EAAE,CAErC;IACD,IAAI,kBAAkB,IAAI,mBAAmB,EAAE,CAE9C;IACD,IAAI,4BAA4B,IAAI,mBAAmB,EAAE,CAExD;IACD,IAAI,KAAK,IAAI,cAAc,EAAE,CAE5B;IACD,IAAI,cAAc,IAAI,cAAc,EAAE,CAErC;IAED,IAAI,SAAS,IAAI,WAAW,EAAE,CAE7B;IAEM,sBAAsB;CAqBhC;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseAccounts.js","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabaseAccounts.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AACxC,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,CAAN,IAAY,UAOX;AAPD,WAAY,UAAU;IAClB,qCAAuB,CAAA;IACvB,uDAAyC,CAAA;IACzC,2EAA6D,CAAA;IAC7D,6BAAe,CAAA;IACf,+CAAiC,CAAA;IACjC,qCAAuB,CAAA;AAC3B,CAAC,EAPW,UAAU,KAAV,UAAU,QAOrB;AAgBD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAA;AAEzD,SAAS,OAAO,CAAC,IAAyB;IACtC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAA;AACvG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,QAA2B;IACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACxC,OAAO;gBACH,GAAG,IAAI;gBACP,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;aAC9B,CAAA;QACL,CAAC,EAAE,EAAE,CAAC,CAAA;QAEN,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG;YAChE,IAAI,GAAG,EAAE;gBACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;aACnB;iBAAM;gBACH,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aAC3D;YAED,OAAO,CAAC,IAAI,CAAC,CAAA;QACjB,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC;AAED,MAAM,gBAAgB;IAAtB;QACY,yBAAoB,
|
|
1
|
+
{"version":3,"file":"DatabaseAccounts.js","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabaseAccounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Abi } from '@polkadot/api-contract/Abi';
|
|
2
|
-
import {
|
|
2
|
+
import { AppTestAccount, ProviderTestAccount } from '@prosopo/env';
|
|
3
3
|
import { IDatabaseAccounts } from './DatabaseAccounts.js';
|
|
4
|
-
import { ProsopoEnvError } from '@prosopo/common';
|
|
5
|
-
import { ProviderEnvironment } from '@prosopo/env';
|
|
4
|
+
import { LogLevel, ProsopoEnvError } from '@prosopo/common';
|
|
5
|
+
import { ProviderEnvironment, TestAccount } from '@prosopo/env';
|
|
6
|
+
import { TransactionQueue } from '@prosopo/tx';
|
|
6
7
|
export declare enum IDatabasePopulatorMethodNames {
|
|
7
8
|
registerProvider = "registerProvider",
|
|
8
9
|
registerProviderWithStake = "registerProviderWithStake",
|
|
@@ -12,54 +13,61 @@ export declare enum IDatabasePopulatorMethodNames {
|
|
|
12
13
|
registerDappUser = "registerDappUser"
|
|
13
14
|
}
|
|
14
15
|
export declare class IDatabasePopulatorMethods {
|
|
15
|
-
registerProvider: (fund: boolean, url?: string, noPush?: boolean) => Promise<
|
|
16
|
-
registerProviderWithStake: (fund: boolean) => Promise<
|
|
17
|
-
registerProviderWithStakeAndDataset: (fund: boolean) => Promise<
|
|
18
|
-
registerDapp: (fund: boolean,
|
|
19
|
-
registerDappWithStake: (fund: boolean) => Promise<
|
|
20
|
-
registerDappUser: (fund: boolean) => Promise<
|
|
16
|
+
registerProvider: (fund: boolean, url?: string, noPush?: boolean) => Promise<TestAccount>;
|
|
17
|
+
registerProviderWithStake: (fund: boolean) => Promise<TestAccount>;
|
|
18
|
+
registerProviderWithStakeAndDataset: (fund: boolean) => Promise<TestAccount>;
|
|
19
|
+
registerDapp: (fund: boolean, noPush?: boolean) => Promise<TestAccount>;
|
|
20
|
+
registerDappWithStake: (fund: boolean) => Promise<TestAccount>;
|
|
21
|
+
registerDappUser: (fund: boolean) => Promise<TestAccount>;
|
|
21
22
|
}
|
|
22
23
|
declare class DatabasePopulator implements IDatabaseAccounts, IDatabasePopulatorMethods {
|
|
23
24
|
private mockEnv;
|
|
25
|
+
private _transactionQueue;
|
|
24
26
|
private _registeredProviders;
|
|
25
27
|
private _registeredProvidersWithStake;
|
|
26
28
|
private _registeredProvidersWithStakeAndDataset;
|
|
27
29
|
private _registeredDapps;
|
|
28
30
|
private _registeredDappsWithStake;
|
|
29
31
|
private _registeredDappUsers;
|
|
32
|
+
private _registeredProviderUrls;
|
|
30
33
|
private providerStakeDefault;
|
|
31
34
|
private stakeAmount;
|
|
32
35
|
private sendAmount;
|
|
33
36
|
private dappAbiMetadata;
|
|
34
37
|
private dappWasm;
|
|
38
|
+
private logger;
|
|
35
39
|
private _isReady;
|
|
36
|
-
constructor(env: ProviderEnvironment, dappAbiMetadata: Abi, dappWasm: Uint8Array);
|
|
37
|
-
get
|
|
38
|
-
set
|
|
39
|
-
get
|
|
40
|
-
set
|
|
41
|
-
get
|
|
42
|
-
set
|
|
43
|
-
get
|
|
44
|
-
set
|
|
45
|
-
get
|
|
46
|
-
set
|
|
47
|
-
get
|
|
48
|
-
set
|
|
40
|
+
constructor(env: ProviderEnvironment, dappAbiMetadata: Abi, dappWasm: Uint8Array, logLevel?: LogLevel);
|
|
41
|
+
get transactionQueue(): TransactionQueue;
|
|
42
|
+
set transactionQueue(txQueue: TransactionQueue);
|
|
43
|
+
get providers(): ProviderTestAccount[];
|
|
44
|
+
set providers(providers: ProviderTestAccount[]);
|
|
45
|
+
get providersWithStake(): ProviderTestAccount[];
|
|
46
|
+
set providersWithStake(accounts: ProviderTestAccount[]);
|
|
47
|
+
get providersWithStakeAndDataset(): ProviderTestAccount[];
|
|
48
|
+
set providersWithStakeAndDataset(accounts: ProviderTestAccount[]);
|
|
49
|
+
get dapps(): AppTestAccount[];
|
|
50
|
+
set dapps(accounts: AppTestAccount[]);
|
|
51
|
+
get dappsWithStake(): AppTestAccount[];
|
|
52
|
+
set dappsWithStake(accounts: AppTestAccount[]);
|
|
53
|
+
get dappUsers(): TestAccount[];
|
|
54
|
+
set dappUsers(accounts: TestAccount[]);
|
|
49
55
|
isReady(): Promise<void>;
|
|
50
56
|
private createAccount;
|
|
51
57
|
private createAccountAndAddToKeyring;
|
|
52
58
|
private sendFunds;
|
|
53
59
|
private changeSigner;
|
|
54
|
-
registerProvider(fund: boolean, url?: string, noPush?: boolean): Promise<
|
|
60
|
+
registerProvider(fund: boolean, url?: string, noPush?: boolean): Promise<ProviderTestAccount>;
|
|
55
61
|
private updateProvider;
|
|
56
|
-
registerProviderWithStake(fund: boolean): Promise<
|
|
62
|
+
registerProviderWithStake(fund: boolean): Promise<ProviderTestAccount>;
|
|
57
63
|
private addDataset;
|
|
58
|
-
registerProviderWithStakeAndDataset(fund: boolean): Promise<
|
|
59
|
-
registerDapp(fund: boolean,
|
|
64
|
+
registerProviderWithStakeAndDataset(fund: boolean): Promise<TestAccount>;
|
|
65
|
+
registerDapp(fund: boolean, noPush?: boolean): Promise<TestAccount>;
|
|
60
66
|
private dappFund;
|
|
61
|
-
registerDappWithStake(fund: boolean): Promise<
|
|
62
|
-
registerDappUser(fund: boolean): Promise<
|
|
67
|
+
registerDappWithStake(fund: boolean): Promise<TestAccount>;
|
|
68
|
+
registerDappUser(fund: boolean): Promise<TestAccount>;
|
|
69
|
+
private randomUrl;
|
|
70
|
+
private submitTx;
|
|
63
71
|
createError(err: Error, functionName: string): ProsopoEnvError;
|
|
64
72
|
}
|
|
65
73
|
export default DatabasePopulator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabasePopulator.d.ts","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabasePopulator.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"DatabasePopulator.d.ts","sourceRoot":"","sources":["../../../src/tests/dataUtils/DatabasePopulator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import { accountAddress, accountContract, accountMnemonic } from '../accounts.js';
|
|
2
1
|
import { BN } from '@polkadot/util/bn';
|
|
3
2
|
import { ContractDeployer, getPairAsync, wrapQuery } from '@prosopo/contract';
|
|
4
3
|
import { DappPayee, Payee } from '@prosopo/captcha-contract/types-returns';
|
|
5
|
-
import { ProsopoContractError, ProsopoEnvError } from '@prosopo/common';
|
|
4
|
+
import { ProsopoContractError, ProsopoEnvError, getLogLevel, getLogger } from '@prosopo/common';
|
|
6
5
|
import { Tasks } from '../../tasks/index.js';
|
|
6
|
+
import { TransactionQueue } from '@prosopo/tx';
|
|
7
7
|
import { sendFunds as _sendFunds, getSendAmount, getStakeAmount } from './funds.js';
|
|
8
|
+
import { accountAddress, accountContract, accountMnemonic } from '../accounts.js';
|
|
8
9
|
import { createType } from '@polkadot/types/create';
|
|
9
10
|
import { datasetWithSolutionHashes } from '@prosopo/datasets';
|
|
10
11
|
import { get } from '@prosopo/util';
|
|
11
12
|
import { mnemonicGenerate } from '@polkadot/util-crypto/mnemonic';
|
|
12
13
|
import { randomAsHex } from '@polkadot/util-crypto/random';
|
|
13
14
|
import { stringToU8a } from '@polkadot/util/string';
|
|
14
|
-
const urlBase = 'http://localhost
|
|
15
|
+
const urlBase = 'http://localhost';
|
|
15
16
|
const PROVIDER_FEE = 10;
|
|
16
17
|
const PROVIDER_PAYEE = Payee.dapp;
|
|
17
18
|
export var IDatabasePopulatorMethodNames;
|
|
@@ -26,21 +27,24 @@ export var IDatabasePopulatorMethodNames;
|
|
|
26
27
|
export class IDatabasePopulatorMethods {
|
|
27
28
|
}
|
|
28
29
|
class DatabasePopulator {
|
|
29
|
-
constructor(env, dappAbiMetadata, dappWasm) {
|
|
30
|
+
constructor(env, dappAbiMetadata, dappWasm, logLevel) {
|
|
30
31
|
this._registeredProviders = [];
|
|
31
32
|
this._registeredProvidersWithStake = [];
|
|
32
33
|
this._registeredProvidersWithStakeAndDataset = [];
|
|
33
34
|
this._registeredDapps = [];
|
|
34
35
|
this._registeredDappsWithStake = [];
|
|
35
36
|
this._registeredDappUsers = [];
|
|
37
|
+
this._registeredProviderUrls = new Set();
|
|
36
38
|
this.providerStakeDefault = 0;
|
|
37
39
|
this.stakeAmount = 0;
|
|
38
40
|
this.sendAmount = 0;
|
|
39
41
|
this.mockEnv = env;
|
|
40
42
|
this.dappAbiMetadata = dappAbiMetadata;
|
|
41
43
|
this.dappWasm = dappWasm;
|
|
44
|
+
this.logger = getLogger(getLogLevel(logLevel), 'DatabasePopulator');
|
|
42
45
|
this._isReady = this.mockEnv.isReady().then(() => {
|
|
43
46
|
try {
|
|
47
|
+
this._transactionQueue = new TransactionQueue(this.mockEnv.getApi(), this.mockEnv.getPair(), this.logger.getLogLevel());
|
|
44
48
|
const tasks = new Tasks(this.mockEnv);
|
|
45
49
|
const promiseStakeDefault = wrapQuery(tasks.contract.query.getProviderStakeThreshold, tasks.contract.query)();
|
|
46
50
|
return promiseStakeDefault.then((res) => {
|
|
@@ -54,11 +58,20 @@ class DatabasePopulator {
|
|
|
54
58
|
}
|
|
55
59
|
});
|
|
56
60
|
}
|
|
61
|
+
get transactionQueue() {
|
|
62
|
+
if (!this._transactionQueue) {
|
|
63
|
+
throw new ProsopoEnvError('GENERAL.ENVIRONMENT_NOT_READY');
|
|
64
|
+
}
|
|
65
|
+
return this._transactionQueue;
|
|
66
|
+
}
|
|
67
|
+
set transactionQueue(txQueue) {
|
|
68
|
+
this._transactionQueue = txQueue;
|
|
69
|
+
}
|
|
57
70
|
get providers() {
|
|
58
71
|
return this._registeredProviders;
|
|
59
72
|
}
|
|
60
|
-
set providers(
|
|
61
|
-
this._registeredProviders =
|
|
73
|
+
set providers(providers) {
|
|
74
|
+
this._registeredProviders = providers;
|
|
62
75
|
}
|
|
63
76
|
get providersWithStake() {
|
|
64
77
|
return this._registeredProvidersWithStake;
|
|
@@ -98,7 +111,7 @@ class DatabasePopulator {
|
|
|
98
111
|
if (!account) {
|
|
99
112
|
throw new ProsopoEnvError('DEVELOPER.CREATE_ACCOUNT_FAILED');
|
|
100
113
|
}
|
|
101
|
-
return account;
|
|
114
|
+
return { address: account[1], mnemonic: account[0], contractAddress: undefined };
|
|
102
115
|
}
|
|
103
116
|
createAccountAndAddToKeyring() {
|
|
104
117
|
const mnemonic = mnemonicGenerate();
|
|
@@ -108,7 +121,7 @@ class DatabasePopulator {
|
|
|
108
121
|
}
|
|
109
122
|
sendFunds(account, payee, amount) {
|
|
110
123
|
const address = typeof account === 'string' ? account : accountAddress(account);
|
|
111
|
-
return _sendFunds(this.mockEnv, address, payee.toString(), amount);
|
|
124
|
+
return _sendFunds(this.mockEnv, address, payee.toString(), amount, this.transactionQueue);
|
|
112
125
|
}
|
|
113
126
|
async changeSigner(account) {
|
|
114
127
|
const mnemonic = typeof account === 'string' ? account : accountMnemonic(account);
|
|
@@ -121,31 +134,47 @@ class DatabasePopulator {
|
|
|
121
134
|
}
|
|
122
135
|
async registerProvider(fund, url, noPush) {
|
|
123
136
|
try {
|
|
124
|
-
const urlString = url ||
|
|
137
|
+
const urlString = url || this.randomUrl();
|
|
125
138
|
const _url = Array.from(stringToU8a(urlString));
|
|
126
139
|
const account = this.createAccount();
|
|
127
|
-
this.
|
|
140
|
+
this.logger.debug('Registering provider', '`', accountAddress(account), '`', 'with url', urlString, 'and mnemonic', '`', accountMnemonic(account), '`');
|
|
128
141
|
if (fund) {
|
|
129
142
|
await this.sendFunds(accountAddress(account), 'Provider', this.sendAmount);
|
|
130
143
|
}
|
|
131
144
|
await this.changeSigner(accountMnemonic(account));
|
|
145
|
+
const pair = await this.mockEnv.getSigner();
|
|
132
146
|
const tasks = new Tasks(this.mockEnv);
|
|
133
|
-
|
|
134
|
-
const
|
|
147
|
+
const args = [_url, PROVIDER_FEE, PROVIDER_PAYEE];
|
|
148
|
+
const result = await this.submitTx(tasks, 'providerRegister', args, this.stakeAmount, pair);
|
|
149
|
+
this.logger.info('Provider registered with account', accountAddress(account), 'url', urlString, result.toHuman());
|
|
150
|
+
const _provider = (await tasks.contract.query.getProvider(accountAddress(account))).value.unwrap().unwrap();
|
|
151
|
+
const providerTestAccount = {
|
|
152
|
+
...account,
|
|
153
|
+
contractValue: _provider,
|
|
154
|
+
};
|
|
135
155
|
if (!noPush) {
|
|
136
|
-
this._registeredProviders.push(
|
|
156
|
+
this._registeredProviders.push(providerTestAccount);
|
|
137
157
|
}
|
|
138
|
-
return
|
|
158
|
+
return providerTestAccount;
|
|
139
159
|
}
|
|
140
160
|
catch (e) {
|
|
141
161
|
throw this.createError(e, this.registerProvider.name);
|
|
142
162
|
}
|
|
143
163
|
}
|
|
144
|
-
async updateProvider(account
|
|
164
|
+
async updateProvider(account) {
|
|
145
165
|
try {
|
|
146
166
|
await this.changeSigner(account);
|
|
167
|
+
const pair = await this.mockEnv.getSigner();
|
|
147
168
|
const tasks = new Tasks(this.mockEnv);
|
|
148
|
-
|
|
169
|
+
const args = [
|
|
170
|
+
account.contractValue.url,
|
|
171
|
+
createType(this.mockEnv.getContractInterface().abi.registry, 'Balance', PROVIDER_FEE),
|
|
172
|
+
PROVIDER_PAYEE,
|
|
173
|
+
];
|
|
174
|
+
this.logger.info('Updating provider', account.address, account.contractValue);
|
|
175
|
+
await this.submitTx(tasks, 'providerUpdate', args, 0, pair);
|
|
176
|
+
this.logger.info('Provider updated', account.address);
|
|
177
|
+
return (await tasks.contract.query.getProvider(accountAddress(account))).value.unwrap().unwrap();
|
|
149
178
|
}
|
|
150
179
|
catch (e) {
|
|
151
180
|
throw this.createError(e, this.updateProvider.name);
|
|
@@ -153,10 +182,13 @@ class DatabasePopulator {
|
|
|
153
182
|
}
|
|
154
183
|
async registerProviderWithStake(fund) {
|
|
155
184
|
try {
|
|
156
|
-
const url =
|
|
185
|
+
const url = this.randomUrl();
|
|
157
186
|
const account = await this.registerProvider(fund, url, true);
|
|
158
|
-
await this.updateProvider(account
|
|
159
|
-
this._registeredProvidersWithStake.push(
|
|
187
|
+
const provider = await this.updateProvider(account);
|
|
188
|
+
this._registeredProvidersWithStake.push({
|
|
189
|
+
...account,
|
|
190
|
+
contractValue: provider,
|
|
191
|
+
});
|
|
160
192
|
return account;
|
|
161
193
|
}
|
|
162
194
|
catch (e) {
|
|
@@ -168,6 +200,7 @@ class DatabasePopulator {
|
|
|
168
200
|
await this.changeSigner(account);
|
|
169
201
|
const tasks = new Tasks(this.mockEnv);
|
|
170
202
|
await tasks.providerSetDataset(dataset);
|
|
203
|
+
return (await tasks.contract.query.getProvider(accountAddress(account))).value.unwrap().unwrap();
|
|
171
204
|
}
|
|
172
205
|
catch (e) {
|
|
173
206
|
throw this.createError(e, this.addDataset.name);
|
|
@@ -175,48 +208,63 @@ class DatabasePopulator {
|
|
|
175
208
|
}
|
|
176
209
|
async registerProviderWithStakeAndDataset(fund) {
|
|
177
210
|
try {
|
|
178
|
-
const url =
|
|
211
|
+
const url = this.randomUrl();
|
|
212
|
+
this.logger.debug('url when registering provider with stake and dataset', url);
|
|
179
213
|
const account = await this.registerProvider(fund, url, true);
|
|
180
|
-
|
|
181
|
-
await this.
|
|
182
|
-
this.
|
|
214
|
+
this.logger.debug('url when registering provider with stake and dataset', url, account.address);
|
|
215
|
+
await this.updateProvider(account);
|
|
216
|
+
const provider = await this.addDataset(account, datasetWithSolutionHashes);
|
|
217
|
+
this._registeredProvidersWithStakeAndDataset.push({
|
|
218
|
+
...account,
|
|
219
|
+
contractValue: provider,
|
|
220
|
+
});
|
|
183
221
|
return account;
|
|
184
222
|
}
|
|
185
223
|
catch (e) {
|
|
186
224
|
throw this.createError(e, this.registerProviderWithStakeAndDataset.name);
|
|
187
225
|
}
|
|
188
226
|
}
|
|
189
|
-
async registerDapp(fund,
|
|
227
|
+
async registerDapp(fund, noPush) {
|
|
190
228
|
try {
|
|
191
229
|
const account = this.createAccount();
|
|
192
|
-
this.
|
|
230
|
+
this.logger.debug('Sending funds to `', accountAddress(account), '`');
|
|
193
231
|
if (fund) {
|
|
194
232
|
await this.sendFunds(accountAddress(account), 'Dapp', this.sendAmount);
|
|
195
233
|
}
|
|
196
|
-
this.
|
|
234
|
+
this.logger.debug('Changing signer to `', accountAddress(account), '`');
|
|
197
235
|
await this.changeSigner(accountMnemonic(account));
|
|
198
|
-
this.
|
|
236
|
+
this.logger.debug('Pair address`', this.mockEnv.pair?.address, '`');
|
|
199
237
|
const tasks = new Tasks(this.mockEnv);
|
|
200
238
|
const dappParams = ['1000000000000000000', 1000, this.mockEnv.getContractInterface().address, 65, 1000000];
|
|
201
239
|
if (!this.mockEnv.pair) {
|
|
202
240
|
throw new ProsopoContractError('CONTRACT.SIGNER_UNDEFINED');
|
|
203
241
|
}
|
|
204
|
-
const deployer = new ContractDeployer(this.mockEnv.getApi(), this.dappAbiMetadata, this.dappWasm, this.mockEnv.pair, dappParams, 0, 0, randomAsHex(), this.mockEnv.config.logLevel);
|
|
242
|
+
const deployer = new ContractDeployer(this.mockEnv.getApi(), this.dappAbiMetadata, this.dappWasm, this.mockEnv.pair, dappParams, 0, 0, randomAsHex(), this.mockEnv.config.logLevel, this.transactionQueue);
|
|
205
243
|
const deployResult = await deployer.deploy();
|
|
206
244
|
const instantiateEvent = deployResult.events.find((event) => event.event.section === 'contracts' && event.event.method === 'Instantiated');
|
|
207
245
|
const contractAddress = String(get(instantiateEvent?.event.data, 'contract'));
|
|
208
|
-
account.
|
|
209
|
-
this.
|
|
246
|
+
account.contractAddress = contractAddress;
|
|
247
|
+
this.logger.debug('Dapp contract address', contractAddress);
|
|
210
248
|
const queryResult = await tasks.contract.query.dappRegister(contractAddress, DappPayee.dapp);
|
|
249
|
+
this.logger.debug('Dapp contract queryResult', JSON.stringify(queryResult, null, 4));
|
|
211
250
|
const error = queryResult.value.err || queryResult.value.ok?.err;
|
|
212
251
|
if (error) {
|
|
213
252
|
throw new ProsopoContractError(new Error(error));
|
|
214
253
|
}
|
|
215
|
-
|
|
254
|
+
this.logger.debug('Submitting TX to queue using account', tasks.contract.pair.address);
|
|
255
|
+
const txResult = await this.submitTx(tasks, 'dappRegister', [contractAddress, DappPayee.dapp], 0, tasks.contract.pair);
|
|
256
|
+
this.logger.info('App registered', contractAddress, txResult.toHuman());
|
|
257
|
+
if (txResult.isError) {
|
|
258
|
+
throw new ProsopoContractError(new Error(txResult.isError.toString()));
|
|
259
|
+
}
|
|
216
260
|
const dapp = await tasks.contract.query.getDapp(contractAddress);
|
|
217
|
-
this.
|
|
261
|
+
this.logger.info('App registered result', dapp.value.unwrap().unwrap());
|
|
218
262
|
if (!noPush) {
|
|
219
|
-
this._registeredDapps.push(
|
|
263
|
+
this._registeredDapps.push({
|
|
264
|
+
...account,
|
|
265
|
+
contractValue: dapp.value.unwrap().unwrap(),
|
|
266
|
+
contractAddress,
|
|
267
|
+
});
|
|
220
268
|
}
|
|
221
269
|
return account;
|
|
222
270
|
}
|
|
@@ -227,14 +275,20 @@ class DatabasePopulator {
|
|
|
227
275
|
async dappFund(account) {
|
|
228
276
|
await this.changeSigner(account);
|
|
229
277
|
const tasks = new Tasks(this.mockEnv);
|
|
230
|
-
|
|
278
|
+
this.logger.info('Funding app', accountContract(account), 'from account', tasks.contract.pair.address);
|
|
279
|
+
await this.submitTx(tasks, 'dappFund', [accountContract(account)], this.stakeAmount, tasks.contract.pair);
|
|
280
|
+
this.logger.info('App funded');
|
|
281
|
+
return (await tasks.contract.query.getDapp(accountContract(account))).value.unwrap().unwrap();
|
|
231
282
|
}
|
|
232
283
|
async registerDappWithStake(fund) {
|
|
233
284
|
try {
|
|
234
|
-
const url =
|
|
235
|
-
const account = await this.registerDapp(fund,
|
|
236
|
-
await this.dappFund(account);
|
|
237
|
-
this._registeredDappsWithStake.push(
|
|
285
|
+
const url = this.randomUrl();
|
|
286
|
+
const account = await this.registerDapp(fund, true);
|
|
287
|
+
const dapp = await this.dappFund(account);
|
|
288
|
+
this._registeredDappsWithStake.push({
|
|
289
|
+
...account,
|
|
290
|
+
contractValue: dapp,
|
|
291
|
+
});
|
|
238
292
|
return account;
|
|
239
293
|
}
|
|
240
294
|
catch (e) {
|
|
@@ -246,14 +300,48 @@ class DatabasePopulator {
|
|
|
246
300
|
if (fund) {
|
|
247
301
|
await this.sendFunds(accountAddress(account), 'DappUser', this.sendAmount);
|
|
248
302
|
}
|
|
249
|
-
this._registeredDappUsers.push(
|
|
303
|
+
this._registeredDappUsers.push({
|
|
304
|
+
...account,
|
|
305
|
+
});
|
|
250
306
|
return account;
|
|
251
307
|
}
|
|
308
|
+
randomUrl() {
|
|
309
|
+
let url = `${urlBase}/${randomAsHex()}`;
|
|
310
|
+
while (this._registeredProviderUrls.has(url)) {
|
|
311
|
+
url = urlBase + randomAsHex();
|
|
312
|
+
}
|
|
313
|
+
this._registeredProviderUrls.add(url);
|
|
314
|
+
return url;
|
|
315
|
+
}
|
|
316
|
+
async submitTx(tasks, method, args, value, pair) {
|
|
317
|
+
return new Promise((resolve, reject) => {
|
|
318
|
+
if (tasks.contract.nativeContract.tx &&
|
|
319
|
+
method in tasks.contract.nativeContract.tx &&
|
|
320
|
+
tasks.contract.nativeContract.tx[method] !== undefined) {
|
|
321
|
+
try {
|
|
322
|
+
tasks.contract.dryRunContractMethod(method, args, value).then((extrinsic) => {
|
|
323
|
+
this.transactionQueue.add(extrinsic, (result) => {
|
|
324
|
+
resolve(result);
|
|
325
|
+
}, pair, method);
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
catch (err) {
|
|
329
|
+
reject(err);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
else {
|
|
333
|
+
reject(new ProsopoContractError('CONTRACT.INVALID_METHOD'));
|
|
334
|
+
}
|
|
335
|
+
});
|
|
336
|
+
}
|
|
252
337
|
createError(err, functionName) {
|
|
253
338
|
const e = {
|
|
254
339
|
error: err,
|
|
255
340
|
};
|
|
256
|
-
return new ProsopoEnvError('DEVELOPER.CREATE_ACCOUNT_FAILED', {
|
|
341
|
+
return new ProsopoEnvError('DEVELOPER.CREATE_ACCOUNT_FAILED', {
|
|
342
|
+
context: { functionName, e },
|
|
343
|
+
logLevel: this.logger.getLogLevel(),
|
|
344
|
+
});
|
|
257
345
|
}
|
|
258
346
|
}
|
|
259
347
|
export default DatabasePopulator;
|