@prosopo/scripts 0.1.18 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) 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 +145 -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 +41 -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 +16 -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/import.d.ts +4 -0
  18. package/dist/contract/import.d.ts.map +1 -0
  19. package/dist/contract/import.js +21 -0
  20. package/dist/contract/import.js.map +1 -0
  21. package/dist/contract/index.d.ts +3 -0
  22. package/dist/contract/index.d.ts.map +1 -0
  23. package/dist/contract/index.js +16 -0
  24. package/dist/contract/index.js.map +1 -0
  25. package/dist/index.d.ts +5 -0
  26. package/dist/index.d.ts.map +1 -0
  27. package/dist/index.js +18 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/scripts/addCopyrightNotice.d.ts +2 -0
  30. package/dist/scripts/addCopyrightNotice.d.ts.map +1 -0
  31. package/dist/scripts/addCopyrightNotice.js +104 -0
  32. package/dist/scripts/addCopyrightNotice.js.map +1 -0
  33. package/dist/scripts/bytesToHex.d.ts +2 -0
  34. package/dist/scripts/bytesToHex.d.ts.map +1 -0
  35. package/dist/scripts/bytesToHex.js +22 -0
  36. package/dist/scripts/bytesToHex.js.map +1 -0
  37. package/dist/scripts/convertAccount.d.ts +2 -0
  38. package/dist/scripts/convertAccount.d.ts.map +1 -0
  39. package/dist/scripts/convertAccount.js +38 -0
  40. package/dist/scripts/convertAccount.js.map +1 -0
  41. package/dist/scripts/encodeDecode.d.ts +2 -0
  42. package/dist/scripts/encodeDecode.d.ts.map +1 -0
  43. package/dist/scripts/encodeDecode.js +65 -0
  44. package/dist/scripts/encodeDecode.js.map +1 -0
  45. package/dist/scripts/generateMnemonic.d.ts +2 -0
  46. package/dist/scripts/generateMnemonic.d.ts.map +1 -0
  47. package/dist/scripts/generateMnemonic.js +28 -0
  48. package/dist/scripts/generateMnemonic.js.map +1 -0
  49. package/dist/scripts/getBalance.d.ts +2 -0
  50. package/dist/scripts/getBalance.d.ts.map +1 -0
  51. package/dist/scripts/getBalance.js +15 -0
  52. package/dist/scripts/getBalance.js.map +1 -0
  53. package/dist/scripts/getBlock.d.ts +2 -0
  54. package/dist/scripts/getBlock.d.ts.map +1 -0
  55. package/dist/scripts/getBlock.js +32 -0
  56. package/dist/scripts/getBlock.js.map +1 -0
  57. package/dist/scripts/getContractInfoOf.d.ts +2 -0
  58. package/dist/scripts/getContractInfoOf.d.ts.map +1 -0
  59. package/dist/scripts/getContractInfoOf.js +53 -0
  60. package/dist/scripts/getContractInfoOf.js.map +1 -0
  61. package/dist/scripts/getExistentialDeposit.d.ts +2 -0
  62. package/dist/scripts/getExistentialDeposit.d.ts.map +1 -0
  63. package/dist/scripts/getExistentialDeposit.js +39 -0
  64. package/dist/scripts/getExistentialDeposit.js.map +1 -0
  65. package/dist/scripts/getRandomProvider.d.ts +2 -0
  66. package/dist/scripts/getRandomProvider.d.ts.map +1 -0
  67. package/dist/scripts/getRandomProvider.js +38 -0
  68. package/dist/scripts/getRandomProvider.js.map +1 -0
  69. package/dist/scripts/getStorage.d.ts +2 -0
  70. package/dist/scripts/getStorage.d.ts.map +1 -0
  71. package/dist/scripts/getStorage.js +36 -0
  72. package/dist/scripts/getStorage.js.map +1 -0
  73. package/dist/scripts/getValidators.d.ts +2 -0
  74. package/dist/scripts/getValidators.d.ts.map +1 -0
  75. package/dist/scripts/getValidators.js +32 -0
  76. package/dist/scripts/getValidators.js.map +1 -0
  77. package/dist/scripts/hash.d.ts +2 -0
  78. package/dist/scripts/hash.d.ts.map +1 -0
  79. package/dist/scripts/hash.js +56 -0
  80. package/dist/scripts/hash.js.map +1 -0
  81. package/dist/scripts/hexToBytes.d.ts +2 -0
  82. package/dist/scripts/hexToBytes.d.ts.map +1 -0
  83. package/dist/scripts/hexToBytes.js +19 -0
  84. package/dist/scripts/hexToBytes.js.map +1 -0
  85. package/dist/scripts/mnemonicFromSeed.d.ts +2 -0
  86. package/dist/scripts/mnemonicFromSeed.d.ts.map +1 -0
  87. package/dist/scripts/mnemonicFromSeed.js +30 -0
  88. package/dist/scripts/mnemonicFromSeed.js.map +1 -0
  89. package/dist/scripts/populateTxAndSign.d.ts +2 -0
  90. package/dist/scripts/populateTxAndSign.d.ts.map +1 -0
  91. package/dist/scripts/populateTxAndSign.js +65 -0
  92. package/dist/scripts/populateTxAndSign.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 +33 -0
  96. package/dist/scripts/sendFunds.js.map +1 -0
  97. package/dist/setup/dapp.d.ts +4 -0
  98. package/dist/setup/dapp.d.ts.map +1 -0
  99. package/dist/setup/dapp.js +35 -0
  100. package/dist/setup/dapp.js.map +1 -0
  101. package/dist/setup/funds.d.ts +23 -0
  102. package/dist/setup/funds.d.ts.map +1 -0
  103. package/dist/setup/funds.js +102 -0
  104. package/dist/setup/funds.js.map +1 -0
  105. package/dist/setup/index.d.ts +5 -0
  106. package/dist/setup/index.d.ts.map +1 -0
  107. package/dist/setup/index.js +18 -0
  108. package/dist/setup/index.js.map +1 -0
  109. package/dist/setup/provider.d.ts +5 -0
  110. package/dist/setup/provider.d.ts.map +1 -0
  111. package/dist/setup/provider.js +84 -0
  112. package/dist/setup/provider.js.map +1 -0
  113. package/dist/setup/setup.d.ts +2 -0
  114. package/dist/setup/setup.d.ts.map +1 -0
  115. package/dist/setup/setup.js +151 -0
  116. package/dist/setup/setup.js.map +1 -0
  117. package/dist/util/exec.d.ts +10 -0
  118. package/dist/util/exec.d.ts.map +1 -0
  119. package/dist/util/exec.js +58 -0
  120. package/dist/util/exec.js.map +1 -0
  121. package/dist/util/index.d.ts +4 -0
  122. package/dist/util/index.d.ts.map +1 -0
  123. package/dist/util/index.js +17 -0
  124. package/dist/util/index.js.map +1 -0
  125. package/dist/util/loadContractFiles.d.ts +4 -0
  126. package/dist/util/loadContractFiles.d.ts.map +1 -0
  127. package/dist/util/loadContractFiles.js +54 -0
  128. package/dist/util/loadContractFiles.js.map +1 -0
  129. package/dist/util/updateEnv.d.ts +4 -0
  130. package/dist/util/updateEnv.d.ts.map +1 -0
  131. package/dist/util/updateEnv.js +45 -0
  132. package/dist/util/updateEnv.js.map +1 -0
  133. package/package.json +20 -20
