@cardano-sdk/e2e 0.16.5 → 0.16.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 (119) hide show
  1. package/.env.example +4 -6
  2. package/CHANGELOG.md +6 -0
  3. package/README.md +2 -18
  4. package/dist/cjs/environment.d.ts +1 -1
  5. package/dist/cjs/environment.d.ts.map +1 -1
  6. package/dist/cjs/environment.js +1 -15
  7. package/dist/cjs/environment.js.map +1 -1
  8. package/dist/cjs/factories.d.ts +0 -2
  9. package/dist/cjs/factories.d.ts.map +1 -1
  10. package/dist/cjs/factories.js +6 -12
  11. package/dist/cjs/factories.js.map +1 -1
  12. package/dist/cjs/index.d.ts +0 -1
  13. package/dist/cjs/index.d.ts.map +1 -1
  14. package/dist/cjs/index.js +0 -1
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/scripts/is-local-network-ready.js +5 -28
  17. package/dist/cjs/scripts/is-local-network-ready.js.map +1 -1
  18. package/dist/cjs/tools/multi-delegation-data-gen/index.js +1 -3
  19. package/dist/cjs/tools/multi-delegation-data-gen/index.js.map +1 -1
  20. package/dist/cjs/tools/multi-delegation-data-gen/utils/utils.d.ts +1 -5
  21. package/dist/cjs/tools/multi-delegation-data-gen/utils/utils.d.ts.map +1 -1
  22. package/dist/cjs/tools/multi-delegation-data-gen/utils/utils.js +8 -50
  23. package/dist/cjs/tools/multi-delegation-data-gen/utils/utils.js.map +1 -1
  24. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  25. package/dist/cjs/util/util.d.ts +0 -1
  26. package/dist/cjs/util/util.d.ts.map +1 -1
  27. package/dist/cjs/util/util.js +2 -43
  28. package/dist/cjs/util/util.js.map +1 -1
  29. package/dist/esm/environment.d.ts +1 -1
  30. package/dist/esm/environment.d.ts.map +1 -1
  31. package/dist/esm/environment.js +1 -15
  32. package/dist/esm/environment.js.map +1 -1
  33. package/dist/esm/factories.d.ts +0 -2
  34. package/dist/esm/factories.d.ts.map +1 -1
  35. package/dist/esm/factories.js +6 -12
  36. package/dist/esm/factories.js.map +1 -1
  37. package/dist/esm/index.d.ts +0 -1
  38. package/dist/esm/index.d.ts.map +1 -1
  39. package/dist/esm/index.js +0 -1
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/scripts/is-local-network-ready.js +5 -5
  42. package/dist/esm/scripts/is-local-network-ready.js.map +1 -1
  43. package/dist/esm/tools/multi-delegation-data-gen/index.js +2 -4
  44. package/dist/esm/tools/multi-delegation-data-gen/index.js.map +1 -1
  45. package/dist/esm/tools/multi-delegation-data-gen/utils/utils.d.ts +1 -5
  46. package/dist/esm/tools/multi-delegation-data-gen/utils/utils.d.ts.map +1 -1
  47. package/dist/esm/tools/multi-delegation-data-gen/utils/utils.js +7 -46
  48. package/dist/esm/tools/multi-delegation-data-gen/utils/utils.js.map +1 -1
  49. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  50. package/dist/esm/util/util.d.ts +0 -1
  51. package/dist/esm/util/util.d.ts.map +1 -1
  52. package/dist/esm/util/util.js +3 -20
  53. package/dist/esm/util/util.js.map +1 -1
  54. package/docker-compose.yml +3 -21
  55. package/local-network/scripts/mint-handles.sh +108 -6
  56. package/local-network/scripts/mint-tokens.sh +21 -2
  57. package/local-network/scripts/mnemonic_keys.sh +14 -0
  58. package/local-network/scripts/setup-wallets.sh +18 -0
  59. package/local-network/scripts/start.sh +1 -2
  60. package/package.json +15 -16
  61. package/src/environment.ts +1 -19
  62. package/src/factories.ts +5 -13
  63. package/src/index.ts +0 -1
  64. package/src/scripts/is-local-network-ready.ts +6 -8
  65. package/src/tools/multi-delegation-data-gen/index.ts +1 -13
  66. package/src/tools/multi-delegation-data-gen/utils/utils.ts +7 -113
  67. package/src/util/util.ts +2 -29
  68. package/test/k6/endpoints/asset/get-asset.test.js +15 -14
  69. package/test/k6/endpoints/asset/get-assets.test.js +269 -269
  70. package/test/k6/endpoints/chain-history/blocks/by-hashes.test.js +12 -11
  71. package/test/k6/endpoints/chain-history/txs/by-addresses.test.js +18 -15
  72. package/test/k6/endpoints/chain-history/txs/by-hashes.test.js +12 -11
  73. package/test/k6/endpoints/network-info/era-summaries.test.js +11 -10
  74. package/test/k6/endpoints/network-info/genesis-parameters.test.js +11 -10
  75. package/test/k6/endpoints/network-info/ledger-tip.test.js +11 -10
  76. package/test/k6/endpoints/network-info/lovelace-supply.test.js +11 -10
  77. package/test/k6/endpoints/network-info/protocol-parameters.test.js +11 -10
  78. package/test/k6/endpoints/network-info/stake.test.js +11 -10
  79. package/test/k6/endpoints/rewards/account-balance.test.js +12 -11
  80. package/test/k6/endpoints/stake-pool/stats.test.js +11 -10
  81. package/test/k6/endpoints/utxo/utxo-by-addresses.test.js +16 -11
  82. package/test/k6/scenarios/tx-submission.test.js +47 -46
  83. package/test/k6/scenarios/wallet-creation.test.js +127 -120
  84. package/test/k6/scenarios/wallet-restoration.test.js +264 -126
  85. package/test/providers/HandleProvider.test.ts +39 -0
  86. package/test/wallet/PersonalWallet/handle.test.ts +38 -16
  87. package/test/web-extension/webpack.config.base.js +0 -4
  88. package/dist/cjs/FaucetProvider/index.d.ts +0 -3
  89. package/dist/cjs/FaucetProvider/index.d.ts.map +0 -1
  90. package/dist/cjs/FaucetProvider/index.js +0 -19
  91. package/dist/cjs/FaucetProvider/index.js.map +0 -1
  92. package/dist/cjs/FaucetProvider/providers/cardanoWalletFaucetProvider.d.ts +0 -15
  93. package/dist/cjs/FaucetProvider/providers/cardanoWalletFaucetProvider.d.ts.map +0 -1
  94. package/dist/cjs/FaucetProvider/providers/cardanoWalletFaucetProvider.js +0 -148
  95. package/dist/cjs/FaucetProvider/providers/cardanoWalletFaucetProvider.js.map +0 -1
  96. package/dist/cjs/FaucetProvider/types.d.ts +0 -22
  97. package/dist/cjs/FaucetProvider/types.d.ts.map +0 -1
  98. package/dist/cjs/FaucetProvider/types.js +0 -14
  99. package/dist/cjs/FaucetProvider/types.js.map +0 -1
  100. package/dist/esm/FaucetProvider/index.d.ts +0 -3
  101. package/dist/esm/FaucetProvider/index.d.ts.map +0 -1
  102. package/dist/esm/FaucetProvider/index.js +0 -3
  103. package/dist/esm/FaucetProvider/index.js.map +0 -1
  104. package/dist/esm/FaucetProvider/providers/cardanoWalletFaucetProvider.d.ts +0 -15
  105. package/dist/esm/FaucetProvider/providers/cardanoWalletFaucetProvider.d.ts.map +0 -1
  106. package/dist/esm/FaucetProvider/providers/cardanoWalletFaucetProvider.js +0 -141
  107. package/dist/esm/FaucetProvider/providers/cardanoWalletFaucetProvider.js.map +0 -1
  108. package/dist/esm/FaucetProvider/types.d.ts +0 -22
  109. package/dist/esm/FaucetProvider/types.d.ts.map +0 -1
  110. package/dist/esm/FaucetProvider/types.js +0 -10
  111. package/dist/esm/FaucetProvider/types.js.map +0 -1
  112. package/local-network/faucet/README.md +0 -12
  113. package/local-network/faucet/faucet-addresses.json +0 -45
  114. package/local-network/faucet/faucet-mnemonic.json +0 -6
  115. package/local-network/faucet/faucet-send-funds.json +0 -23
  116. package/local-network/scripts/is-faucet-ready.sh +0 -29
  117. package/src/FaucetProvider/index.ts +0 -2
  118. package/src/FaucetProvider/providers/cardanoWalletFaucetProvider.ts +0 -233
  119. package/src/FaucetProvider/types.ts +0 -94
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./types"), exports);
18
- __exportStar(require("./providers/cardanoWalletFaucetProvider"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/FaucetProvider/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0EAAwD"}
@@ -1,15 +0,0 @@
1
- import { HealthCheckResponse } from '@cardano-sdk/core';
2
- import { FaucetProvider, FaucetRequestResult } from '../types';
3
- export declare class CardanoWalletFaucetProvider implements FaucetProvider {
4
- #private;
5
- constructor(url: string, seedPhrases: string);
6
- request(address: string, amount: number, confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
7
- multiRequest(addresses: string[], amounts: number[], confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
8
- start(): Promise<void>;
9
- getBalance(): Promise<number>;
10
- close(): Promise<void>;
11
- healthCheck(): Promise<HealthCheckResponse>;
12
- private mapStatus;
13
- static create(params: any): Promise<FaucetProvider>;
14
- }
15
- //# sourceMappingURL=cardanoWalletFaucetProvider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cardanoWalletFaucetProvider.d.ts","sourceRoot":"","sources":["../../../../src/FaucetProvider/providers/cardanoWalletFaucetProvider.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAkC,MAAM,UAAU,CAAC;AAmB/F,qBAAa,2BAA4B,YAAW,cAAc;;gBAYpD,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAc/B,OAAO,CAClB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,MAA8B,EAC7C,OAAO,GAAE,MAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IAalB,YAAY,CACvB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,GAAE,MAA8B,EAC7C,OAAO,GAAE,MAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IAkClB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiDtB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAiBxD,OAAO,CAAC,SAAS;WA0BH,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC;CAW3D"}
@@ -1,148 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- var _CardanoWalletFaucetProvider_serviceUrl, _CardanoWalletFaucetProvider_seedPhrases, _CardanoWalletFaucetProvider_faucetWalletId, _CardanoWalletFaucetProvider_walletServer;
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.CardanoWalletFaucetProvider = void 0;
19
- const cardano_wallet_js_1 = require("cardano-wallet-js");
20
- const core_1 = require("@cardano-sdk/core");
21
- const types_1 = require("../types");
22
- const ts_stopwatch_1 = require("ts-stopwatch");
23
- const process_1 = __importDefault(require("process"));
24
- const FAUCET_PASSPHRASE = 'passphrase';
25
- const FAUCET_WALLET_NAME = 'faucet';
26
- const HTTP_ERROR_CODE_IN_CONFLICT = 409;
27
- const DEFAULT_TIMEOUT = 10000;
28
- const DEFAULT_CONFIRMATIONS = 0;
29
- const PARAM_NAME_URL = 'baseUrl';
30
- const PARAM_NAME_MNEMONICS = 'mnemonic';
31
- const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
32
- class CardanoWalletFaucetProvider {
33
- constructor(url, seedPhrases) {
34
- _CardanoWalletFaucetProvider_serviceUrl.set(this, '');
35
- _CardanoWalletFaucetProvider_seedPhrases.set(this, '');
36
- _CardanoWalletFaucetProvider_faucetWalletId.set(this, '');
37
- _CardanoWalletFaucetProvider_walletServer.set(this, void 0);
38
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_serviceUrl, url, "f");
39
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_seedPhrases, seedPhrases, "f");
40
- }
41
- async request(address, amount, confirmations = DEFAULT_CONFIRMATIONS, timeout = DEFAULT_TIMEOUT) {
42
- return this.multiRequest([address], [amount], confirmations, timeout);
43
- }
44
- async multiRequest(addresses, amounts, confirmations = DEFAULT_CONFIRMATIONS, timeout = DEFAULT_TIMEOUT) {
45
- const faucetWallet = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").getShelleyWallet(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f"));
46
- const receiverAddress = addresses.map((strAddress) => new cardano_wallet_js_1.AddressWallet(strAddress));
47
- const stopwatch = new ts_stopwatch_1.Stopwatch();
48
- stopwatch.start();
49
- let transaction = await faucetWallet.sendPayment(FAUCET_PASSPHRASE, receiverAddress, amounts);
50
- let isTransactionConfirmed = false;
51
- while ((transaction.status === cardano_wallet_js_1.ApiTransactionStatusEnum.Pending || !isTransactionConfirmed) &&
52
- stopwatch.getTime() < timeout) {
53
- transaction = await faucetWallet.getTransaction(transaction.id);
54
- isTransactionConfirmed = transaction.depth !== undefined && transaction.depth.quantity >= confirmations;
55
- }
56
- stopwatch.stop();
57
- if (stopwatch.getTime() >= timeout)
58
- throw new Error(`The transaction ${transaction.id} was not confirmed on time`);
59
- return {
60
- confirmations: transaction.depth?.quantity,
61
- id: core_1.Cardano.TransactionId(transaction.id),
62
- status: this.mapStatus(transaction.status),
63
- time: transaction.inserted_at?.time
64
- };
65
- }
66
- async start() {
67
- const walletInfo = {
68
- mnemonic_sentence: __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_seedPhrases, "f").split(' '),
69
- name: FAUCET_WALLET_NAME,
70
- passphrase: FAUCET_PASSPHRASE
71
- };
72
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_walletServer, cardano_wallet_js_1.WalletServer.init(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_serviceUrl, "f")), "f");
73
- const axiosResponse = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").walletsApi.postWallet(walletInfo).catch((error) => {
74
- if (error.response === undefined)
75
- throw error;
76
- if (error.response.status === HTTP_ERROR_CODE_IN_CONFLICT) {
77
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, error.response.data.message.match(/(?<=: ).*(?= H)/g)[0], "f");
78
- }
79
- else {
80
- throw error.response.data;
81
- }
82
- });
83
- if (axiosResponse)
84
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, axiosResponse.data.id, "f");
85
- const start = Date.now() / 1000;
86
- const waitTime = process_1.default.env.LOCAL_NETWORK_READY_WAIT_TIME ? process_1.default.env.LOCAL_NETWORK_READY_WAIT_TIME : 1200;
87
- let isReady = false;
88
- let currentElapsed = 0;
89
- while (!isReady && currentElapsed < waitTime) {
90
- try {
91
- isReady = (await this.healthCheck()).ok;
92
- }
93
- catch {
94
- }
95
- finally {
96
- currentElapsed = Date.now() / 1000 - start;
97
- await sleep(5000);
98
- }
99
- }
100
- if (currentElapsed > waitTime) {
101
- throw new Error('Wait time expired. The faucet was not ready on time.');
102
- }
103
- }
104
- async getBalance() {
105
- if (__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f") === undefined)
106
- throw new Error('Faucet is not running.');
107
- const axiosResponse = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").walletsApi.getWallet(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f"));
108
- return axiosResponse.data.balance.total.quantity;
109
- }
110
- async close() {
111
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, '', "f");
112
- }
113
- async healthCheck() {
114
- const networkInfo = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").getNetworkInformation();
115
- return {
116
- ok: networkInfo.sync_progress.status === cardano_wallet_js_1.ApiNetworkInformationSyncProgressStatusEnum.Ready &&
117
- __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f") !== '' &&
118
- (await this.getBalance()) > 100000000
119
- };
120
- }
121
- mapStatus(status) {
122
- let mappedStatus = types_1.FaucetRequestTransactionStatus.Expired;
123
- switch (status) {
124
- case cardano_wallet_js_1.ApiTransactionStatusEnum.Expired:
125
- mappedStatus = types_1.FaucetRequestTransactionStatus.Expired;
126
- break;
127
- case cardano_wallet_js_1.ApiTransactionStatusEnum.InLedger:
128
- mappedStatus = types_1.FaucetRequestTransactionStatus.InLedger;
129
- break;
130
- case cardano_wallet_js_1.ApiTransactionStatusEnum.Pending:
131
- mappedStatus = types_1.FaucetRequestTransactionStatus.Pending;
132
- break;
133
- }
134
- return mappedStatus;
135
- }
136
- static create(params) {
137
- if (!params.hasOwnProperty(PARAM_NAME_URL))
138
- throw new Error(`${CardanoWalletFaucetProvider.name} missing argument: ${PARAM_NAME_URL}`);
139
- if (!params.hasOwnProperty(PARAM_NAME_MNEMONICS))
140
- throw new Error(`${CardanoWalletFaucetProvider.name} missing argument: ${PARAM_NAME_MNEMONICS}`);
141
- return new Promise((resolve) => {
142
- resolve(new CardanoWalletFaucetProvider(params[PARAM_NAME_URL], params[PARAM_NAME_MNEMONICS]));
143
- });
144
- }
145
- }
146
- exports.CardanoWalletFaucetProvider = CardanoWalletFaucetProvider;
147
- _CardanoWalletFaucetProvider_serviceUrl = new WeakMap(), _CardanoWalletFaucetProvider_seedPhrases = new WeakMap(), _CardanoWalletFaucetProvider_faucetWalletId = new WeakMap(), _CardanoWalletFaucetProvider_walletServer = new WeakMap();
148
- //# sourceMappingURL=cardanoWalletFaucetProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cardanoWalletFaucetProvider.js","sourceRoot":"","sources":["../../../../src/FaucetProvider/providers/cardanoWalletFaucetProvider.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { Cardano, HealthCheckResponse, Provider } from '@cardano-sdk/core';
2
- export declare enum FaucetRequestTransactionStatus {
3
- Pending = 0,
4
- Submitted = 1,
5
- InLedger = 2,
6
- Expired = 3
7
- }
8
- export declare class FaucetRequestResult {
9
- id: Cardano.TransactionId;
10
- status: FaucetRequestTransactionStatus;
11
- time: string;
12
- confirmations: number;
13
- }
14
- export interface FaucetProvider extends Provider {
15
- request(address: string, amount: number, confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
16
- multiRequest(addresses: string[], amounts: number[], confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
17
- start(): Promise<void>;
18
- close(): Promise<void>;
19
- getBalance(): Promise<number>;
20
- healthCheck(): Promise<HealthCheckResponse>;
21
- }
22
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/FaucetProvider/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAK3E,oBAAY,8BAA8B;IACxC,OAAO,IAAA;IACP,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,OAAO,IAAA;CACR;AAKD,qBAAa,mBAAmB;IAI9B,EAAE,EAAE,OAAO,CAAC,aAAa,CAAC;IAK1B,MAAM,EAAE,8BAA8B,CAAC;IAKvC,IAAI,EAAE,MAAM,CAAC;IAMb,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAU9C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAWjH,YAAY,CACV,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAKhC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAKvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAKvB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAO9B,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC7C"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FaucetRequestResult = exports.FaucetRequestTransactionStatus = void 0;
4
- var FaucetRequestTransactionStatus;
5
- (function (FaucetRequestTransactionStatus) {
6
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Pending"] = 0] = "Pending";
7
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Submitted"] = 1] = "Submitted";
8
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["InLedger"] = 2] = "InLedger";
9
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Expired"] = 3] = "Expired";
10
- })(FaucetRequestTransactionStatus = exports.FaucetRequestTransactionStatus || (exports.FaucetRequestTransactionStatus = {}));
11
- class FaucetRequestResult {
12
- }
13
- exports.FaucetRequestResult = FaucetRequestResult;
14
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/FaucetProvider/types.ts"],"names":[],"mappings":";;;AAOA,IAAY,8BAKX;AALD,WAAY,8BAA8B;IACxC,yFAAO,CAAA;IACP,6FAAS,CAAA;IACT,2FAAQ,CAAA;IACR,yFAAO,CAAA;AACT,CAAC,EALW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAKzC;AAKD,MAAa,mBAAmB;CAqB/B;AArBD,kDAqBC"}
@@ -1,3 +0,0 @@
1
- export * from './types';
2
- export * from './providers/cardanoWalletFaucetProvider';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/FaucetProvider/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,yCAAyC,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './types';
2
- export * from './providers/cardanoWalletFaucetProvider';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/FaucetProvider/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,yCAAyC,CAAC"}
@@ -1,15 +0,0 @@
1
- import { HealthCheckResponse } from '@cardano-sdk/core';
2
- import { FaucetProvider, FaucetRequestResult } from '../types';
3
- export declare class CardanoWalletFaucetProvider implements FaucetProvider {
4
- #private;
5
- constructor(url: string, seedPhrases: string);
6
- request(address: string, amount: number, confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
7
- multiRequest(addresses: string[], amounts: number[], confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
8
- start(): Promise<void>;
9
- getBalance(): Promise<number>;
10
- close(): Promise<void>;
11
- healthCheck(): Promise<HealthCheckResponse>;
12
- private mapStatus;
13
- static create(params: any): Promise<FaucetProvider>;
14
- }
15
- //# sourceMappingURL=cardanoWalletFaucetProvider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cardanoWalletFaucetProvider.d.ts","sourceRoot":"","sources":["../../../../src/FaucetProvider/providers/cardanoWalletFaucetProvider.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAkC,MAAM,UAAU,CAAC;AAmB/F,qBAAa,2BAA4B,YAAW,cAAc;;gBAYpD,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAc/B,OAAO,CAClB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,MAA8B,EAC7C,OAAO,GAAE,MAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IAalB,YAAY,CACvB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,GAAE,MAA8B,EAC7C,OAAO,GAAE,MAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IAkClB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiDtB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAiBxD,OAAO,CAAC,SAAS;WA0BH,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC;CAW3D"}
@@ -1,141 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _CardanoWalletFaucetProvider_serviceUrl, _CardanoWalletFaucetProvider_seedPhrases, _CardanoWalletFaucetProvider_faucetWalletId, _CardanoWalletFaucetProvider_walletServer;
13
- import { AddressWallet, ApiNetworkInformationSyncProgressStatusEnum, ApiTransactionStatusEnum, WalletServer } from 'cardano-wallet-js';
14
- import { Cardano } from '@cardano-sdk/core';
15
- import { FaucetRequestTransactionStatus } from '../types';
16
- import { Stopwatch } from 'ts-stopwatch';
17
- import Process from 'process';
18
- const FAUCET_PASSPHRASE = 'passphrase';
19
- const FAUCET_WALLET_NAME = 'faucet';
20
- const HTTP_ERROR_CODE_IN_CONFLICT = 409;
21
- const DEFAULT_TIMEOUT = 10000;
22
- const DEFAULT_CONFIRMATIONS = 0;
23
- const PARAM_NAME_URL = 'baseUrl';
24
- const PARAM_NAME_MNEMONICS = 'mnemonic';
25
- const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
26
- export class CardanoWalletFaucetProvider {
27
- constructor(url, seedPhrases) {
28
- _CardanoWalletFaucetProvider_serviceUrl.set(this, '');
29
- _CardanoWalletFaucetProvider_seedPhrases.set(this, '');
30
- _CardanoWalletFaucetProvider_faucetWalletId.set(this, '');
31
- _CardanoWalletFaucetProvider_walletServer.set(this, void 0);
32
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_serviceUrl, url, "f");
33
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_seedPhrases, seedPhrases, "f");
34
- }
35
- async request(address, amount, confirmations = DEFAULT_CONFIRMATIONS, timeout = DEFAULT_TIMEOUT) {
36
- return this.multiRequest([address], [amount], confirmations, timeout);
37
- }
38
- async multiRequest(addresses, amounts, confirmations = DEFAULT_CONFIRMATIONS, timeout = DEFAULT_TIMEOUT) {
39
- const faucetWallet = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").getShelleyWallet(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f"));
40
- const receiverAddress = addresses.map((strAddress) => new AddressWallet(strAddress));
41
- const stopwatch = new Stopwatch();
42
- stopwatch.start();
43
- let transaction = await faucetWallet.sendPayment(FAUCET_PASSPHRASE, receiverAddress, amounts);
44
- let isTransactionConfirmed = false;
45
- while ((transaction.status === ApiTransactionStatusEnum.Pending || !isTransactionConfirmed) &&
46
- stopwatch.getTime() < timeout) {
47
- transaction = await faucetWallet.getTransaction(transaction.id);
48
- isTransactionConfirmed = transaction.depth !== undefined && transaction.depth.quantity >= confirmations;
49
- }
50
- stopwatch.stop();
51
- if (stopwatch.getTime() >= timeout)
52
- throw new Error(`The transaction ${transaction.id} was not confirmed on time`);
53
- return {
54
- confirmations: transaction.depth?.quantity,
55
- id: Cardano.TransactionId(transaction.id),
56
- status: this.mapStatus(transaction.status),
57
- time: transaction.inserted_at?.time
58
- };
59
- }
60
- async start() {
61
- const walletInfo = {
62
- mnemonic_sentence: __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_seedPhrases, "f").split(' '),
63
- name: FAUCET_WALLET_NAME,
64
- passphrase: FAUCET_PASSPHRASE
65
- };
66
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_walletServer, WalletServer.init(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_serviceUrl, "f")), "f");
67
- const axiosResponse = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").walletsApi.postWallet(walletInfo).catch((error) => {
68
- if (error.response === undefined)
69
- throw error;
70
- if (error.response.status === HTTP_ERROR_CODE_IN_CONFLICT) {
71
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, error.response.data.message.match(/(?<=: ).*(?= H)/g)[0], "f");
72
- }
73
- else {
74
- throw error.response.data;
75
- }
76
- });
77
- if (axiosResponse)
78
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, axiosResponse.data.id, "f");
79
- const start = Date.now() / 1000;
80
- const waitTime = Process.env.LOCAL_NETWORK_READY_WAIT_TIME ? Process.env.LOCAL_NETWORK_READY_WAIT_TIME : 1200;
81
- let isReady = false;
82
- let currentElapsed = 0;
83
- while (!isReady && currentElapsed < waitTime) {
84
- try {
85
- isReady = (await this.healthCheck()).ok;
86
- }
87
- catch {
88
- }
89
- finally {
90
- currentElapsed = Date.now() / 1000 - start;
91
- await sleep(5000);
92
- }
93
- }
94
- if (currentElapsed > waitTime) {
95
- throw new Error('Wait time expired. The faucet was not ready on time.');
96
- }
97
- }
98
- async getBalance() {
99
- if (__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f") === undefined)
100
- throw new Error('Faucet is not running.');
101
- const axiosResponse = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").walletsApi.getWallet(__classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f"));
102
- return axiosResponse.data.balance.total.quantity;
103
- }
104
- async close() {
105
- __classPrivateFieldSet(this, _CardanoWalletFaucetProvider_faucetWalletId, '', "f");
106
- }
107
- async healthCheck() {
108
- const networkInfo = await __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_walletServer, "f").getNetworkInformation();
109
- return {
110
- ok: networkInfo.sync_progress.status === ApiNetworkInformationSyncProgressStatusEnum.Ready &&
111
- __classPrivateFieldGet(this, _CardanoWalletFaucetProvider_faucetWalletId, "f") !== '' &&
112
- (await this.getBalance()) > 100000000
113
- };
114
- }
115
- mapStatus(status) {
116
- let mappedStatus = FaucetRequestTransactionStatus.Expired;
117
- switch (status) {
118
- case ApiTransactionStatusEnum.Expired:
119
- mappedStatus = FaucetRequestTransactionStatus.Expired;
120
- break;
121
- case ApiTransactionStatusEnum.InLedger:
122
- mappedStatus = FaucetRequestTransactionStatus.InLedger;
123
- break;
124
- case ApiTransactionStatusEnum.Pending:
125
- mappedStatus = FaucetRequestTransactionStatus.Pending;
126
- break;
127
- }
128
- return mappedStatus;
129
- }
130
- static create(params) {
131
- if (!params.hasOwnProperty(PARAM_NAME_URL))
132
- throw new Error(`${CardanoWalletFaucetProvider.name} missing argument: ${PARAM_NAME_URL}`);
133
- if (!params.hasOwnProperty(PARAM_NAME_MNEMONICS))
134
- throw new Error(`${CardanoWalletFaucetProvider.name} missing argument: ${PARAM_NAME_MNEMONICS}`);
135
- return new Promise((resolve) => {
136
- resolve(new CardanoWalletFaucetProvider(params[PARAM_NAME_URL], params[PARAM_NAME_MNEMONICS]));
137
- });
138
- }
139
- }
140
- _CardanoWalletFaucetProvider_serviceUrl = new WeakMap(), _CardanoWalletFaucetProvider_seedPhrases = new WeakMap(), _CardanoWalletFaucetProvider_faucetWalletId = new WeakMap(), _CardanoWalletFaucetProvider_walletServer = new WeakMap();
141
- //# sourceMappingURL=cardanoWalletFaucetProvider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cardanoWalletFaucetProvider.js","sourceRoot":"","sources":["../../../../src/FaucetProvider/providers/cardanoWalletFaucetProvider.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { Cardano, HealthCheckResponse, Provider } from '@cardano-sdk/core';
2
- export declare enum FaucetRequestTransactionStatus {
3
- Pending = 0,
4
- Submitted = 1,
5
- InLedger = 2,
6
- Expired = 3
7
- }
8
- export declare class FaucetRequestResult {
9
- id: Cardano.TransactionId;
10
- status: FaucetRequestTransactionStatus;
11
- time: string;
12
- confirmations: number;
13
- }
14
- export interface FaucetProvider extends Provider {
15
- request(address: string, amount: number, confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
16
- multiRequest(addresses: string[], amounts: number[], confirmations?: number, timeout?: number): Promise<FaucetRequestResult>;
17
- start(): Promise<void>;
18
- close(): Promise<void>;
19
- getBalance(): Promise<number>;
20
- healthCheck(): Promise<HealthCheckResponse>;
21
- }
22
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/FaucetProvider/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAK3E,oBAAY,8BAA8B;IACxC,OAAO,IAAA;IACP,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,OAAO,IAAA;CACR;AAKD,qBAAa,mBAAmB;IAI9B,EAAE,EAAE,OAAO,CAAC,aAAa,CAAC;IAK1B,MAAM,EAAE,8BAA8B,CAAC;IAKvC,IAAI,EAAE,MAAM,CAAC;IAMb,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAU9C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAWjH,YAAY,CACV,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAKhC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAKvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAKvB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAO9B,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC7C"}
@@ -1,10 +0,0 @@
1
- export var FaucetRequestTransactionStatus;
2
- (function (FaucetRequestTransactionStatus) {
3
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Pending"] = 0] = "Pending";
4
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Submitted"] = 1] = "Submitted";
5
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["InLedger"] = 2] = "InLedger";
6
- FaucetRequestTransactionStatus[FaucetRequestTransactionStatus["Expired"] = 3] = "Expired";
7
- })(FaucetRequestTransactionStatus || (FaucetRequestTransactionStatus = {}));
8
- export class FaucetRequestResult {
9
- }
10
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/FaucetProvider/types.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,8BAKX;AALD,WAAY,8BAA8B;IACxC,yFAAO,CAAA;IACP,6FAAS,CAAA;IACT,2FAAQ,CAAA;IACR,yFAAO,CAAA;AACT,CAAC,EALW,8BAA8B,KAA9B,8BAA8B,QAKzC;AAKD,MAAM,OAAO,mBAAmB;CAqB/B"}
@@ -1,12 +0,0 @@
1
- # Create Faucet wallet
2
- curl http://localhost:8090/v2/wallets -H 'Content-Type: application/json' -H 'Accept: application/json' -d @./faucet/faucet-mnemonic.json
3
-
4
- # Get Faucet wallet
5
- curl http://localhost:8090/v2/wallets/7991322ed68894d0f1fb645a74576c3780ab312c -H 'Content-Type: application/json' -H 'Accept: application/json'
6
-
7
- # Transfer Funds from wallet
8
- curl http://localhost:8090/v2/wallets/7991322ed68894d0f1fb645a74576c3780ab312c/transactions -H 'Content-Type: application/json' -H 'Accept: application/json' -d @./faucet/faucet-send-funds.json
9
-
10
- # Track Transaction
11
- curl http://localhost:8090/v2/wallets/7991322ed68894d0f1fb645a74576c3780ab312c/transactions/927e2e95d78ef331b3b67f0d8f24123e5356972f0589202a725eda690349afa1 -H 'Content-Type: application/json' -H 'Accept: application/json'
12
-
@@ -1,45 +0,0 @@
1
- [{
2
- "id": "addr_test1qqen0wpmhg7fhkus45lyv4wju26cecgu6avplrnm6dgvuk6qel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqh5gd4e",
3
- "state": "unused",
4
- "derivation_path": ["1852H", "1815H", "0H", "0", "0"]
5
- }, {
6
- "id": "addr_test1qqmer3kgnlthg8k4gm9aljmmyfln47cgh2rf8aje5y79eazqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqxzvaqz",
7
- "state": "unused",
8
- "derivation_path": ["1852H", "1815H", "0H", "0", "1"]
9
- }, {
10
- "id": "addr_test1qpxc7yqpqegw7f4pqf9m63ake95k2q9dfqlzhmwkwuell0jqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pq5f4xje",
11
- "state": "unused",
12
- "derivation_path": ["1852H", "1815H", "0H", "0", "2"]
13
- }, {
14
- "id": "addr_test1qpc3gp8ysrapwtax6hdav4s268meg8h8cu8609luzk74xqjqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pq8svsgq",
15
- "state": "unused",
16
- "derivation_path": ["1852H", "1815H", "0H", "0", "3"]
17
- }, {
18
- "id": "addr_test1qqk84jm7tll463syq0gln0q3z4c7rq2mlcwn47uwk22qs4zqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqlpe473",
19
- "state": "unused",
20
- "derivation_path": ["1852H", "1815H", "0H", "0", "4"]
21
- }, {
22
- "id": "addr_test1qphcpmtp2kj78mcu78ezjqnawxzp29yvnh8mdd9ywvw7h56qel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pq4nwldc",
23
- "state": "unused",
24
- "derivation_path": ["1852H", "1815H", "0H", "0", "5"]
25
- }, {
26
- "id": "addr_test1qp3v6hunrj5aj2j78lepl003wttye5znphynx6epmg8m3r6qel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqjejcv4",
27
- "state": "unused",
28
- "derivation_path": ["1852H", "1815H", "0H", "0", "6"]
29
- }, {
30
- "id": "addr_test1qzfawep8h3vls60qudr7zeuhjhv2mrg5sjj5r0yyrs4thr6qel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqqdmtyh",
31
- "state": "unused",
32
- "derivation_path": ["1852H", "1815H", "0H", "0", "7"]
33
- }, {
34
- "id": "addr_test1qzknu4uqjss6sda2jpt9pne95u2mhg82vtfeq4xdxk9jah2qel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqfv2ftn",
35
- "state": "unused",
36
- "derivation_path": ["1852H", "1815H", "0H", "0", "8"]
37
- }, {
38
- "id": "addr_test1qpx986ct0jrqdhs924s5qsk629vuzw7mpadmwke7hsk3z5zqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqmhx5xw",
39
- "state": "unused",
40
- "derivation_path": ["1852H", "1815H", "0H", "0", "9"]
41
- }, {
42
- "id": "addr_test1qrlmds0rl093pg2ywtqr4p5hjagm40a397r8whalwqmw4czqel5hu3u3q0fht53ly97yx95hkt56j37ch07pesf6s4pqz45ud0",
43
- "state": "unused",
44
- "derivation_path": ["1852H", "1815H", "0H", "0", "10"]
45
- }]
@@ -1,6 +0,0 @@
1
- {
2
- "name": "Faucet",
3
- "mnemonic_sentence": ["fire", "method", "repair", "aware", "foot", "tray", "accuse", "brother", "popular", "olive", "find", "account", "sick", "rocket", "next"],
4
- "passphrase": "passphrase",
5
- "address_pool_gap": 20
6
- }
@@ -1,23 +0,0 @@
1
- {
2
- "passphrase": "passphrase",
3
- "payments": [{
4
- "address": "addr_test1vrgylrse49du60jdy7h46mg5mwft6kw8r0l4v5pklkj324cm247gf",
5
- "amount": {
6
- "quantity": 42000000,
7
- "unit": "lovelace"
8
- },
9
- "assets": []
10
- }],
11
- "withdrawal": "self",
12
- "metadata": {
13
- "0": {},
14
- "1": {},
15
- "2": {},
16
- "3": {},
17
- "4": {}
18
- },
19
- "time_to_live": {
20
- "quantity": 10,
21
- "unit": "second"
22
- }
23
- }
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -euo pipefail
4
-
5
- here="$(cd "$(dirname "$0")" >/dev/null 2>&1 && pwd)"
6
- root="$(cd "$here/.." && pwd)"
7
-
8
- cd "$root"
9
-
10
- export PATH=$PWD/bin:$PATH
11
-
12
- WALLET_ID="7991322ed68894d0f1fb645a74576c3780ab312c"
13
- PORT=8090
14
- FAUCET_WALLET='{"name": "Faucet", "mnemonic_sentence": ["fire", "method", "repair", "aware", "foot", "tray", "accuse", "brother", "popular", "olive", "find", "account", "sick", "rocket", "next"], "passphrase": "passphrase", "address_pool_gap": 20 }'
15
-
16
- # Add Faucet wallet
17
- curl -s http://localhost:"$PORT"/v2/wallets -H 'Content-Type: application/json' -H 'Accept: application/json' -d "$FAUCET_WALLET" > /dev/null
18
-
19
- # Get wallet status
20
- status=$(curl -s http://localhost:"$PORT"/v2/wallets/"$WALLET_ID" -H 'Content-Type: application/json' -H 'Accept: application/json' | jq .state.status)
21
- epoch=$(curl -s http://localhost:"$PORT"/v2/wallets/"$WALLET_ID" -H 'Content-Type: application/json' -H 'Accept: application/json' | jq .tip.epoch_number)
22
- totalBalance=$(curl -s http://localhost:"$PORT"/v2/wallets/"$WALLET_ID" -H 'Content-Type: application/json' -H 'Accept: application/json' | jq .balance.total.quantity)
23
-
24
- if [[ "$status" == "\"ready\"" && $epoch -gt 4 && $totalBalance -gt 100000000 ]]; then # Faucet will be marked unhealthy if 100 or less tADA remains in the faucet wallet (initial balance is 13.5 billion tADA)
25
- exit 0
26
- fi
27
-
28
- exit 9
29
-
@@ -1,2 +0,0 @@
1
- export * from './types';
2
- export * from './providers/cardanoWalletFaucetProvider';