@prosopo/scripts 2.1.5 → 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.
Files changed (149) hide show
  1. package/dist/cli/index.d.ts +2 -0
  2. package/dist/cli/index.d.ts.map +1 -0
  3. package/dist/cli/index.js +96 -0
  4. package/dist/cli/index.js.map +1 -0
  5. package/dist/contract/deploy/dapp.d.ts +3 -0
  6. package/dist/contract/deploy/dapp.d.ts.map +1 -0
  7. package/dist/contract/deploy/dapp.js +26 -0
  8. package/dist/contract/deploy/dapp.js.map +1 -0
  9. package/dist/contract/deploy/index.d.ts +3 -0
  10. package/dist/contract/deploy/index.d.ts.map +1 -0
  11. package/dist/contract/deploy/index.js +3 -0
  12. package/dist/contract/deploy/index.js.map +1 -0
  13. package/dist/contract/deploy/protocol.d.ts +3 -0
  14. package/dist/contract/deploy/protocol.d.ts.map +1 -0
  15. package/dist/contract/deploy/protocol.js +53 -0
  16. package/dist/contract/deploy/protocol.js.map +1 -0
  17. package/dist/contract/fundDapps.d.ts +20 -0
  18. package/dist/contract/fundDapps.d.ts.map +1 -0
  19. package/dist/contract/fundDapps.js +50 -0
  20. package/dist/contract/fundDapps.js.map +1 -0
  21. package/dist/contract/import.d.ts +3 -0
  22. package/dist/contract/import.d.ts.map +1 -0
  23. package/dist/contract/import.js +164 -0
  24. package/dist/contract/import.js.map +1 -0
  25. package/dist/contract/index.d.ts +2 -0
  26. package/dist/contract/index.d.ts.map +1 -0
  27. package/dist/contract/index.js +2 -0
  28. package/dist/contract/index.js.map +1 -0
  29. package/dist/contract/sources/dapp/411053b7ec79cc77f5ec9f5eb18610b24daaaaf0/dapp.json +648 -0
  30. package/dist/contract/transferContract.d.ts +6 -0
  31. package/dist/contract/transferContract.d.ts.map +1 -0
  32. package/dist/contract/transferContract.js +142 -0
  33. package/dist/contract/transferContract.js.map +1 -0
  34. package/dist/index.d.ts +5 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/migrates/provider.db.2.0.1.to.2.0.2.d.ts +2 -0
  38. package/dist/migrates/provider.db.2.0.1.to.2.0.2.d.ts.map +1 -0
  39. package/dist/migrates/provider.db.2.0.1.to.2.0.2.js +114 -0
  40. package/dist/migrates/provider.db.2.0.1.to.2.0.2.js.map +1 -0
  41. package/dist/scripts/addCopyrightNotice.d.ts +2 -0
  42. package/dist/scripts/addCopyrightNotice.d.ts.map +1 -0
  43. package/dist/scripts/addCopyrightNotice.js +108 -0
  44. package/dist/scripts/addCopyrightNotice.js.map +1 -0
  45. package/dist/scripts/bytesToHex.d.ts +2 -0
  46. package/dist/scripts/bytesToHex.d.ts.map +1 -0
  47. package/dist/scripts/bytesToHex.js +7 -0
  48. package/dist/scripts/bytesToHex.js.map +1 -0
  49. package/dist/scripts/convertAccount.d.ts +2 -0
  50. package/dist/scripts/convertAccount.d.ts.map +1 -0
  51. package/dist/scripts/convertAccount.js +24 -0
  52. package/dist/scripts/convertAccount.js.map +1 -0
  53. package/dist/scripts/encodeDecode.d.ts +2 -0
  54. package/dist/scripts/encodeDecode.d.ts.map +1 -0
  55. package/dist/scripts/encodeDecode.js +108 -0
  56. package/dist/scripts/encodeDecode.js.map +1 -0
  57. package/dist/scripts/findUnused.d.ts +2 -0
  58. package/dist/scripts/findUnused.d.ts.map +1 -0
  59. package/dist/scripts/findUnused.js +79 -0
  60. package/dist/scripts/findUnused.js.map +1 -0
  61. package/dist/scripts/generateMnemonic.d.ts +2 -0
  62. package/dist/scripts/generateMnemonic.d.ts.map +1 -0
  63. package/dist/scripts/generateMnemonic.js +24 -0
  64. package/dist/scripts/generateMnemonic.js.map +1 -0
  65. package/dist/scripts/getBlock.d.ts +2 -0
  66. package/dist/scripts/getBlock.d.ts.map +1 -0
  67. package/dist/scripts/getBlock.js +17 -0
  68. package/dist/scripts/getBlock.js.map +1 -0
  69. package/dist/scripts/getContractInfoOf.d.ts +2 -0
  70. package/dist/scripts/getContractInfoOf.d.ts.map +1 -0
  71. package/dist/scripts/getContractInfoOf.js +40 -0
  72. package/dist/scripts/getContractInfoOf.js.map +1 -0
  73. package/dist/scripts/getExistentialDeposit.d.ts +2 -0
  74. package/dist/scripts/getExistentialDeposit.d.ts.map +1 -0
  75. package/dist/scripts/getExistentialDeposit.js +27 -0
  76. package/dist/scripts/getExistentialDeposit.js.map +1 -0
  77. package/dist/scripts/getRandomProvider.d.ts +2 -0
  78. package/dist/scripts/getRandomProvider.d.ts.map +1 -0
  79. package/dist/scripts/getRandomProvider.js +23 -0
  80. package/dist/scripts/getRandomProvider.js.map +1 -0
  81. package/dist/scripts/getStorage.d.ts +2 -0
  82. package/dist/scripts/getStorage.d.ts.map +1 -0
  83. package/dist/scripts/getStorage.js +25 -0
  84. package/dist/scripts/getStorage.js.map +1 -0
  85. package/dist/scripts/hash.d.ts +2 -0
  86. package/dist/scripts/hash.d.ts.map +1 -0
  87. package/dist/scripts/hash.js +41 -0
  88. package/dist/scripts/hash.js.map +1 -0
  89. package/dist/scripts/hexToBytes.d.ts +2 -0
  90. package/dist/scripts/hexToBytes.d.ts.map +1 -0
  91. package/dist/scripts/hexToBytes.js +6 -0
  92. package/dist/scripts/hexToBytes.js.map +1 -0
  93. package/dist/scripts/sendFunds.d.ts +2 -0
  94. package/dist/scripts/sendFunds.d.ts.map +1 -0
  95. package/dist/scripts/sendFunds.js +22 -0
  96. package/dist/scripts/sendFunds.js.map +1 -0
  97. package/dist/scripts/setVersion.d.ts +2 -0
  98. package/dist/scripts/setVersion.d.ts.map +1 -0
  99. package/dist/scripts/setVersion.js +133 -0
  100. package/dist/scripts/setVersion.js.map +1 -0
  101. package/dist/scripts/sign.d.ts +2 -0
  102. package/dist/scripts/sign.d.ts.map +1 -0
  103. package/dist/scripts/sign.js +41 -0
  104. package/dist/scripts/sign.js.map +1 -0
  105. package/dist/scripts/verifySignature.d.ts +2 -0
  106. package/dist/scripts/verifySignature.d.ts.map +1 -0
  107. package/dist/scripts/verifySignature.js +18 -0
  108. package/dist/scripts/verifySignature.js.map +1 -0
  109. package/dist/setup/dapp.d.ts +3 -0
  110. package/dist/setup/dapp.d.ts.map +1 -0
  111. package/dist/setup/dapp.js +8 -0
  112. package/dist/setup/dapp.js.map +1 -0
  113. package/dist/setup/funds.d.ts +8 -0
  114. package/dist/setup/funds.d.ts.map +1 -0
  115. package/dist/setup/funds.js +50 -0
  116. package/dist/setup/funds.js.map +1 -0
  117. package/dist/setup/index.d.ts +3 -0
  118. package/dist/setup/index.d.ts.map +1 -0
  119. package/dist/setup/index.js +3 -0
  120. package/dist/setup/index.js.map +1 -0
  121. package/dist/setup/provider.d.ts +4 -0
  122. package/dist/setup/provider.d.ts.map +1 -0
  123. package/dist/setup/provider.js +15 -0
  124. package/dist/setup/provider.js.map +1 -0
  125. package/dist/setup/setup.d.ts +3 -0
  126. package/dist/setup/setup.d.ts.map +1 -0
  127. package/dist/setup/setup.js +121 -0
  128. package/dist/setup/setup.js.map +1 -0
  129. package/dist/util/exec.d.ts +10 -0
  130. package/dist/util/exec.d.ts.map +1 -0
  131. package/dist/util/exec.js +45 -0
  132. package/dist/util/exec.js.map +1 -0
  133. package/dist/util/fluxLogDappDetails.d.ts +2 -0
  134. package/dist/util/fluxLogDappDetails.d.ts.map +1 -0
  135. package/dist/util/fluxLogDappDetails.js +16 -0
  136. package/dist/util/fluxLogDappDetails.js.map +1 -0
  137. package/dist/util/index.d.ts +5 -0
  138. package/dist/util/index.d.ts.map +1 -0
  139. package/dist/util/index.js +5 -0
  140. package/dist/util/index.js.map +1 -0
  141. package/dist/util/loadContractFiles.d.ts +4 -0
  142. package/dist/util/loadContractFiles.d.ts.map +1 -0
  143. package/dist/util/loadContractFiles.js +40 -0
  144. package/dist/util/loadContractFiles.js.map +1 -0
  145. package/dist/util/updateEnv.d.ts +5 -0
  146. package/dist/util/updateEnv.d.ts.map +1 -0
  147. package/dist/util/updateEnv.js +66 -0
  148. package/dist/util/updateEnv.js.map +1 -0
  149. package/package.json +13 -13
