@prosopo/scripts 2.1.4 → 2.1.6
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/cli/index.d.ts +2 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +96 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/contract/deploy/dapp.d.ts +3 -0
- package/dist/contract/deploy/dapp.d.ts.map +1 -0
- package/dist/contract/deploy/dapp.js +26 -0
- package/dist/contract/deploy/dapp.js.map +1 -0
- package/dist/contract/deploy/index.d.ts +3 -0
- package/dist/contract/deploy/index.d.ts.map +1 -0
- package/dist/contract/deploy/index.js +3 -0
- package/dist/contract/deploy/index.js.map +1 -0
- package/dist/contract/deploy/protocol.d.ts +3 -0
- package/dist/contract/deploy/protocol.d.ts.map +1 -0
- package/dist/contract/deploy/protocol.js +53 -0
- package/dist/contract/deploy/protocol.js.map +1 -0
- package/dist/contract/fundDapps.d.ts +20 -0
- package/dist/contract/fundDapps.d.ts.map +1 -0
- package/dist/contract/fundDapps.js +50 -0
- package/dist/contract/fundDapps.js.map +1 -0
- package/dist/contract/import.d.ts +3 -0
- package/dist/contract/import.d.ts.map +1 -0
- package/dist/contract/import.js +164 -0
- package/dist/contract/import.js.map +1 -0
- package/dist/contract/index.d.ts +2 -0
- package/dist/contract/index.d.ts.map +1 -0
- package/dist/contract/index.js +2 -0
- package/dist/contract/index.js.map +1 -0
- package/dist/contract/sources/dapp/411053b7ec79cc77f5ec9f5eb18610b24daaaaf0/dapp.json +648 -0
- package/dist/contract/transferContract.d.ts +6 -0
- package/dist/contract/transferContract.d.ts.map +1 -0
- package/dist/contract/transferContract.js +142 -0
- package/dist/contract/transferContract.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/migrates/provider.db.2.0.1.to.2.0.2.d.ts +2 -0
- package/dist/migrates/provider.db.2.0.1.to.2.0.2.d.ts.map +1 -0
- package/dist/migrates/provider.db.2.0.1.to.2.0.2.js +114 -0
- package/dist/migrates/provider.db.2.0.1.to.2.0.2.js.map +1 -0
- package/dist/scripts/addCopyrightNotice.d.ts +2 -0
- package/dist/scripts/addCopyrightNotice.d.ts.map +1 -0
- package/dist/scripts/addCopyrightNotice.js +108 -0
- package/dist/scripts/addCopyrightNotice.js.map +1 -0
- package/dist/scripts/bytesToHex.d.ts +2 -0
- package/dist/scripts/bytesToHex.d.ts.map +1 -0
- package/dist/scripts/bytesToHex.js +7 -0
- package/dist/scripts/bytesToHex.js.map +1 -0
- package/dist/scripts/convertAccount.d.ts +2 -0
- package/dist/scripts/convertAccount.d.ts.map +1 -0
- package/dist/scripts/convertAccount.js +24 -0
- package/dist/scripts/convertAccount.js.map +1 -0
- package/dist/scripts/encodeDecode.d.ts +2 -0
- package/dist/scripts/encodeDecode.d.ts.map +1 -0
- package/dist/scripts/encodeDecode.js +108 -0
- package/dist/scripts/encodeDecode.js.map +1 -0
- package/dist/scripts/findUnused.d.ts +2 -0
- package/dist/scripts/findUnused.d.ts.map +1 -0
- package/dist/scripts/findUnused.js +79 -0
- package/dist/scripts/findUnused.js.map +1 -0
- package/dist/scripts/generateMnemonic.d.ts +2 -0
- package/dist/scripts/generateMnemonic.d.ts.map +1 -0
- package/dist/scripts/generateMnemonic.js +24 -0
- package/dist/scripts/generateMnemonic.js.map +1 -0
- package/dist/scripts/getBlock.d.ts +2 -0
- package/dist/scripts/getBlock.d.ts.map +1 -0
- package/dist/scripts/getBlock.js +17 -0
- package/dist/scripts/getBlock.js.map +1 -0
- package/dist/scripts/getContractInfoOf.d.ts +2 -0
- package/dist/scripts/getContractInfoOf.d.ts.map +1 -0
- package/dist/scripts/getContractInfoOf.js +40 -0
- package/dist/scripts/getContractInfoOf.js.map +1 -0
- package/dist/scripts/getExistentialDeposit.d.ts +2 -0
- package/dist/scripts/getExistentialDeposit.d.ts.map +1 -0
- package/dist/scripts/getExistentialDeposit.js +27 -0
- package/dist/scripts/getExistentialDeposit.js.map +1 -0
- package/dist/scripts/getRandomProvider.d.ts +2 -0
- package/dist/scripts/getRandomProvider.d.ts.map +1 -0
- package/dist/scripts/getRandomProvider.js +23 -0
- package/dist/scripts/getRandomProvider.js.map +1 -0
- package/dist/scripts/getStorage.d.ts +2 -0
- package/dist/scripts/getStorage.d.ts.map +1 -0
- package/dist/scripts/getStorage.js +25 -0
- package/dist/scripts/getStorage.js.map +1 -0
- package/dist/scripts/hash.d.ts +2 -0
- package/dist/scripts/hash.d.ts.map +1 -0
- package/dist/scripts/hash.js +41 -0
- package/dist/scripts/hash.js.map +1 -0
- package/dist/scripts/hexToBytes.d.ts +2 -0
- package/dist/scripts/hexToBytes.d.ts.map +1 -0
- package/dist/scripts/hexToBytes.js +6 -0
- package/dist/scripts/hexToBytes.js.map +1 -0
- package/dist/scripts/sendFunds.d.ts +2 -0
- package/dist/scripts/sendFunds.d.ts.map +1 -0
- package/dist/scripts/sendFunds.js +22 -0
- package/dist/scripts/sendFunds.js.map +1 -0
- package/dist/scripts/setVersion.d.ts +2 -0
- package/dist/scripts/setVersion.d.ts.map +1 -0
- package/dist/scripts/setVersion.js +133 -0
- package/dist/scripts/setVersion.js.map +1 -0
- package/dist/scripts/sign.d.ts +2 -0
- package/dist/scripts/sign.d.ts.map +1 -0
- package/dist/scripts/sign.js +41 -0
- package/dist/scripts/sign.js.map +1 -0
- package/dist/scripts/verifySignature.d.ts +2 -0
- package/dist/scripts/verifySignature.d.ts.map +1 -0
- package/dist/scripts/verifySignature.js +18 -0
- package/dist/scripts/verifySignature.js.map +1 -0
- package/dist/setup/dapp.d.ts +3 -0
- package/dist/setup/dapp.d.ts.map +1 -0
- package/dist/setup/dapp.js +8 -0
- package/dist/setup/dapp.js.map +1 -0
- package/dist/setup/funds.d.ts +8 -0
- package/dist/setup/funds.d.ts.map +1 -0
- package/dist/setup/funds.js +50 -0
- package/dist/setup/funds.js.map +1 -0
- package/dist/setup/index.d.ts +3 -0
- package/dist/setup/index.d.ts.map +1 -0
- package/dist/setup/index.js +3 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/setup/provider.d.ts +4 -0
- package/dist/setup/provider.d.ts.map +1 -0
- package/dist/setup/provider.js +15 -0
- package/dist/setup/provider.js.map +1 -0
- package/dist/setup/setup.d.ts +3 -0
- package/dist/setup/setup.d.ts.map +1 -0
- package/dist/setup/setup.js +121 -0
- package/dist/setup/setup.js.map +1 -0
- package/dist/util/exec.d.ts +10 -0
- package/dist/util/exec.d.ts.map +1 -0
- package/dist/util/exec.js +45 -0
- package/dist/util/exec.js.map +1 -0
- package/dist/util/fluxLogDappDetails.d.ts +2 -0
- package/dist/util/fluxLogDappDetails.d.ts.map +1 -0
- package/dist/util/fluxLogDappDetails.js +16 -0
- package/dist/util/fluxLogDappDetails.js.map +1 -0
- package/dist/util/index.d.ts +5 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +5 -0
- package/dist/util/index.js.map +1 -0
- package/dist/util/loadContractFiles.d.ts +4 -0
- package/dist/util/loadContractFiles.d.ts.map +1 -0
- package/dist/util/loadContractFiles.js +40 -0
- package/dist/util/loadContractFiles.js.map +1 -0
- package/dist/util/updateEnv.d.ts +5 -0
- package/dist/util/updateEnv.d.ts.map +1 -0
- package/dist/util/updateEnv.js +66 -0
- package/dist/util/updateEnv.js.map +1 -0
- package/env.staging +1 -1
- package/package.json +14 -14
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { stringToU8a, u8aToHex } from "@polkadot/util";
|
|
2
|
+
import { getPairAsync } from "@prosopo/contract";
|
|
3
|
+
import yargs from "yargs";
|
|
4
|
+
import { hideBin } from "yargs/helpers";
|
|
5
|
+
const main = async () => {
|
|
6
|
+
console.log("argv", process.argv);
|
|
7
|
+
const argv = await yargs(hideBin(process.argv))
|
|
8
|
+
.option("mnemonic", {
|
|
9
|
+
alias: "seed",
|
|
10
|
+
type: "string",
|
|
11
|
+
})
|
|
12
|
+
.option("message", {
|
|
13
|
+
alias: "msg",
|
|
14
|
+
type: "string",
|
|
15
|
+
})
|
|
16
|
+
.option("type", {
|
|
17
|
+
type: "string",
|
|
18
|
+
choices: ["sr25519", "ed25519", "ecdsa", "ethereum"],
|
|
19
|
+
default: "sr25519",
|
|
20
|
+
})
|
|
21
|
+
.option("ss58Format", {
|
|
22
|
+
type: "number",
|
|
23
|
+
default: 42,
|
|
24
|
+
})
|
|
25
|
+
.parse();
|
|
26
|
+
const mnemonic = argv.mnemonic;
|
|
27
|
+
if (!mnemonic) {
|
|
28
|
+
throw new Error("mnemonic is required");
|
|
29
|
+
}
|
|
30
|
+
const message = argv.message;
|
|
31
|
+
if (!message) {
|
|
32
|
+
throw new Error("message is required");
|
|
33
|
+
}
|
|
34
|
+
const type = argv.type;
|
|
35
|
+
const ss58Format = argv.ss58Format;
|
|
36
|
+
const keypair = await getPairAsync(mnemonic, undefined, type, ss58Format);
|
|
37
|
+
const sig = keypair.sign(stringToU8a(message));
|
|
38
|
+
console.log(`hex sig: ${u8aToHex(sig)}`);
|
|
39
|
+
};
|
|
40
|
+
main();
|
|
41
|
+
//# sourceMappingURL=sign.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/scripts/sign.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAevD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC7C,MAAM,CAAC,UAAU,EAAE;QACnB,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,QAAQ;KACd,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QAClB,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,QAAQ;KACd,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;QACpD,OAAO,EAAE,SAAS;KAClB,CAAC;SACD,MAAM,CAAC,YAAY,EAAE;QACrB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;KACX,CAAC;SACD,KAAK,EAAE,CAAC;IACV,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAmB,CAAC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IAEnC,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAE1E,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,YAAY,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifySignature.d.ts","sourceRoot":"","sources":["../../src/scripts/verifySignature.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { defaultConfig } from '@prosopo/cli';
|
|
2
|
+
import { getPairAsync } from '@prosopo/contract';
|
|
3
|
+
import { u8aToHex } from '@polkadot/util';
|
|
4
|
+
import { verifySignature } from '@prosopo/provider';
|
|
5
|
+
async function run(dappSignature, blockNumber, dappSecret) {
|
|
6
|
+
const config = defaultConfig();
|
|
7
|
+
const network = config.networks[config.defaultNetwork];
|
|
8
|
+
const dappPair = await getPairAsync(network, dappSecret);
|
|
9
|
+
const dappSignatureNew = dappPair.sign(blockNumber.toString());
|
|
10
|
+
const signatureHexNew = u8aToHex(dappSignatureNew);
|
|
11
|
+
console.log(signatureHexNew);
|
|
12
|
+
verifySignature(signatureHexNew, blockNumber.toString(), dappPair);
|
|
13
|
+
verifySignature(dappSignature, blockNumber.toString(), dappPair);
|
|
14
|
+
}
|
|
15
|
+
run('0x28e16e897a3c49f09d60bf4ba78bf287189218246c3ce39c89d7fc692676784a6398f755fbef673b76fe7f8fd8408d73d63adf662fbc130e4c06f1293349be83', 6340497, '0xbb8157bb73ac2abd6397b15fd8783c1ccfe3c73d3fdfbf94149d1712edce54389b241bdd910806fc959b2a7287fcacc6600730bd072193e9512f301b1a66edaf')
|
|
16
|
+
.then(console.log)
|
|
17
|
+
.catch(console.error);
|
|
18
|
+
//# sourceMappingURL=verifySignature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifySignature.js","sourceRoot":"","sources":["../../src/scripts/verifySignature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,KAAK,UAAU,GAAG,CAAC,aAAqB,EAAE,WAA4B,EAAE,UAAkB;IACtF,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;IACtD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAExD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC9D,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IAClD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IAI5B,eAAe,CAAC,eAAe,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAA;IAClE,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAA;AACpE,CAAC;AACD,GAAG,CACC,oIAAoI,EACpI,OAAO,EAEP,oIAAoI,CAEvI;KACI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;KACjB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dapp.d.ts","sourceRoot":"","sources":["../../src/setup/dapp.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGxD,wBAAsB,eAAe,CACpC,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAKf"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Tasks } from "@prosopo/provider";
|
|
2
|
+
export async function registerSiteKey(env, siteKey) {
|
|
3
|
+
const logger = env.logger;
|
|
4
|
+
const tasks = new Tasks(env);
|
|
5
|
+
logger.info(" - siteKeyRegister");
|
|
6
|
+
await tasks.clientTaskManager.registerSiteKey(siteKey, {});
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=dapp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dapp.js","sourceRoot":"","sources":["../../src/setup/dapp.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,GAAwB,EACxB,OAAe;IAEf,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC1B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACpC,MAAM,KAAK,CAAC,iBAAiB,CAAC,eAAe,CAAC,OAAiB,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="bn.js" />
|
|
2
|
+
import { AnyNumber } from '@polkadot/types-codec/types';
|
|
3
|
+
import { BN } from '@polkadot/util';
|
|
4
|
+
import { ProsopoEnvironment } from '@prosopo/types-env';
|
|
5
|
+
export declare function sendFunds(env: ProsopoEnvironment, address: string, who: string, amount: AnyNumber): Promise<void>;
|
|
6
|
+
export declare function getStakeAmount(env: ProsopoEnvironment, providerStakeDefault: BN, stakeMultiplier?: number): BN;
|
|
7
|
+
export declare function getSendAmount(env: ProsopoEnvironment, stakeAmount: BN): BN;
|
|
8
|
+
//# sourceMappingURL=funds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funds.d.ts","sourceRoot":"","sources":["../../src/setup/funds.ts"],"names":[],"mappings":";AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AAEnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAkBvD,wBAAsB,SAAS,CAC3B,GAAG,EAAE,kBAAkB,EACvB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAUD,wBAAgB,cAAc,CAAC,GAAG,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,EAAE,CAgB9G;AAQD,wBAAgB,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,CAS1E"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { BN } from '@polkadot/util';
|
|
2
|
+
import { ProsopoEnvError } from '@prosopo/common';
|
|
3
|
+
import { at } from '@prosopo/util';
|
|
4
|
+
import { getBalance, oneUnit } from '@prosopo/tx';
|
|
5
|
+
import { send } from '@prosopo/tx';
|
|
6
|
+
const devMnemonics = ['//Alice', '//Bob', '//Charlie', '//Dave', '//Eve', '//Ferdie'];
|
|
7
|
+
let current = -1;
|
|
8
|
+
const MAX_ACCOUNT_FUND = 10000;
|
|
9
|
+
function getNextMnemonic() {
|
|
10
|
+
current = (current + 1) % devMnemonics.length;
|
|
11
|
+
return at(devMnemonics, current);
|
|
12
|
+
}
|
|
13
|
+
export async function sendFunds(env, address, who, amount) {
|
|
14
|
+
const envApi = env.getApi();
|
|
15
|
+
await envApi.isReady;
|
|
16
|
+
const mnemonic = getNextMnemonic();
|
|
17
|
+
const pair = env.keyring.addFromMnemonic(mnemonic);
|
|
18
|
+
const nonce = await envApi.rpc.system.accountNextIndex(pair.address);
|
|
19
|
+
const previousFree = await getBalance(envApi, pair.address);
|
|
20
|
+
if (previousFree.lt(new BN(amount.toString()))) {
|
|
21
|
+
throw new ProsopoEnvError('DEVELOPER.BALANCE_TOO_LOW', {
|
|
22
|
+
context: {
|
|
23
|
+
mnemonic,
|
|
24
|
+
previousFree: previousFree.toString(),
|
|
25
|
+
amount: amount.toString(),
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
await send(envApi, address, amount, pair, nonce);
|
|
30
|
+
}
|
|
31
|
+
export function getStakeAmount(env, providerStakeDefault, stakeMultiplier) {
|
|
32
|
+
const unit = oneUnit(env.getApi());
|
|
33
|
+
const stake100 = BN.max(providerStakeDefault.muln(stakeMultiplier || 100), unit);
|
|
34
|
+
const maxStake = unit.muln(MAX_ACCOUNT_FUND);
|
|
35
|
+
if (stake100.lt(maxStake)) {
|
|
36
|
+
env.logger.debug('Setting stake amount to', stake100.div(unit).toNumber(), 'UNIT');
|
|
37
|
+
return stake100;
|
|
38
|
+
}
|
|
39
|
+
env.logger.debug('Setting stake amount to', maxStake.div(unit).toNumber(), 'UNIT');
|
|
40
|
+
return maxStake;
|
|
41
|
+
}
|
|
42
|
+
export function getSendAmount(env, stakeAmount) {
|
|
43
|
+
const unit = oneUnit(env.getApi());
|
|
44
|
+
env.logger.debug('Stake amount', stakeAmount.div(unit).toNumber(), 'UNIT');
|
|
45
|
+
let sendAmount = new BN(stakeAmount).muln(2);
|
|
46
|
+
sendAmount = BN.max(sendAmount, env.getApi().consts.balances.existentialDeposit.muln(100));
|
|
47
|
+
env.logger.debug('Setting send amount to', sendAmount.div(unit).toNumber(), 'UNIT');
|
|
48
|
+
return sendAmount;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=funds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funds.js","sourceRoot":"","sources":["../../src/setup/funds.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/setup/index.ts"],"names":[],"mappings":"AAaA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/setup/index.ts"],"names":[],"mappings":"AAaA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/setup/provider.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,wBAAsB,aAAa,CAClC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,gBAAgB,GACxB,OAAO,CAAC,IAAI,CAAC,CAUf"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ProsopoEnvError } from "@prosopo/common";
|
|
2
|
+
import { datasetWithSolutionHashes } from "@prosopo/datasets";
|
|
3
|
+
import { Tasks } from "@prosopo/provider";
|
|
4
|
+
export async function setupProvider(env, provider) {
|
|
5
|
+
if (!provider.pair) {
|
|
6
|
+
throw new ProsopoEnvError("DEVELOPER.MISSING_PROVIDER_PAIR", {
|
|
7
|
+
context: { provider },
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
const logger = env.logger;
|
|
11
|
+
const tasks = new Tasks(env);
|
|
12
|
+
logger.info(" - providerSetDataset");
|
|
13
|
+
await tasks.datasetManager.providerSetDataset(datasetWithSolutionHashes);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/setup/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAiB1C,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,GAAwB,EACxB,QAA0B;IAE1B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,eAAe,CAAC,iCAAiC,EAAE;YAC5D,OAAO,EAAE,EAAE,QAAQ,EAAE;SACrB,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC1B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACvC,MAAM,KAAK,CAAC,cAAc,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/setup/setup.ts"],"names":[],"mappings":"AA+FA,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,iBAW/D;AAED,wBAAsB,KAAK,CAAC,KAAK,EAAE,OAAO,iBAiEzC"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { BN } from "@polkadot/util";
|
|
3
|
+
import { defaultConfig, getSecret } from "@prosopo/cli";
|
|
4
|
+
import { LogLevel, ProsopoEnvError, getLogger } from "@prosopo/common";
|
|
5
|
+
import { generateMnemonic, getPairAsync } from "@prosopo/contract";
|
|
6
|
+
import { getEnvFile } from "@prosopo/dotenv";
|
|
7
|
+
import { ProviderEnvironment } from "@prosopo/env";
|
|
8
|
+
import { Payee, } from "@prosopo/types";
|
|
9
|
+
import { get } from "@prosopo/util";
|
|
10
|
+
import fse from "fs-extra";
|
|
11
|
+
import { updateDemoHTMLFiles, updateEnvFiles } from "../util/index.js";
|
|
12
|
+
import { registerSiteKey } from "./dapp.js";
|
|
13
|
+
import { setupProvider } from "./provider.js";
|
|
14
|
+
const logger = getLogger(LogLevel.enum.info, "setup");
|
|
15
|
+
const __dirname = path.resolve();
|
|
16
|
+
function getRootDir() {
|
|
17
|
+
const rootDir = process.env.PROSOPO_ROOT_DIR || path.resolve(__dirname, "../..");
|
|
18
|
+
logger.info("Root dir:", rootDir);
|
|
19
|
+
return rootDir;
|
|
20
|
+
}
|
|
21
|
+
function getDatasetFilePath() {
|
|
22
|
+
const datasetFile = process.env.PROSOPO_PROVIDER_DATASET_FILE ||
|
|
23
|
+
path.resolve("../data/captchas.json");
|
|
24
|
+
logger.info("Dataset file:", datasetFile);
|
|
25
|
+
return datasetFile;
|
|
26
|
+
}
|
|
27
|
+
function getDefaultProvider() {
|
|
28
|
+
const host = process.env.PROSOPO_PROVIDER_HOST || "localhost";
|
|
29
|
+
return {
|
|
30
|
+
url: process.env.PROSOPO_API_PORT
|
|
31
|
+
? `http://${host}:${process.env.PROSOPO_API_PORT}`
|
|
32
|
+
: `http://${host}:9229`,
|
|
33
|
+
fee: 10,
|
|
34
|
+
payee: Payee.dapp,
|
|
35
|
+
stake: new BN(10 ** 13),
|
|
36
|
+
datasetFile: getDatasetFilePath(),
|
|
37
|
+
address: process.env.PROSOPO_PROVIDER_ADDRESS || "",
|
|
38
|
+
secret: getSecret(),
|
|
39
|
+
captchaDatasetId: "",
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function getDefaultDapp() {
|
|
43
|
+
return {
|
|
44
|
+
secret: "//Eve",
|
|
45
|
+
fundAmount: new BN(10 ** 12),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
async function copyEnvFile() {
|
|
49
|
+
try {
|
|
50
|
+
const rootDir = getRootDir();
|
|
51
|
+
const tplLocation = path.resolve(rootDir, "./dev/scripts");
|
|
52
|
+
const tplEnvFile = getEnvFile(tplLocation, "env");
|
|
53
|
+
const envFile = getEnvFile(tplLocation, ".env");
|
|
54
|
+
await fse.copy(tplEnvFile, envFile, { overwrite: false });
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
logger.debug(err);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function updateEnvFileVar(source, name, value) {
|
|
61
|
+
const envVar = new RegExp(`.*(${name}=)(.*)`, "g");
|
|
62
|
+
if (envVar.test(source)) {
|
|
63
|
+
return source.replace(envVar, `$1${value}`);
|
|
64
|
+
}
|
|
65
|
+
return `${source}\n${name}=${value}`;
|
|
66
|
+
}
|
|
67
|
+
export async function updateEnvFile(vars) {
|
|
68
|
+
const rootDir = getRootDir();
|
|
69
|
+
const envFile = getEnvFile(rootDir, ".env");
|
|
70
|
+
let readEnvFile = await fse.readFile(envFile, "utf8");
|
|
71
|
+
for (const key in vars) {
|
|
72
|
+
readEnvFile = updateEnvFileVar(readEnvFile, key, get(vars, key));
|
|
73
|
+
}
|
|
74
|
+
logger.info(`Updating ${envFile}`);
|
|
75
|
+
await fse.writeFile(envFile, readEnvFile);
|
|
76
|
+
}
|
|
77
|
+
export async function setup(force) {
|
|
78
|
+
const defaultProvider = getDefaultProvider();
|
|
79
|
+
const defaultDapp = getDefaultDapp();
|
|
80
|
+
if (defaultProvider.secret) {
|
|
81
|
+
const hasProviderAccount = defaultProvider.address && defaultProvider.secret;
|
|
82
|
+
logger.debug("ENVIRONMENT", process.env.NODE_ENV);
|
|
83
|
+
const [mnemonic, address] = !hasProviderAccount
|
|
84
|
+
? await generateMnemonic()
|
|
85
|
+
: [defaultProvider.secret, defaultProvider.address];
|
|
86
|
+
logger.debug(`Address: ${address}`);
|
|
87
|
+
logger.debug(`Mnemonic: ${mnemonic}`);
|
|
88
|
+
logger.debug("Writing .env file...");
|
|
89
|
+
await copyEnvFile();
|
|
90
|
+
if (!process.env.PROSOPO_SITE_KEY) {
|
|
91
|
+
throw new ProsopoEnvError("DEVELOPER.PROSOPO_SITE_KEY_MISSING");
|
|
92
|
+
}
|
|
93
|
+
const config = defaultConfig();
|
|
94
|
+
const providerSecret = config.account.secret;
|
|
95
|
+
const pair = await getPairAsync(providerSecret);
|
|
96
|
+
const env = new ProviderEnvironment(defaultConfig(), pair);
|
|
97
|
+
await env.isReady();
|
|
98
|
+
defaultProvider.secret = mnemonic;
|
|
99
|
+
env.logger.info(`Registering provider... ${defaultProvider.address}`);
|
|
100
|
+
defaultProvider.pair = await getPairAsync(providerSecret);
|
|
101
|
+
defaultDapp.pair = await getPairAsync(defaultDapp.secret);
|
|
102
|
+
await setupProvider(env, defaultProvider);
|
|
103
|
+
env.logger.info(`Registering dapp... ${defaultDapp.pair.address}`);
|
|
104
|
+
await registerSiteKey(env, defaultDapp.pair.address);
|
|
105
|
+
if (!hasProviderAccount) {
|
|
106
|
+
await updateEnvFile({
|
|
107
|
+
PROVIDER_MNEMONIC: `"${mnemonic}"`,
|
|
108
|
+
PROVIDER_ADDRESS: address,
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
env.logger.debug("Updating env files with PROSOPO_SITE_KEY");
|
|
112
|
+
await updateDemoHTMLFiles([/data-sitekey="(\w{48})"/, /siteKey:\s*'(\w{48})'/], defaultDapp.pair.address, env.logger);
|
|
113
|
+
await updateEnvFiles(["NEXT_PUBLIC_PROSOPO_SITE_KEY", "PROSOPO_SITE_KEY"], defaultDapp.pair.address, env.logger);
|
|
114
|
+
process.exit();
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
console.error("no secret found in .env file");
|
|
118
|
+
throw new ProsopoEnvError("GENERAL.NO_MNEMONIC_OR_SEED");
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/setup/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,UAAU;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,IAAI,YACP,MAAM,YACL;IACT,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,KACC,OAAO,CAAC,UAAU,CAiDpB,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { spawn } from "node:child_process";
|
|
2
|
+
import { stdin } from "node:process";
|
|
3
|
+
export const exec = (command, options) => {
|
|
4
|
+
let { pipe, printCmd } = options || {};
|
|
5
|
+
pipe = pipe === undefined || pipe;
|
|
6
|
+
printCmd = printCmd === undefined || printCmd;
|
|
7
|
+
if (printCmd) {
|
|
8
|
+
console.log(`[exec] ${command}`);
|
|
9
|
+
}
|
|
10
|
+
const prc = spawn(command, {
|
|
11
|
+
shell: true,
|
|
12
|
+
});
|
|
13
|
+
if (pipe || pipe === undefined) {
|
|
14
|
+
prc.stdout.pipe(process.stdout);
|
|
15
|
+
prc.stderr.pipe(process.stderr);
|
|
16
|
+
}
|
|
17
|
+
stdin.pipe(prc.stdin);
|
|
18
|
+
const stdoutData = [];
|
|
19
|
+
const stderrData = [];
|
|
20
|
+
prc.stdout.on("data", (data) => {
|
|
21
|
+
stdoutData.push(data.toString());
|
|
22
|
+
});
|
|
23
|
+
prc.stderr.on("data", (data) => {
|
|
24
|
+
stderrData.push(data.toString());
|
|
25
|
+
});
|
|
26
|
+
return new Promise((resolve, reject) => {
|
|
27
|
+
prc.on("close", (code) => {
|
|
28
|
+
if (pipe || pipe === undefined) {
|
|
29
|
+
console.log("");
|
|
30
|
+
}
|
|
31
|
+
const output = {
|
|
32
|
+
stdout: stdoutData.join(""),
|
|
33
|
+
stderr: stderrData.join(""),
|
|
34
|
+
code,
|
|
35
|
+
};
|
|
36
|
+
if (code === 0) {
|
|
37
|
+
resolve(output);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
reject(output);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=exec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAQrC,MAAM,CAAC,MAAM,IAAI,GAAG,CACnB,OAAe,EACf,OAGC,EACqB,EAAE;IACxB,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IACvC,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC;IAClC,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC;IAE9C,IAAI,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE;QAC1B,KAAK,EAAE,IAAI;KACX,CAAC,CAAC;IAEH,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAIhC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEhC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEtB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC9B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC9B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;YACD,MAAM,MAAM,GAAe;gBAC1B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI;aACJ,CAAC;YACF,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,CAAC,MAAM,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,MAAM,CAAC,CAAC;YAChB,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fluxLogDappDetails.d.ts","sourceRoot":"","sources":["../../src/util/fluxLogDappDetails.ts"],"names":[],"mappings":"AAeA,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,UAiBxD"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export function extractReferrersFromLogs(logsText) {
|
|
2
|
+
const urls = [
|
|
3
|
+
...logsText.split("\n").reduce((accumulator, line) => {
|
|
4
|
+
const matches = line.match(/"(https?:\/\/[^"]+)"/g);
|
|
5
|
+
if (matches) {
|
|
6
|
+
for (const match of matches) {
|
|
7
|
+
const url = match.substring(1, match.length - 1);
|
|
8
|
+
accumulator.add(url);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
return accumulator;
|
|
12
|
+
}, new Set()),
|
|
13
|
+
];
|
|
14
|
+
return urls.join(" ");
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=fluxLogDappDetails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fluxLogDappDetails.js","sourceRoot":"","sources":["../../src/util/fluxLogDappDetails.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,wBAAwB,CAAC,QAAgB;IACxD,MAAM,IAAI,GAAG;QACZ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE;YAEpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACpD,IAAI,OAAO,EAAE,CAAC;gBACb,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAE7B,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACjD,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC;YACF,CAAC;YACD,OAAO,WAAW,CAAC;QACpB,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC;KACb,CAAC;IAEF,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAaA,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAaA,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loadContractFiles.d.ts","sourceRoot":"","sources":["../../src/util/loadContractFiles.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAM7C,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAgB5D;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkBhE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { Abi } from "@polkadot/api-contract";
|
|
3
|
+
import { hexToU8a, isWasm } from "@polkadot/util";
|
|
4
|
+
import { ProsopoError } from "@prosopo/common";
|
|
5
|
+
import fse from "fs-extra";
|
|
6
|
+
const __dirname = path.resolve();
|
|
7
|
+
export async function AbiJSON(filePath) {
|
|
8
|
+
const resolvedFilePath = path.resolve(__dirname, filePath);
|
|
9
|
+
await fse.ensureFile(resolvedFilePath);
|
|
10
|
+
const fileExists = await fse.pathExists(resolvedFilePath);
|
|
11
|
+
if (fileExists) {
|
|
12
|
+
const json = JSON.parse(await fse.readFile(resolvedFilePath, {
|
|
13
|
+
encoding: "utf8",
|
|
14
|
+
}));
|
|
15
|
+
return new Abi(json);
|
|
16
|
+
}
|
|
17
|
+
throw new ProsopoError("FS.FILE_NOT_FOUND", {
|
|
18
|
+
context: { error: `File ${filePath} does not exist` },
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
export async function Wasm(filePath) {
|
|
22
|
+
const resolvedFilePath = path.resolve(__dirname, filePath);
|
|
23
|
+
await fse.ensureFile(resolvedFilePath);
|
|
24
|
+
const fileExists = await fse.pathExists(resolvedFilePath);
|
|
25
|
+
if (fileExists) {
|
|
26
|
+
const wasm = `0x${fse.readFileSync(resolvedFilePath).toString("hex")}`;
|
|
27
|
+
const wasmBytes = hexToU8a(wasm);
|
|
28
|
+
if (isWasm(wasmBytes)) {
|
|
29
|
+
return wasmBytes;
|
|
30
|
+
}
|
|
31
|
+
console.error(`Error loading contract wasm: ${wasm.slice(0, 10)}...`);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw new ProsopoError("FS.FILE_NOT_FOUND", {
|
|
36
|
+
context: { error: `File ${filePath} does not exist` },
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=loadContractFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loadContractFiles.js","sourceRoot":"","sources":["../../src/util/loadContractFiles.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAgB7B,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;AACjC,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,QAAgB;IAC7C,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAE1D,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CACtB,MAAM,GAAG,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YACpC,QAAQ,EAAE,MAAM;SAChB,CAAC,CACF,CAAC;QACF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE;QAC3C,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,QAAQ,iBAAiB,EAAE;KACrD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,QAAgB;IAC1C,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC1D,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAkB,KAAK,GAAG,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACtF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE;YAC3C,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,QAAQ,iBAAiB,EAAE;SACrD,CAAC,CAAC;IACJ,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Logger } from "@prosopo/common";
|
|
2
|
+
export declare function findEnvFiles(logger: Logger, cwd?: string): Promise<string[]>;
|
|
3
|
+
export declare function updateDemoHTMLFiles(varMatchers: RegExp[], varValue: string, logger: Logger): Promise<void>;
|
|
4
|
+
export declare function updateEnvFiles(varNames: string[], varValue: string, logger: Logger, cwd?: string): Promise<void>;
|
|
5
|
+
//# sourceMappingURL=updateEnv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateEnv.d.ts","sourceRoot":"","sources":["../../src/util/updateEnv.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAc9C,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,qBAQ9D;AAED,wBAAsB,mBAAmB,CACxC,WAAW,EAAE,MAAM,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,iBA8Bd;AAED,wBAAsB,cAAc,CACnC,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,iBA2BZ"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { getEnv } from "@prosopo/dotenv";
|
|
4
|
+
import { at } from "@prosopo/util";
|
|
5
|
+
import dotenv from "dotenv";
|
|
6
|
+
import fg from "fast-glob";
|
|
7
|
+
const ignore = [
|
|
8
|
+
"**/node_modules/**",
|
|
9
|
+
"node_modules/**",
|
|
10
|
+
"../../**/node_modules/**",
|
|
11
|
+
"../node_modules/**",
|
|
12
|
+
"../../node_modules/**",
|
|
13
|
+
];
|
|
14
|
+
const __dirname = path.resolve();
|
|
15
|
+
export async function findEnvFiles(logger, cwd) {
|
|
16
|
+
const env = getEnv();
|
|
17
|
+
const fileName = `.env.${env}`;
|
|
18
|
+
logger.info("Searching for files");
|
|
19
|
+
return await fg(`${cwd || "../.."}/**/${fileName}`, {
|
|
20
|
+
ignore,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
export async function updateDemoHTMLFiles(varMatchers, varValue, logger) {
|
|
24
|
+
const files = await fg("../../demos/**/*.html", {
|
|
25
|
+
ignore: ignore,
|
|
26
|
+
});
|
|
27
|
+
logger.info("HTML files found", files);
|
|
28
|
+
files.forEach((file) => {
|
|
29
|
+
const filePath = path.resolve(process.cwd(), file);
|
|
30
|
+
const contents = fs.readFileSync(filePath).toString();
|
|
31
|
+
let newContents = contents;
|
|
32
|
+
for (const varMatcher of varMatchers) {
|
|
33
|
+
const matches = contents.match(varMatcher);
|
|
34
|
+
if (matches) {
|
|
35
|
+
const matchedVar = at(matches, 1);
|
|
36
|
+
logger.info("matchedVar", matchedVar);
|
|
37
|
+
newContents = contents.replaceAll(matchedVar, varValue);
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (newContents !== contents) {
|
|
42
|
+
fs.writeFileSync(path.resolve(__dirname, filePath), newContents);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
export async function updateEnvFiles(varNames, varValue, logger, cwd) {
|
|
47
|
+
const files = await findEnvFiles(logger, cwd);
|
|
48
|
+
logger.info("Env files found", files);
|
|
49
|
+
files.forEach((file) => {
|
|
50
|
+
let write = false;
|
|
51
|
+
const filePath = path.resolve(cwd || process.cwd(), file);
|
|
52
|
+
const envConfig = dotenv.parse(fs.readFileSync(filePath));
|
|
53
|
+
for (const varName of varNames) {
|
|
54
|
+
if (varName in envConfig) {
|
|
55
|
+
envConfig[varName] = varValue;
|
|
56
|
+
write = true;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
if (write) {
|
|
60
|
+
fs.writeFileSync(path.resolve(__dirname, filePath), Object.keys(envConfig)
|
|
61
|
+
.map((k) => `${k}=${envConfig[k]}`)
|
|
62
|
+
.join("\n"));
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=updateEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateEnv.js","sourceRoot":"","sources":["../../src/util/updateEnv.ts"],"names":[],"mappings":"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"}
|