@@ -0,0 +1,58 @@
1
+ // Copyright 2021-2023 Prosopo (UK) Ltd.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ import { spawn } from 'child_process';
15
+ import { stdin } from 'process';
16
+ export const exec = (command, options) => {
17
+ let { pipe, printCmd } = options || {};
18
+ pipe = pipe === undefined || pipe; // map undefined to true
19
+ printCmd = printCmd === undefined || printCmd; // map undefined to true
20
+ if (printCmd) {
21
+ console.log(`[exec] ${command}`);
22
+ }
23
+ const prc = spawn(command, {
24
+ shell: true,
25
+ });
26
+ if (pipe || pipe === undefined) {
27
+ prc.stdout.pipe(process.stdout);
28
+ prc.stderr.pipe(process.stderr);
29
+ }
30
+ stdin.pipe(prc.stdin);
31
+ const stdoutData = [];
32
+ const stderrData = [];
33
+ prc.stdout.on('data', (data) => {
34
+ stdoutData.push(data.toString());
35
+ });
36
+ prc.stderr.on('data', (data) => {
37
+ stderrData.push(data.toString());
38
+ });
39
+ return new Promise((resolve, reject) => {
40
+ prc.on('close', function (code) {
41
+ if (pipe || pipe === undefined) {
42
+ console.log('');
43
+ }
44
+ const output = {
45
+ stdout: stdoutData.join(''),
46
+ stderr: stderrData.join(''),
47
+ code,
48
+ };
49
+ if (code === 0) {
50
+ resolve(output);
51
+ }
52
+ else {
53
+ reject(output);
54
+ }
55
+ });
56
+ });
57
+ };
58
+ //# sourceMappingURL=exec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/util/exec.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAQ/B,MAAM,CAAC,MAAM,IAAI,GAAG,CAChB,OAAe,EACf,OAGC,EACkB,EAAE;IACrB,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IACtC,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,CAAA,CAAC,wBAAwB;IAC1D,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAA,CAAC,wBAAwB;IAEtE,IAAI,QAAQ,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAA;KACnC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE;QACvB,KAAK,EAAE,IAAI;KACd,CAAC,CAAA;IAEF,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC/B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;KAClC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAErB,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,IAAI;YAC1B,IAAI,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;gBAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;aAClB;YACD,MAAM,MAAM,GAAe;gBACvB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI;aACP,CAAA;YACD,IAAI,IAAI,KAAK,CAAC,EAAE;gBACZ,OAAO,CAAC,MAAM,CAAC,CAAA;aAClB;iBAAM;gBACH,MAAM,CAAC,MAAM,CAAC,CAAA;aACjB;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './loadContractFiles.js';
2
+ export * from './updateEnv.js';
3
+ export * from './exec.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAaA,cAAc,wBAAwB,CAAA;AACtC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA"}
@@ -0,0 +1,17 @@
1
+ // Copyright 2021-2023 Prosopo (UK) Ltd.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ export * from './loadContractFiles.js';
15
+ export * from './updateEnv.js';
16
+ export * from './exec.js';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Abi } from '@polkadot/api-contract';
2
+ export declare function AbiJSON(filePath: string): Promise<Abi>;
3
+ export declare function Wasm(filePath: string): Promise<Uint8Array>;
4
+ //# sourceMappingURL=loadContractFiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadContractFiles.d.ts","sourceRoot":"","sources":["../../src/util/loadContractFiles.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAM5C,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAe5D;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAiBhE"}
@@ -0,0 +1,54 @@
1
+ // Copyright 2021-2023 Prosopo (UK) Ltd.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ // TODO use the .contract file instead of the .json and .wasm files. Polkadot-JS apps is also erroring out when using
15
+ // the .wasm and .json files. The .contract file works but I don't know why.
16
+ import { Abi } from '@polkadot/api-contract';
17
+ import { hexToU8a, isWasm } from '@polkadot/util';
18
+ import fse from 'fs-extra';
19
+ import path from 'path';
20
+ const __dirname = path.resolve();
21
+ export async function AbiJSON(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 json = JSON.parse(await fse.readFile(resolvedFilePath, {
27
+ encoding: 'utf8',
28
+ }));
29
+ return new Abi(json);
30
+ }
31
+ else {
32
+ throw new Error(`File ${filePath} does not exist`);
33
+ }
34
+ }
35
+ export async function Wasm(filePath) {
36
+ const resolvedFilePath = path.resolve(__dirname, filePath);
37
+ await fse.ensureFile(resolvedFilePath);
38
+ const fileExists = await fse.pathExists(resolvedFilePath);
39
+ if (fileExists) {
40
+ const wasm = `0x${fse.readFileSync(resolvedFilePath).toString('hex')}`;
41
+ const wasmBytes = hexToU8a(wasm);
42
+ if (isWasm(wasmBytes)) {
43
+ return wasmBytes;
44
+ }
45
+ else {
46
+ console.error(`Error loading contract wasm: ${wasm.slice(0, 10)}...`);
47
+ process.exit(1);
48
+ }
49
+ }
50
+ else {
51
+ throw new Error(`File ${filePath} does not exist`);
52
+ }
53
+ }
54
+ //# sourceMappingURL=loadContractFiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadContractFiles.js","sourceRoot":"","sources":["../../src/util/loadContractFiles.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,qHAAqH;AACrH,8EAA8E;AAC9E,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;AAChC,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,QAAgB;IAC1C,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC1D,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;IAEzD,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CACnB,MAAM,GAAG,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YACjC,QAAQ,EAAE,MAAM;SACnB,CAAC,CACL,CAAA;QACD,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;KACvB;SAAM;QACH,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,iBAAiB,CAAC,CAAA;KACrD;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,QAAgB;IACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC1D,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;IACzD,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,GAAkB,KAAK,GAAG,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;QACrF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE;YACnB,OAAO,SAAS,CAAA;SACnB;aAAM;YACH,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAClB;KACJ;SAAM;QACH,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,iBAAiB,CAAC,CAAA;KACrD;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Logger } from '@prosopo/common';
2
+ export declare function findEnvFiles(logger: Logger): Promise<string[]>;
3
+ export declare function updateEnvFiles(varNames: string[], varValue: string, logger: Logger): Promise<void>;
4
+ //# sourceMappingURL=updateEnv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateEnv.d.ts","sourceRoot":"","sources":["../../src/util/updateEnv.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAQxC,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,qBAchD;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAyBxF"}
@@ -0,0 +1,45 @@
1
+ import { getEnv } from '@prosopo/cli';
2
+ import { glob } from 'glob';
3
+ import dotenv from 'dotenv';
4
+ import fs from 'fs';
5
+ import path from 'path';
6
+ const __dirname = path.resolve();
7
+ export async function findEnvFiles(logger) {
8
+ const env = getEnv();
9
+ const fileName = `.env.${env}`;
10
+ // options is optional
11
+ logger.info('Searching for files');
12
+ return await glob.glob(`../../**/${fileName}`, {
13
+ ignore: [
14
+ 'node_modules/**',
15
+ 'node_modules/**',
16
+ '../../**/node_modules/**',
17
+ '../node_modules/**',
18
+ '../../node_modules/**',
19
+ ],
20
+ });
21
+ }
22
+ export async function updateEnvFiles(varNames, varValue, logger) {
23
+ const files = await findEnvFiles(logger);
24
+ logger.info('Env files found', files);
25
+ files.forEach((file) => {
26
+ let write = false;
27
+ // the following code loads a .env file, searches for the variable and replaces it
28
+ // then saves the file
29
+ const filePath = path.resolve(process.cwd(), file);
30
+ const envConfig = dotenv.parse(fs.readFileSync(filePath));
31
+ for (const varName of varNames) {
32
+ if (varName in envConfig) {
33
+ envConfig[varName] = varValue;
34
+ write = true;
35
+ }
36
+ }
37
+ if (write) {
38
+ // write the file back
39
+ fs.writeFileSync(path.resolve(__dirname, filePath), Object.keys(envConfig)
40
+ .map((k) => `${k}=${envConfig[k]}`)
41
+ .join('\n'));
42
+ }
43
+ });
44
+ }
45
+ //# sourceMappingURL=updateEnv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateEnv.js","sourceRoot":"","sources":["../../src/util/updateEnv.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;AAChC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc;IAC7C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAA;IACpB,MAAM,QAAQ,GAAG,QAAQ,GAAG,EAAE,CAAA;IAC9B,sBAAsB;IACtB,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;IAClC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,QAAQ,EAAE,EAAE;QAC3C,MAAM,EAAE;YACJ,iBAAiB;YACjB,iBAAiB;YACjB,0BAA0B;YAC1B,oBAAoB;YACpB,uBAAuB;SAC1B;KACJ,CAAC,CAAA;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAkB,EAAE,QAAgB,EAAE,MAAc;IACrF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAA;IACxC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IACrC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,KAAK,GAAG,KAAK,CAAA;QACjB,kFAAkF;QAClF,sBAAsB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAA;QAClD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;QACzD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC5B,IAAI,OAAO,IAAI,SAAS,EAAE;gBACtB,SAAS,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAA;gBAC7B,KAAK,GAAG,IAAI,CAAA;aACf;SACJ;QACD,IAAI,KAAK,EAAE;YACP,sBAAsB;YACtB,EAAE,CAAC,aAAa,CACZ,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,EACjC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;iBACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClC,IAAI,CAAC,IAAI,CAAC,CAClB,CAAA;SACJ;IACL,CAAC,CAAC,CAAA;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/scripts",
3
- "version": "0.1.18",
3
+ "version": "0.2.0",
4
4
  "description": "Dev scripts for working with prosopo packages",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -20,25 +20,25 @@