@@ -0,0 +1,2 @@
1
+ export declare function processArgs(args: string[]): Promise<void>;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AA+BA,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,iBAqF/C"}
@@ -0,0 +1,96 @@
1
+ import path from "node:path";
2
+ import { isHex } from "@polkadot/util";
3
+ import { LogLevel, getLogger } from "@prosopo/common";
4
+ import { getLogLevel } from "@prosopo/common";
5
+ import { getScriptsPkgDir } from "@prosopo/config";
6
+ import { getEnv, loadEnv } from "@prosopo/dotenv";
7
+ import { decodeProcaptchaOutput, encodeProcaptchaOutput } from "@prosopo/types";
8
+ import yargs from "yargs";
9
+ import { hideBin } from "yargs/helpers";
10
+ import { importContract } from "../contract/index.js";
11
+ import setVersion from "../scripts/setVersion.js";
12
+ import { setup } from "../setup/index.js";
13
+ import { exec } from "../util/index.js";
14
+ const rootDir = path.resolve(".");
15
+ loadEnv(rootDir);
16
+ export async function processArgs(args) {
17
+ const parsed = await yargs(hideBin(args)).option("logLevel", {
18
+ describe: "set log level",
19
+ choices: Object.keys(LogLevel.enum),
20
+ }).argv;
21
+ const log = getLogger(getLogLevel(parsed.logLevel), "CLI");
22
+ await yargs(hideBin(args))
23
+ .usage("Usage: $0 [global options] <command> [options]")
24
+ .command("create_env_files", "Copies the env.xyz files to .env.xyz", (yargs) => yargs, async () => {
25
+ const env = getEnv();
26
+ const scripts = getScriptsPkgDir();
27
+ await exec(`cp -v ${scripts}/env.${env} ${scripts}/.env.${env}`);
28
+ }, [])
29
+ .command({
30
+ command: "setup",
31
+ describe: "Setup the development environment by registering a provider, staking, loading a data set and then registering a dapp and staking.",
32
+ builder: (yargs) => yargs.option("force", {
33
+ type: "boolean",
34
+ demandOption: false,
35
+ desc: "Force provider re-registration and dataset setup",
36
+ }),
37
+ handler: async (argv) => {
38
+ log.info("Running setup scripts");
39
+ await setup(!!argv.force);
40
+ },
41
+ })
42
+ .command({
43
+ command: "import_contract",
44
+ describe: "Import a contract into the contract package.",
45
+ builder: (yargs) => yargs
46
+ .option("in", {
47
+ type: "string",
48
+ demandOption: true,
49
+ desc: "The path to the contract's abi",
50
+ })
51
+ .option("out", {
52
+ type: "string",
53
+ demandOption: true,
54
+ desc: "The path to the output directory",
55
+ }),
56
+ handler: async (argv) => {
57
+ await importContract(argv.in, argv.out);
58
+ },
59
+ })
60
+ .command({
61
+ command: "version",
62
+ describe: "Set the version of packages",
63
+ builder: (yargs) => yargs.option("v", { type: "string", demandOption: true }),
64
+ handler: async (argv) => {
65
+ await setVersion(String(argv.v));
66
+ },
67
+ })
68
+ .command({
69
+ command: "token <token>",
70
+ describe: "Encode or Decode a Procaptcha token to the JSON output format",
71
+ builder: (yargs) => yargs.positional("token", {
72
+ describe: "a Procaptcha token to decode",
73
+ type: "string",
74
+ demandOption: true,
75
+ }),
76
+ handler: async (argv) => {
77
+ if (!isHex(argv.token)) {
78
+ log.debug("Encoding token to hex");
79
+ log.info(encodeProcaptchaOutput(JSON.parse(argv.token)));
80
+ }
81
+ else {
82
+ log.debug("Decoding token from hex");
83
+ log.info(decodeProcaptchaOutput(argv.token));
84
+ }
85
+ },
86
+ }).argv;
87
+ }
88
+ processArgs(process.argv)
89
+ .then(() => {
90
+ process.exit(0);
91
+ })
92
+ .catch((error) => {
93
+ console.error(error);
94
+ process.exit(1);
95
+ });
96
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { AccountId } from '@prosopo/types';
2
+ export declare function run(): Promise<AccountId>;
3
+ //# sourceMappingURL=dapp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dapp.d.ts","sourceRoot":"","sources":["../../../src/contract/deploy/dapp.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAoB1C,wBAAsB,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAY9C"}
@@ -0,0 +1,26 @@
1
+ import { AbiJSON, Wasm } from '../../util/index.js';
2
+ import { ContractDeployer, getPairAsync } from '@prosopo/contract';
3
+ import { ProviderEnvironment } from '@prosopo/env';
4
+ import { defaultConfig } from '@prosopo/cli';
5
+ import { get } from '@prosopo/util';
6
+ import { randomAsHex } from '@polkadot/util-crypto';
7
+ import path from 'path';
8
+ async function deploy(wasm, abi) {
9
+ const config = defaultConfig();
10
+ const network = config.networks[defaultConfig().defaultNetwork];
11
+ const pair = await getPairAsync(network, '//Alice');
12
+ const env = new ProviderEnvironment(defaultConfig(), pair);
13
+ await env.isReady();
14
+ const params = ['1000000000000000', 1000, process.env.PROSOPO_CONTRACT_ADDRESS, 50, 1000000];
15
+ const deployer = new ContractDeployer(env.getApi(), abi, wasm, pair, params, 0, 0, randomAsHex(), config.logLevel);
16
+ return await deployer.deploy();
17
+ }
18
+ export async function run() {
19
+ const wasm = await Wasm(path.resolve(process.env.PROSOPO_DAPP_WASM_PATH || '.'));
20
+ const abi = await AbiJSON(path.resolve(process.env.PROSOPO_DAPP_ABI_PATH || '.'));
21
+ const deployResult = await deploy(wasm, abi);
22
+ const instantiateEvent = deployResult.events.find((event) => event.event.section === 'contracts' && event.event.method === 'Instantiated');
23
+ const contractAddress = String(get(instantiateEvent?.event.data, 'contract'));
24
+ return contractAddress;
25
+ }
26
+ //# sourceMappingURL=dapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dapp.js","sourceRoot":"","sources":["../../../src/contract/deploy/dapp.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,KAAK,UAAU,MAAM,CAAC,IAAgB,EAAE,GAAQ;IAC5C,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,cAAc,CAAC,CAAA;IAC/D,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,CAAA;IAC1D,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;IAEnB,MAAM,MAAM,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;IAC5F,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;IAClH,OAAO,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAA;AAClC,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,GAAG;IACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,GAAG,CAAC,CAAC,CAAA;IAChF,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,GAAG,CAAC,CAAC,CAAA;IACjF,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAE5C,MAAM,gBAAgB,GAA4B,YAAY,CAAC,MAAM,CAAC,IAAI,CACtE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,cAAc,CAC1F,CAAA;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;IAE7E,OAAO,eAAe,CAAA;AAC1B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { run as deployProtocol } from './protocol.js';
2
+ export { run as deployDapp } from './dapp.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contract/deploy/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,GAAG,IAAI,cAAc,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,GAAG,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { run as deployProtocol } from './protocol.js';
2
+ export { run as deployDapp } from './dapp.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contract/deploy/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,GAAG,IAAI,cAAc,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,GAAG,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { AccountId } from '@prosopo/types';
2
+ export declare function run(wasmPath: string | undefined, abiPath: string | undefined, deployer?: string): Promise<AccountId>;
3
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/contract/deploy/protocol.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AA4B1C,wBAAsB,GAAG,CACrB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,QAAQ,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,SAAS,CAAC,CA+BpB"}
@@ -0,0 +1,53 @@
1
+ import { Abi } from '@polkadot/api-contract';
2
+ import { AbiJSON, Wasm } from '../../util/index.js';
3
+ import { ContractAbi } from '@prosopo/captcha-contract/contract-info';
4
+ import { ContractDeployer, getPairAsync } from '@prosopo/contract';
5
+ import { ContractFile } from '@prosopo/captcha-contract/contract-info';
6
+ import { LogLevel, getLogger } from '@prosopo/common';
7
+ import { ProviderEnvironment } from '@prosopo/env';
8
+ import { defaultConfig } from '@prosopo/cli';
9
+ import { get } from '@prosopo/util';
10
+ import { hexToU8a } from '@polkadot/util';
11
+ import { randomAsHex } from '@polkadot/util-crypto';
12
+ import path from 'path';
13
+ const log = getLogger(LogLevel.enum.info, 'scripts.deploy');
14
+ async function deploy(wasm, abi, deployerPrefix) {
15
+ const config = defaultConfig(undefined, undefined, undefined, undefined, deployerPrefix);
16
+ log.setLogLevel(config.logLevel);
17
+ const network = config.networks[config.defaultNetwork];
18
+ const secret = config.defaultEnvironment === 'development' ? '//Alice' : config.account.secret;
19
+ const pair = await getPairAsync(network, secret);
20
+ const env = new ProviderEnvironment(config, pair);
21
+ await env.isReady();
22
+ const params = [];
23
+ const deployer = new ContractDeployer(env.getApi(), abi, wasm, pair, params, 0, 0, randomAsHex(), config.logLevel);
24
+ return await deployer.deploy();
25
+ }
26
+ export async function run(wasmPath, abiPath, deployer) {
27
+ let wasm;
28
+ if (wasmPath === undefined) {
29
+ log.info('Using wasm from captcha contract');
30
+ const jsonContent = JSON.parse(ContractFile);
31
+ const hex = jsonContent['source']['wasm'];
32
+ wasm = hexToU8a(hex);
33
+ }
34
+ else {
35
+ log.info('WASM Path', wasmPath);
36
+ wasm = await Wasm(path.resolve(wasmPath));
37
+ }
38
+ let abi;
39
+ if (abiPath === undefined) {
40
+ log.info('Using abi from captcha contract');
41
+ abi = new Abi(ContractAbi);
42
+ }
43
+ else {
44
+ log.info('ABI Path', abiPath);
45
+ abi = await AbiJSON(path.resolve(abiPath));
46
+ }
47
+ const deployResult = await deploy(wasm, abi, deployer);
48
+ const instantiateEvent = deployResult.events.find((event) => event.event.section === 'contracts' && event.event.method === 'Instantiated');
49
+ log.info('instantiateEvent', instantiateEvent?.toHuman());
50
+ const contractAddress = String(get(instantiateEvent?.event.data, 'contract'));
51
+ return contractAddress;
52
+ }
53
+ //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/contract/deploy/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /// <reference types="mongoose/types/document.js" />
2
+ /// <reference types="mongoose/types/models.js" />
3
+ /// <reference types="mongoose/types/schemaoptions.js" />
4
+ import mongoose from 'mongoose';
5
+ export interface Emails {
6
+ email: string;
7
+ name: string;
8
+ url: string;
9
+ account: string;
10
+ mnemonic: string;
11
+ createdAt: number;
12
+ marketingPreferences: boolean;
13
+ }
14
+ export declare const EmailModelSchema: mongoose.Schema<Emails, mongoose.Model<Emails, any, any, any, mongoose.Document<unknown, any, Emails> & Emails & {
15
+ _id: mongoose.Types.ObjectId;
16
+ }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, Emails, mongoose.Document<unknown, {}, Emails> & Emails & {
17
+ _id: mongoose.Types.ObjectId;
18
+ }>;
19
+ export declare function run(atlasUri: string | undefined): Promise<void>;
20
+ //# sourceMappingURL=fundDapps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fundDapps.d.ts","sourceRoot":"","sources":["../../src/contract/fundDapps.ts"],"names":[],"mappings":";;;AAmBA,OAAO,QAAmB,MAAM,UAAU,CAAA;AAI1C,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,EAAE,OAAO,CAAA;CAChC;AAED,eAAO,MAAM,gBAAgB;;;;EAW5B,CAAA;AASD,wBAAsB,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,iBA2BrD"}
@@ -0,0 +1,50 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ import { ProviderEnvironment } from '@prosopo/env';
3
+ import { TransactionQueue, oneUnit } from '@prosopo/tx';
4
+ import { defaultConfig } from '@prosopo/cli';
5
+ import { getPairAsync } from '@prosopo/contract';
6
+ import { setupDapp } from '../setup/index.js';
7
+ import mongoose from 'mongoose';
8
+ const log = getLogger(LogLevel.enum.info, 'dev.deploy');
9
+ export const EmailModelSchema = new mongoose.Schema({
10
+ email: String,
11
+ name: String,
12
+ url: String,
13
+ account: String,
14
+ mnemonic: String,
15
+ createdAt: Number,
16
+ marketingPreferences: Boolean,
17
+ }, { collection: 'emails' });
18
+ let EmailsModel;
19
+ try {
20
+ EmailsModel = mongoose.model('emails');
21
+ }
22
+ catch (error) {
23
+ EmailsModel = mongoose.model('emails', EmailModelSchema);
24
+ }
25
+ export async function run(atlasUri) {
26
+ if (!atlasUri) {
27
+ throw new Error('Atlas URI not found in env');
28
+ }
29
+ await mongoose.connect(atlasUri, { dbName: 'prosopo' });
30
+ const dapps = await EmailsModel.find({}).exec();
31
+ log.info(dapps);
32
+ const config = defaultConfig();
33
+ const network = config.networks[config.defaultNetwork];
34
+ const secret = config.account.secret;
35
+ const pair = await getPairAsync(network, secret);
36
+ const env = new ProviderEnvironment(config, pair);
37
+ await env.isReady();
38
+ const queue = new TransactionQueue(env.getApi(), pair, config.logLevel);
39
+ if (!config.account.address) {
40
+ throw new Error('Account address not found in config');
41
+ }
42
+ if (!secret) {
43
+ throw new Error('Account secret not found in config');
44
+ }
45
+ const fundAmount = oneUnit(env.getApi());
46
+ await Promise.all(dapps
47
+ .filter((dappRecord) => dappRecord.account)
48
+ .map((dappRecord) => setupDapp(env, { pair, secret, fundAmount }, dappRecord.account, queue)));
49
+ }
50
+ //# sourceMappingURL=fundDapps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fundDapps.js","sourceRoot":"","sources":["../../src/contract/fundDapps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare function importContract(pathToAbis: string, pathToOutput: string): Promise<void>;
2
+ export default importContract;
3
+ //# sourceMappingURL=import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/contract/import.ts"],"names":[],"mappings":"AAwCA,iBAAe,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBA+KrE;AAuBD,eAAe,cAAc,CAAC"}
@@ -0,0 +1,164 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { ProsopoEnvError } from "@prosopo/common";
4
+ import { lodash } from "@prosopo/util/lodash";
5
+ import { exec } from "../util/index.js";
6
+ const replaceExtension = (file, ext) => {
7
+ const parts = file.split(".");
8
+ parts.pop();
9
+ parts.push(ext);
10
+ return parts.join(".");
11
+ };
12
+ async function importContract(pathToAbis, pathToOutput) {
13
+ const verbose = false;
14
+ pathToAbis = path.relative(process.cwd(), pathToAbis);
15
+ pathToOutput = path.relative(process.cwd(), pathToOutput);
16
+ if (!fs.existsSync(pathToAbis))
17
+ throw new ProsopoEnvError("FS.FILE_NOT_FOUND", {
18
+ context: { error: `Path to ABIs does not exist: ${pathToAbis}` },
19
+ });
20
+ await exec(`mkdir -p ${pathToOutput}`);
21
+ const cmd = `npx @prosopo/typechain-polkadot --in ${pathToAbis} --out ${pathToOutput}`;
22
+ await exec(cmd);
23
+ const name = path.basename(pathToAbis);
24
+ await exec(`cp ${pathToAbis}/${name}.json ${pathToOutput}/${name}.json`);
25
+ const _ = lodash();
26
+ const writeIndexJsFiles = (src) => {
27
+ const typeChainDirs = fs.readdirSync(src).filter((file) => {
28
+ return fs.lstatSync(`${src}/${file}`).isDirectory();
29
+ });
30
+ const rootExports = [];
31
+ const typeChainExports = [
32
+ {
33
+ dir: "build-extrinsic",
34
+ defaultExportName: "extrinsics",
35
+ },
36
+ {
37
+ dir: "constructors",
38
+ },
39
+ {
40
+ dir: "contract-info",
41
+ exports: [
42
+ {
43
+ name: "ContractAbi",
44
+ },
45
+ {
46
+ name: "ContractFile",
47
+ },
48
+ ],
49
+ },
50
+ {
51
+ dir: "contracts",
52
+ defaultExportName: "contract",
53
+ },
54
+ {
55
+ dir: "data",
56
+ },
57
+ {
58
+ dir: "event-data",
59
+ },
60
+ {
61
+ dir: "events",
62
+ },
63
+ {
64
+ dir: "mixed-methods",
65
+ defaultExportName: "methods",
66
+ },
67
+ {
68
+ dir: "query",
69
+ defaultExportName: "query",
70
+ },
71
+ {
72
+ dir: "tx-sign-and-send",
73
+ defaultExportName: "tx",
74
+ },
75
+ ];
76
+ let file = "";
77
+ for (const typeChainExport of typeChainExports) {
78
+ const dirPath = `${src}/${typeChainExport.dir}`;
79
+ const files = fs.readdirSync(dirPath);
80
+ if (files.length !== 1) {
81
+ throw new ProsopoEnvError("FS.INVALID_DIR_FORMAT", {
82
+ context: {
83
+ error: `Expected 1 file in ${dirPath}, found ${files.length}`,
84
+ },
85
+ });
86
+ }
87
+ file = files[0] || "";
88
+ if (file === "") {
89
+ throw new ProsopoEnvError("FS.FILE_NOT_FOUND", {
90
+ context: { error: `No file found in ${dirPath}` },
91
+ });
92
+ }
93
+ if (file.endsWith(".ts")) {
94
+ file = replaceExtension(file, "js");
95
+ }
96
+ if (typeChainExport.defaultExportName !== undefined) {
97
+ const name = _.upperFirst(_.camelCase(typeChainExport.defaultExportName || typeChainExport.dir));
98
+ rootExports.push(`export { default as ${name} } from './${typeChainExport.dir}/${file}'`);
99
+ }
100
+ if (typeChainExport.exports !== undefined) {
101
+ for (const namedExport of typeChainExport.exports) {
102
+ const alias = namedExport.alias ? ` as ${namedExport.alias}` : "";
103
+ rootExports.push(`export { ${namedExport.name}${alias} } from './${typeChainExport.dir}/${file}'`);
104
+ }
105
+ }
106
+ }
107
+ rootExports.push(`export * from './shared/utils.js'`);
108
+ const regex = /export\s+([a-z]+)\s+(\w+)/g;
109
+ const fileTs = replaceExtension(file, "ts");
110
+ const typesArgumentsFileContent = fs.readFileSync(`${src}/types-arguments/${fileTs}`, "utf8");
111
+ const typesReturnsFileContent = fs.readFileSync(`${src}/types-returns/${fileTs}`, "utf8");
112
+ const argumentTypes = Array.from(typesArgumentsFileContent.matchAll(regex)).map((match) => {
113
+ return {
114
+ name: match[2] || "",
115
+ category: match[1] || "",
116
+ };
117
+ });
118
+ const returnTypes = Array.from(typesReturnsFileContent.matchAll(regex)).map((match) => {
119
+ return {
120
+ name: match[2] || "",
121
+ category: match[1] || "",
122
+ };
123
+ });
124
+ const argumentTypeNames = argumentTypes.map((entry) => entry.name);
125
+ const uniqueTypes = [...argumentTypes];
126
+ const locations = [...argumentTypes.map(() => "types-arguments")];
127
+ for (const entry of returnTypes) {
128
+ if (!argumentTypeNames.includes(entry.name)) {
129
+ uniqueTypes.push(entry);
130
+ locations.push("types-arguments");
131
+ }
132
+ else {
133
+ locations.push("types-returns");
134
+ }
135
+ }
136
+ uniqueTypes.forEach((entry, i) => {
137
+ const location = locations[i];
138
+ const prefix = entry.category === "type" || entry.category === "interface"
139
+ ? " type"
140
+ : "";
141
+ rootExports.push(`export${prefix} { ${entry.name} } from './${location}/${file}'`);
142
+ });
143
+ fs.writeFileSync(`${src}/index.ts`, rootExports.join("\n"));
144
+ };
145
+ writeIndexJsFiles(pathToOutput);
146
+ }
147
+ const getExtension = (str) => {
148
+ const i = str.indexOf("assert");
149
+ if (i >= 0) {
150
+ str = str.slice(0, i);
151
+ }
152
+ const arr = str.split(".");
153
+ if (arr.length <= 1) {
154
+ return "";
155
+ }
156
+ return arr.pop();
157
+ };
158
+ const getPath = (str) => {
159
+ const j = Math.max(str.lastIndexOf('"'), str.lastIndexOf("'"));
160
+ const i = Math.max(str.indexOf('"'), str.indexOf("'"));
161
+ return str.slice(i + 1, j);
162
+ };
163
+ export default importContract;
164
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/contract/import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default as importContract } from "./import.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contract/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default as importContract } from "./import.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contract/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,aAAa,CAAC"}