gn-provider 1.1.3 → 1.1.4

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.
@@ -10,8 +10,8 @@ export declare class GNProvider extends Provider {
10
10
  private _network;
11
11
  private _isConnected;
12
12
  private _apiKey;
13
+ private apiPrefix;
13
14
  private _getHeaders;
14
- get apiPrefix(): string;
15
15
  connect: () => Promise<this>;
16
16
  getFeePerKb: () => Promise<number>;
17
17
  constructor(network: scryptlib.bsv.Networks.Network, apiKey?: string);
@@ -57,21 +57,25 @@ var ProviderEvent;
57
57
  ProviderEvent["NetworkChange"] = "networkChange";
58
58
  })(ProviderEvent || (ProviderEvent = {}));
59
59
  class GNProvider extends abstract_provider_1.Provider {
60
- get apiPrefix() {
61
- const networkStr = this._network.name === scryptlib.bsv.Networks.mainnet.name ? 'main' : 'test';
62
- return `https://api.whatsonchain.com/v1/bsv/${networkStr}`;
63
- }
64
60
  constructor(network, apiKey = '') {
65
61
  super();
66
62
  this._isConnected = false;
67
63
  this._getHeaders = () => {
68
64
  return Object.assign({ 'Content-Type': 'application/json' }, (this._apiKey ? { 'woc-api-key': this._apiKey } : {}));
69
65
  };
66
+ /*get apiPrefix(): string {
67
+ const networkStr = this._network.name === scryptlib.bsv.Networks.mainnet.name ? 'main' : 'test';
68
+ return `https://api.whatsonchain.com/v1/bsv/${networkStr}`;
69
+ }*/
70
+ /*apiPrefix = (): string => {
71
+ const networkStr = this._network.name === scryptlib.bsv.Networks.mainnet.name ? 'main' : 'test';
72
+ return `https://api.whatsonchain.com/v1/bsv/${networkStr}`;
73
+ }*/
70
74
  this.connect = () => __awaiter(this, void 0, void 0, function* () {
71
75
  var _a;
72
76
  try {
73
77
  const headers = this._getHeaders();
74
- const res = yield superagent.get(`${this.apiPrefix}/woc`)
78
+ const res = yield superagent.get(`${this.apiPrefix()}/woc`) //`${this.apiPrefix}/woc`)
75
79
  .timeout(3000)
76
80
  .set(headers);
77
81
  if (res.ok && res.text === "Whats On Chain") {
@@ -94,7 +98,7 @@ class GNProvider extends abstract_provider_1.Provider {
94
98
  try {
95
99
  const now = Math.floor(Date.now() / 1000);
96
100
  const from = now - 1800; // 30 minutos atrás
97
- const res = yield superagent.get(`${this.apiPrefix}/miner/fees?from=${from}&to=${now}`)
101
+ const res = yield superagent.get(`${this.apiPrefix()}/miner/fees?from=${from}&to=${now}`)
98
102
  .set(headers);
99
103
  if (res.body && Array.isArray(res.body) && res.body.length > 0) {
100
104
  const totalFeeRate = res.body.reduce((sum, minerData) => {
@@ -159,7 +163,7 @@ class GNProvider extends abstract_provider_1.Provider {
159
163
  const size = Math.max(1, rawTxHex.length / 2 / 1024); // Tamaño en KB
160
164
  const timeout = Math.max(10000, 1000 * size); // Timeout dinámico
161
165
  try {
162
- const res = yield superagent.post(`${this.apiPrefix}/tx/raw`)
166
+ const res = yield superagent.post(`${this.apiPrefix()}/tx/raw`)
163
167
  .timeout({
164
168
  response: timeout,
165
169
  deadline: 60000
@@ -182,7 +186,7 @@ class GNProvider extends abstract_provider_1.Provider {
182
186
  this.listUnspent = (address, options) => __awaiter(this, void 0, void 0, function* () {
183
187
  yield this._ready();
184
188
  const headers = this._getHeaders();
185
- const res = yield superagent.get(`${this.apiPrefix}/address/${address}/unspent`)
189
+ const res = yield superagent.get(`${this.apiPrefix()}/address/${address}/unspent`)
186
190
  .set(headers);
187
191
  const utxos = res.body.map((item) => ({
188
192
  txId: item.tx_hash,
@@ -196,7 +200,7 @@ class GNProvider extends abstract_provider_1.Provider {
196
200
  this.getBalance = (address) => __awaiter(this, void 0, void 0, function* () {
197
201
  try {
198
202
  const headers = this._getHeaders();
199
- const res = yield superagent.get(`${this.apiPrefix}/address/${address}/balance`)
203
+ const res = yield superagent.get(`${this.apiPrefix()}/address/${address}/balance`)
200
204
  .set(headers);
201
205
  return {
202
206
  confirmed: res.body.confirmed || 0,
@@ -217,7 +221,7 @@ class GNProvider extends abstract_provider_1.Provider {
217
221
  yield this._ready();
218
222
  const headers = this._getHeaders();
219
223
  try {
220
- const res = yield superagent.get(`${this.apiPrefix}/tx/${txHash}/hex`)
224
+ const res = yield superagent.get(`${this.apiPrefix()}/tx/${txHash}/hex`)
221
225
  .set(headers);
222
226
  if (res.ok) {
223
227
  return new scryptlib.bsv.Transaction(res.text);
@@ -232,6 +236,10 @@ class GNProvider extends abstract_provider_1.Provider {
232
236
  this._network = network;
233
237
  this._apiKey = apiKey;
234
238
  this._isConnected = false;
239
+ this.apiPrefix = () => {
240
+ const networkStr = this._network.name === scryptlib.bsv.Networks.mainnet.name ? 'main' : 'test';
241
+ return `https://api.whatsonchain.com/v1/bsv/${networkStr}`;
242
+ };
235
243
  // Configura EventEmitter
236
244
  Object.setPrototypeOf(this, events_1.EventEmitter.prototype);
237
245
  // Conexión directa
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gn-provider",
3
- "version": "1.1.3",
3
+ "version": "1.1.4",
4
4
  "files": [
5
5
  "dist",
6
6
  "scripts",