20
20
  "@polkadot/api-contract": "10.9.1",
21
21
  "@polkadot/types": "10.9.1",
22
22
  "@polkadot/util-crypto": "12.3.2",
23
- "@prosopo/api": "^0.1.18",
24
- "@prosopo/cli": "^0.1.18",
25
- "@prosopo/common": "^0.1.18",
26
- "@prosopo/config": "^0.1.18",
27
- "@prosopo/contract": "^0.1.18",
28
- "@prosopo/database": "^0.1.18",
29
- "@prosopo/datasets": "^0.1.18",
30
- "@prosopo/datasets-fs": "^0.1.18",
31
- "@prosopo/env": "^0.1.18",
32
- "@prosopo/file-server": "^0.1.18",
33
- "@prosopo/procaptcha": "^0.1.18",
34
- "@prosopo/procaptcha-bundle": "^0.1.18",
35
- "@prosopo/procaptcha-react": "^0.1.18",
36
- "@prosopo/provider": "^0.1.18",
37
- "@prosopo/server": "^0.1.18",
38
- "@prosopo/types": "^0.1.18",
39
- "@prosopo/types-database": "^0.1.18",
40
- "@prosopo/types-env": "^0.1.18",
41
- "@prosopo/util": "^0.1.18",
23
+ "@prosopo/api": "0.2.0",
24
+ "@prosopo/cli": "0.2.0",
25
+ "@prosopo/common": "0.2.0",
26
+ "@prosopo/config": "0.2.0",
27
+ "@prosopo/contract": "0.2.0",
28
+ "@prosopo/database": "0.2.0",
29
+ "@prosopo/datasets": "0.2.0",
30
+ "@prosopo/datasets-fs": "0.2.0",
31
+ "@prosopo/env": "0.2.0",
32
+ "@prosopo/file-server": "0.2.0",
33
+ "@prosopo/procaptcha": "0.2.0",
34
+ "@prosopo/procaptcha-bundle": "0.2.0",
35
+ "@prosopo/procaptcha-react": "0.2.0",
36
+ "@prosopo/provider": "0.2.0",
37
+ "@prosopo/server": "0.2.0",
38
+ "@prosopo/types": "0.2.0",
39
+ "@prosopo/types-database": "0.2.0",
40
+ "@prosopo/types-env": "0.2.0",
41
+ "@prosopo/util": "0.2.0",
42
42
  "consola": "^2.15.3",
43
43
  "dotenv": "^16.0.3",
44
44
  "glob": "^10.0.0",