@omnisat/lasereyes 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -85,6 +85,7 @@ __export(src_exports, {
85
85
  P2WPKH: () => P2WPKH,
86
86
  P2WSH: () => P2WSH,
87
87
  PHANTOM: () => PHANTOM,
88
+ REGTEST: () => REGTEST,
88
89
  TESTNET: () => TESTNET,
89
90
  UNISAT: () => UNISAT,
90
91
  UNISAT_MAINNET: () => UNISAT_MAINNET,
@@ -120,6 +121,7 @@ var LEATHER_MAINNET = "mainnet";
120
121
  var LEATHER_TESTNET = "testnet";
121
122
  var MAINNET = "mainnet";
122
123
  var TESTNET = "testnet";
124
+ var REGTEST = "regtest";
123
125
  var getXverseNetwork = (network) => {
124
126
  if (network === MAINNET)
125
127
  return XVERSE_MAINNET;
@@ -205,16 +207,40 @@ var createConfig = (config) => {
205
207
 
206
208
  // src/providers/LaserEyesProvider.tsx
207
209
  var import_react = require("react");
208
- var bitcoin = __toESM(require("bitcoinjs-lib"));
210
+ var bitcoin2 = __toESM(require("bitcoinjs-lib"));
209
211
  var import_sats_connect = require("sats-connect");
210
212
 
211
213
  // src/consts/settings.ts
212
214
  var LOCAL_STORAGE_DEFAULT_WALLET = "defaultWallet";
213
- var NETWORK = TESTNET;
215
+ var NETWORK = MAINNET;
214
216
 
215
217
  // src/providers/LaserEyesProvider.tsx
216
218
  var import_address = require("bitcoinjs-lib/src/address");
217
219
  var import_usehooks_ts = require("usehooks-ts");
220
+
221
+ // src/lib/helpers.ts
222
+ var bitcoin = __toESM(require("bitcoinjs-lib"));
223
+ var getBitcoinNetwork = (network) => {
224
+ if (network === "testnet") {
225
+ return bitcoin.networks.testnet;
226
+ } else if (network === "regtest") {
227
+ return bitcoin.networks.regtest;
228
+ } else {
229
+ return bitcoin.networks.bitcoin;
230
+ }
231
+ };
232
+ var findOrdinalsAddress = (addresses) => {
233
+ return addresses.find(
234
+ ({ purpose }) => purpose === "ordinals"
235
+ );
236
+ };
237
+ var findPaymentAddress = (addresses) => {
238
+ return addresses.find(
239
+ ({ purpose }) => purpose === "payment"
240
+ );
241
+ };
242
+
243
+ // src/providers/LaserEyesProvider.tsx
218
244
  var import_jsx_runtime = require("react/jsx-runtime");
219
245
  var initialWalletContext = {
220
246
  hasOyl: false,
@@ -224,29 +250,18 @@ var initialWalletContext = {
224
250
  connected: false,
225
251
  isConnecting: false,
226
252
  publicKey: "",
227
- // Empty string as the public key is unknown
228
253
  address: "",
229
- // Empty string as the address is unknown
230
254
  paymentAddress: "",
231
- // Empty string as the address is unknown
232
255
  paymentPublicKey: "",
233
256
  balance: {
234
257
  confirmed: 0,
235
- // Initial confirmed balance is zero
236
258
  unconfirmed: 0,
237
- // Initial unconfirmed balance is zero
238
259
  total: 0
239
- // Initial total balance is zero
240
260
  },
241
- network: "",
242
- // Empty string as the network is unknown
261
+ network: MAINNET,
243
262
  library: null,
244
- // Initial library is null, assuming it will be an object once initialized
245
263
  provider: null,
246
- // Initial provider is null, assuming it will be an object once initialized
247
264
  accounts: [],
248
- // Initially, there are no accounts
249
- // Placeholder functions for wallet operations. These should be replaced with actual implementations.
250
265
  connect: (walletName) => __async(void 0, null, function* () {
251
266
  }),
252
267
  disconnect: () => {
@@ -255,10 +270,9 @@ var initialWalletContext = {
255
270
  return [];
256
271
  }),
257
272
  getNetwork: () => __async(void 0, null, function* () {
258
- return "";
273
+ return MAINNET;
259
274
  }),
260
275
  switchNetwork: (network) => __async(void 0, null, function* () {
261
- return "";
262
276
  }),
263
277
  getPublicKey: () => __async(void 0, null, function* () {
264
278
  return "";
@@ -266,35 +280,32 @@ var initialWalletContext = {
266
280
  getBalance: () => __async(void 0, null, function* () {
267
281
  return "";
268
282
  }),
269
- getInscriptions: () => __async(void 0, null, function* () {
270
- }),
271
- getAllBRC20Tokens: () => __async(void 0, null, function* () {
272
- }),
273
283
  sendBTC: (to, amount) => __async(void 0, null, function* () {
274
284
  return "";
275
285
  }),
276
- payInscribe: () => __async(void 0, null, function* () {
277
- }),
278
- deploy: () => __async(void 0, null, function* () {
279
- }),
280
- mint: () => __async(void 0, null, function* () {
281
- }),
282
286
  signMessage: (message) => __async(void 0, null, function* () {
283
287
  return "";
284
288
  }),
285
289
  signPsbt: (tx) => __async(void 0, null, function* () {
286
- return "";
290
+ return {
291
+ signedPsbtHex: "",
292
+ signedPsbtBase64: "",
293
+ txId: ""
294
+ };
287
295
  }),
288
296
  pushPsbt: (tx) => __async(void 0, null, function* () {
289
297
  return "";
290
298
  })
291
- // signPsbts: async () => { /* Implementation */ },
292
299
  };
293
300
  var LaserEyesContext = (0, import_react.createContext)(initialWalletContext);
294
301
  var useLaserEyes = () => {
295
302
  return (0, import_react.useContext)(LaserEyesContext);
296
303
  };
297
- var LaserEyesProvider = ({ children }) => {
304
+ var LaserEyesProvider = ({
305
+ children,
306
+ config
307
+ }) => {
308
+ var _a;
298
309
  const [connected, setConnected] = (0, import_react.useState)(false);
299
310
  const [isConnecting, setIsConnecting] = (0, import_react.useState)(false);
300
311
  const [accounts, setAccounts] = (0, import_react.useState)([]);
@@ -307,13 +318,20 @@ var LaserEyesProvider = ({ children }) => {
307
318
  unconfirmed: 0,
308
319
  total: 0
309
320
  });
310
- const [network, setNetwork] = (0, import_usehooks_ts.useLocalStorage)("network", NETWORK);
321
+ const [network, setNetwork] = (0, import_usehooks_ts.useLocalStorage)("network", (_a = config.network) != null ? _a : NETWORK);
311
322
  const [library, setLibrary] = (0, import_react.useState)(null);
312
323
  const [provider, setProvider] = (0, import_react.useState)("");
313
324
  const [hasOyl, setHasOyl] = (0, import_react.useState)(false);
314
325
  const [hasUnisat, setHasUnisat] = (0, import_react.useState)(false);
315
326
  const [hasXverse, setHasXverse] = (0, import_react.useState)(false);
316
327
  const [hasLeather, setHasLeather] = (0, import_react.useState)(false);
328
+ (0, import_react.useEffect)(() => {
329
+ if (config) {
330
+ setNetwork(config.network);
331
+ } else {
332
+ setNetwork(MAINNET);
333
+ }
334
+ }, [config]);
317
335
  (0, import_react.useEffect)(() => {
318
336
  const oylLib = window == null ? void 0 : window.oyl;
319
337
  setHasOyl(!!oylLib);
@@ -323,8 +341,8 @@ var LaserEyesProvider = ({ children }) => {
323
341
  setHasUnisat(!!unisatLib);
324
342
  }, []);
325
343
  (0, import_react.useEffect)(() => {
326
- var _a;
327
- const xverseLib = (_a = window == null ? void 0 : window.XverseProviders) == null ? void 0 : _a.BitcoinProvider;
344
+ var _a2;
345
+ const xverseLib = (_a2 = window == null ? void 0 : window.XverseProviders) == null ? void 0 : _a2.BitcoinProvider;
328
346
  setHasXverse(!!xverseLib);
329
347
  }, []);
330
348
  (0, import_react.useEffect)(() => {
@@ -348,7 +366,7 @@ var LaserEyesProvider = ({ children }) => {
348
366
  handleAccountsChanged(result);
349
367
  setConnected(true);
350
368
  } catch (error) {
351
- new Error("Can't lasereyes to wallet");
369
+ throw new Error(`Can't lasereyes to ${OYL} wallet`);
352
370
  }
353
371
  });
354
372
  const connectUnisat = () => __async(void 0, null, function* () {
@@ -368,7 +386,7 @@ var LaserEyesProvider = ({ children }) => {
368
386
  setNetwork(foundNetwork);
369
387
  });
370
388
  } catch (error) {
371
- new Error("Can't lasereyes to wallet");
389
+ throw new Error(`Can't lasereyes to ${UNISAT} wallet`);
372
390
  }
373
391
  });
374
392
  const connectXverse = () => __async(void 0, null, function* () {
@@ -399,7 +417,7 @@ var LaserEyesProvider = ({ children }) => {
399
417
  yield (0, import_sats_connect.getAddress)(getAddressOptions);
400
418
  setConnected(true);
401
419
  } catch (error) {
402
- new Error(`Can't lasereyes to ${XVERSE} wallet`);
420
+ throw new Error(`Can't lasereyes to ${XVERSE} wallet`);
403
421
  }
404
422
  });
405
423
  const connectLeather = () => __async(void 0, null, function* () {
@@ -436,7 +454,7 @@ var LaserEyesProvider = ({ children }) => {
436
454
  });
437
455
  setConnected(true);
438
456
  } catch (error) {
439
- new Error(`Can't lasereyes to ${LEATHER} wallet`);
457
+ throw new Error(`Can't lasereyes to ${LEATHER} wallet`);
440
458
  }
441
459
  });
442
460
  const handleAccountsChanged = (_accounts) => {
@@ -490,12 +508,12 @@ var LaserEyesProvider = ({ children }) => {
490
508
  }
491
509
  });
492
510
  const handleNetworkChanged = (network2) => {
493
- let foundNetwork = "";
511
+ let foundNetwork = MAINNET;
494
512
  if (provider === UNISAT) {
495
513
  foundNetwork = getNetworkForUnisat(network2);
496
514
  }
497
515
  if (provider === XVERSE) {
498
- foundNetwork = getXverseNetwork(network2);
516
+ foundNetwork = getNetworkForXverse(network2);
499
517
  }
500
518
  if (provider === LEATHER) {
501
519
  foundNetwork = getLeatherNetwork(network2);
@@ -503,21 +521,12 @@ var LaserEyesProvider = ({ children }) => {
503
521
  setNetwork(foundNetwork);
504
522
  getBasicInfo();
505
523
  };
506
- const findOrdinalsAddress = (addresses) => {
507
- return addresses.find(
508
- ({ purpose }) => purpose === "ordinals"
509
- );
510
- };
511
- const findPaymentAddress = (addresses) => {
512
- return addresses.find(
513
- ({ purpose }) => purpose === "payment"
514
- );
515
- };
516
524
  const connect = (walletName) => __async(void 0, null, function* () {
525
+ console.log("connecting");
517
526
  setIsConnecting(true);
518
527
  try {
519
528
  if (!walletName)
520
- new Error("No wallet provided");
529
+ throw new Error("No wallet provided");
521
530
  if (walletName === OYL) {
522
531
  yield connectOyl();
523
532
  } else if (walletName === UNISAT) {
@@ -527,13 +536,13 @@ var LaserEyesProvider = ({ children }) => {
527
536
  } else if (walletName === LEATHER) {
528
537
  yield connectLeather();
529
538
  } else {
530
- new Error("Wallet not found!");
539
+ throw new Error("Wallet not found!");
531
540
  }
532
541
  setConnected(true);
533
542
  } catch (error) {
534
- console.error("error", error);
543
+ setIsConnecting(false);
535
544
  disconnect();
536
- new Error("Can't lasereyes to wallet");
545
+ throw new Error("Can't lasereyes to wallet");
537
546
  } finally {
538
547
  setIsConnecting(false);
539
548
  }
@@ -547,69 +556,39 @@ var LaserEyesProvider = ({ children }) => {
547
556
  localStorage == null ? void 0 : localStorage.removeItem(LOCAL_STORAGE_DEFAULT_WALLET);
548
557
  };
549
558
  const requestAccounts = () => __async(void 0, null, function* () {
550
- if (!library)
551
- return;
552
- if (provider === OYL) {
553
- return yield library.requestAccounts();
554
- } else if (provider === UNISAT) {
555
- return yield library.requestAccounts();
556
- } else if (provider === XVERSE) {
557
- const getAddressOptions = {
558
- payload: {
559
- // @ts-ignore
560
- purposes: ["ordinals", "payment"],
561
- message: "Address for receiving Ordinals and payments",
562
- network: {
563
- type: XVERSE_NETWORK
559
+ try {
560
+ if (!library)
561
+ return;
562
+ if (provider === OYL) {
563
+ return yield library.requestAccounts();
564
+ } else if (provider === UNISAT) {
565
+ return yield library.requestAccounts();
566
+ } else if (provider === XVERSE) {
567
+ const getAddressOptions = {
568
+ payload: {
569
+ // @ts-ignore
570
+ purposes: ["ordinals", "payment"],
571
+ message: "Address for receiving Ordinals and payments",
572
+ network: {
573
+ type: XVERSE_NETWORK
574
+ }
575
+ },
576
+ onFinish: (response) => __async(void 0, null, function* () {
577
+ const foundAddress = findOrdinalsAddress(response.addresses);
578
+ setAddress(foundAddress.address);
579
+ const foundPaymentAddress = findPaymentAddress(response.addresses);
580
+ setPaymentAddress(foundPaymentAddress);
581
+ setPublicKey(String(response.addresses[0].publicKey));
582
+ setPaymentPublicKey(String(response.addresses[1].publicKey));
583
+ }),
584
+ onCancel: () => {
585
+ throw new Error("User cancelled");
564
586
  }
565
- },
566
- onFinish: (response) => __async(void 0, null, function* () {
567
- const foundAddress = findOrdinalsAddress(response.addresses);
568
- setAddress(foundAddress.address);
569
- const foundPaymentAddress = findPaymentAddress(response.addresses);
570
- setPaymentAddress(foundPaymentAddress);
571
- setPublicKey(String(response.addresses[0].publicKey));
572
- setPaymentPublicKey(String(response.addresses[1].publicKey));
573
- }),
574
- onCancel: () => {
575
- console.log("CANCELLED");
576
- }
577
- };
578
- return [address];
579
- } else if (provider === LEATHER) {
580
- localStorage == null ? void 0 : localStorage.setItem(LOCAL_STORAGE_DEFAULT_WALLET, LEATHER);
581
- const lib = window.LeatherProvider;
582
- const getAddressesResponse = yield lib.request(
583
- "getAddresses"
584
- );
585
- const addressesResponse = getAddressesResponse.result;
586
- const addresses = addressesResponse.addresses;
587
- const leatherAccountsParsed = addresses.map(
588
- (address2) => address2.address
589
- );
590
- const taprootAddress = addresses.find(
591
- (address2) => address2.type === P2TR
592
- );
593
- const segwitAddress = addresses.find(
594
- (address2) => address2.type === P2WPKH
595
- );
596
- setAccounts(leatherAccountsParsed);
597
- setAddress(String(taprootAddress == null ? void 0 : taprootAddress.address));
598
- setPaymentAddress(String(segwitAddress == null ? void 0 : segwitAddress.address));
599
- setLibrary(lib);
600
- setProvider(LEATHER);
601
- handleAccountsChanged(leatherAccountsParsed);
602
- setConnected(true);
603
- yield getNetwork().then((network2) => {
604
- if (!network2) {
605
- setNetwork(MAINNET);
606
- } else {
607
- setNetwork(network2);
608
- }
609
- });
610
- setConnected(true);
611
- } else {
612
- console.log("NO WALLET CONNECTED");
587
+ };
588
+ return [address];
589
+ }
590
+ } catch (error) {
591
+ throw error;
613
592
  }
614
593
  });
615
594
  const getNetwork = () => __async(void 0, null, function* () {
@@ -617,25 +596,19 @@ var LaserEyesProvider = ({ children }) => {
617
596
  if (!library)
618
597
  return;
619
598
  if (provider === OYL) {
620
- new Error("Not implemented");
599
+ throw new Error("Not implemented");
621
600
  } else if (provider === UNISAT) {
622
601
  const unisatNetwork = yield library == null ? void 0 : library.getNetwork();
623
602
  const foundNetwork = getNetworkForUnisat(unisatNetwork);
624
603
  setNetwork(foundNetwork);
625
604
  return foundNetwork;
626
605
  } else if (provider === XVERSE) {
627
- if (address.slice(0, 1) === "t") {
628
- return TESTNET;
629
- }
630
- return MAINNET;
606
+ throw new Error("Not implemented");
631
607
  } else if (provider === LEATHER) {
632
- if (address.slice(0, 1) === "t") {
633
- return TESTNET;
634
- }
635
- return MAINNET;
608
+ throw new Error("Not implemented");
636
609
  }
637
610
  } catch (error) {
638
- console.error("error", error);
611
+ throw error;
639
612
  }
640
613
  });
641
614
  const switchNetwork = (network2) => __async(void 0, null, function* () {
@@ -643,18 +616,16 @@ var LaserEyesProvider = ({ children }) => {
643
616
  if (!library)
644
617
  return;
645
618
  if (provider === OYL) {
646
- new Error("Not implemented");
619
+ throw new Error("Not implemented");
647
620
  } else if (provider === UNISAT) {
648
621
  const wantedNetwork = getUnisatNetwork(network2);
649
622
  yield library == null ? void 0 : library.switchNetwork(wantedNetwork);
650
623
  setNetwork(network2);
651
624
  } else if (provider === XVERSE) {
652
- return NETWORK;
653
- } else if (provider === LEATHER) {
654
- return NETWORK;
625
+ throw new Error("Not implemented");
655
626
  }
656
627
  } catch (error) {
657
- console.error("error", error);
628
+ throw error;
658
629
  }
659
630
  });
660
631
  const getPublicKey = () => __async(void 0, null, function* () {
@@ -666,12 +637,13 @@ var LaserEyesProvider = ({ children }) => {
666
637
  } else if (provider === UNISAT) {
667
638
  return yield library == null ? void 0 : library.getPublicKey();
668
639
  } else if (provider === XVERSE) {
669
- new Error("Not implemented");
640
+ throw new Error("Not implemented");
670
641
  } else if (provider === LEATHER) {
671
- new Error("Not implemented");
642
+ throw new Error("Not implemented");
672
643
  }
673
644
  } catch (error) {
674
645
  console.error("error", error);
646
+ throw error;
675
647
  }
676
648
  });
677
649
  const getBalance = () => __async(void 0, null, function* () {
@@ -683,12 +655,10 @@ var LaserEyesProvider = ({ children }) => {
683
655
  } else if (provider === UNISAT) {
684
656
  return yield library.getBalance();
685
657
  } else if (provider === XVERSE) {
686
- new Error("Not implemented");
687
- } else if (provider === LEATHER) {
688
- new Error("Not implemented");
658
+ throw new Error("Not implemented");
689
659
  }
690
660
  } catch (error) {
691
- console.error("error", error);
661
+ throw error;
692
662
  }
693
663
  });
694
664
  const getInscriptions = () => __async(void 0, null, function* () {
@@ -700,29 +670,12 @@ var LaserEyesProvider = ({ children }) => {
700
670
  } else if (provider === UNISAT) {
701
671
  return yield library.getInscriptions(0, 10);
702
672
  } else if (provider === XVERSE) {
703
- new Error("Not implemented");
673
+ throw new Error("Not implemented");
704
674
  } else if (provider === LEATHER) {
705
- new Error("Not implemented");
675
+ throw new Error("Not implemented");
706
676
  }
707
677
  } catch (error) {
708
- console.error("error", error);
709
- }
710
- });
711
- const getAllBRC20Tokens = () => __async(void 0, null, function* () {
712
- try {
713
- if (!library)
714
- return;
715
- if (provider === OYL) {
716
- new Error("Not implemented");
717
- } else if (provider === UNISAT) {
718
- new Error("Not implemented");
719
- } else if (provider === XVERSE) {
720
- new Error("Not implemented");
721
- } else if (provider === LEATHER) {
722
- new Error("Not implemented");
723
- }
724
- } catch (error) {
725
- console.error("error", error);
678
+ throw error;
726
679
  }
727
680
  });
728
681
  const sendBTC = (to, amount) => __async(void 0, null, function* () {
@@ -743,75 +696,20 @@ var LaserEyesProvider = ({ children }) => {
743
696
  console.error("error", error);
744
697
  }
745
698
  });
746
- const payInscribe = () => __async(void 0, null, function* () {
747
- try {
748
- if (!library)
749
- return;
750
- if (provider === OYL) {
751
- new Error("Not implemented");
752
- } else if (provider === UNISAT) {
753
- new Error("Not implemented");
754
- } else if (provider === XVERSE) {
755
- new Error("Not implemented");
756
- } else if (provider === LEATHER) {
757
- new Error("Not implemented");
758
- }
759
- } catch (error) {
760
- console.error("error", error);
761
- }
762
- });
763
- const deploy = () => __async(void 0, null, function* () {
764
- try {
765
- if (!library)
766
- return;
767
- if (provider === OYL) {
768
- new Error("Not implemented");
769
- } else if (provider === UNISAT) {
770
- new Error("Not implemented");
771
- } else if (provider === XVERSE) {
772
- new Error("Not implemented");
773
- } else if (provider === LEATHER) {
774
- new Error("Not implemented");
775
- }
776
- } catch (error) {
777
- console.error("error", error);
778
- }
779
- });
780
- const mint = () => __async(void 0, null, function* () {
781
- try {
782
- if (!library)
783
- return;
784
- if (provider === OYL) {
785
- new Error("Not implemented");
786
- } else if (provider === UNISAT) {
787
- new Error("Not implemented");
788
- } else if (provider === XVERSE) {
789
- new Error("Not implemented");
790
- } else if (provider === LEATHER) {
791
- new Error("Not implemented");
792
- }
793
- } catch (error) {
794
- console.error("error", error);
795
- }
796
- });
797
699
  const signMessage = (message) => __async(void 0, null, function* () {
798
700
  try {
799
701
  if (!library)
800
702
  return;
801
703
  if (provider === OYL) {
802
- new Error("Not implemented");
704
+ throw new Error("Not implemented");
803
705
  } else if (provider === UNISAT) {
804
706
  return yield library == null ? void 0 : library.signMessage(message);
805
707
  } else if (provider === XVERSE) {
806
- new Error("Not implemented");
807
- } else if (provider === LEATHER) {
808
- return yield library == null ? void 0 : library.request("signMessage", {
809
- message,
810
- paymentType: P2TR
811
- });
708
+ throw new Error("Not implemented");
812
709
  }
813
710
  } catch (error) {
814
- console.error("error", error);
711
+ console.error(error);
712
+ throw error;
815
713
  }
816
714
  });
817
715
  const signPsbt = (psbt, finalize = false, broadcast = true) => __async(void 0, null, function* () {
@@ -822,12 +720,17 @@ var LaserEyesProvider = ({ children }) => {
822
720
  const response = yield library == null ? void 0 : library.signPsbt(psbt);
823
721
  return response;
824
722
  } else if (provider === UNISAT) {
825
- return yield library == null ? void 0 : library.signPsbt(psbt, {
723
+ const txHex = yield library == null ? void 0 : library.signPsbt(psbt, {
826
724
  autoFinalized: finalize
827
725
  });
726
+ const signedPsbt = bitcoin2.Psbt.fromHex(txHex);
727
+ return {
728
+ signedPsbtHex: signedPsbt.toHex(),
729
+ signedPsbtBase64: signedPsbt.toBase64()
730
+ };
828
731
  } else if (provider === XVERSE) {
829
- const toSignPsbt = bitcoin.Psbt.fromBase64(String(psbt), {
830
- network: bitcoin.networks.testnet
732
+ const toSignPsbt = bitcoin2.Psbt.fromBase64(String(psbt), {
733
+ network: getBitcoinNetwork(network)
831
734
  });
832
735
  const inputs = toSignPsbt.data.inputs;
833
736
  const inputsToSign = [];
@@ -846,7 +749,7 @@ var LaserEyesProvider = ({ children }) => {
846
749
  const { script } = input.witnessUtxo;
847
750
  const addressFromScript = (0, import_address.fromOutputScript)(
848
751
  script,
849
- bitcoin.networks.testnet
752
+ getBitcoinNetwork(network)
850
753
  );
851
754
  if (addressFromScript === paymentAddress) {
852
755
  paymentsAddressData.signingIndexes.push(Number(counter));
@@ -872,6 +775,7 @@ var LaserEyesProvider = ({ children }) => {
872
775
  inputsToSign.push(paymentsAddressData);
873
776
  }
874
777
  let txId = "";
778
+ let signedPsbtHex, signedPsbtBase64;
875
779
  const xverseNetwork = getXverseNetwork(network);
876
780
  const signPsbtOptions = {
877
781
  payload: {
@@ -887,39 +791,28 @@ var LaserEyesProvider = ({ children }) => {
887
791
  if (response.txId) {
888
792
  txId = response.txId;
889
793
  } else if (response.psbtBase64) {
890
- const signedPsbt = bitcoin.Psbt.fromBase64(
794
+ const signedPsbt = bitcoin2.Psbt.fromBase64(
891
795
  String(response.psbtBase64),
892
796
  {
893
- network: bitcoin.networks.testnet
797
+ network: getBitcoinNetwork(network)
894
798
  }
895
799
  );
896
- txId = signedPsbt.toHex();
800
+ signedPsbtHex = signedPsbt.toHex();
801
+ signedPsbtBase64 = signedPsbt.toBase64();
897
802
  }
898
803
  },
899
804
  onCancel: () => console.log("Canceled")
900
805
  };
901
806
  yield (0, import_sats_connect.signTransaction)(signPsbtOptions);
902
- return txId;
903
- } else if (provider === LEATHER) {
904
- const requestParams = { hex: psbt, broadcast };
905
- const response = yield library == null ? void 0 : library.request(
906
- "signPsbt",
907
- requestParams
908
- );
909
- const leatherHexResult = response.result;
910
- const signedTx = leatherHexResult.hex;
911
- if (!broadcast) {
912
- return signedTx;
913
- }
914
- const toSignPsbt = bitcoin.Psbt.fromHex(String(signedTx), {
915
- network: bitcoin.networks.testnet
916
- });
917
- toSignPsbt.finalizeAllInputs();
918
- const txId = toSignPsbt.extractTransaction().getId();
919
- return txId;
807
+ return {
808
+ signedPsbtHex,
809
+ signedPsbtBase64,
810
+ txId
811
+ };
920
812
  }
921
813
  } catch (error2) {
922
814
  console.error("error", error2);
815
+ throw error2;
923
816
  }
924
817
  });
925
818
  const pushPsbt = (psbt, finalize = false) => __async(void 0, null, function* () {
@@ -956,41 +849,41 @@ var LaserEyesProvider = ({ children }) => {
956
849
  console.error("error", error);
957
850
  }
958
851
  });
959
- const contextValue = {
960
- library,
961
- accounts,
962
- publicKey,
963
- address,
964
- paymentAddress,
965
- paymentPublicKey,
966
- provider,
967
- balance,
968
- network,
969
- connected,
970
- isConnecting,
971
- hasOyl,
972
- hasUnisat,
973
- hasXverse,
974
- hasLeather,
975
- //
976
- connect,
977
- disconnect,
978
- requestAccounts,
979
- getNetwork,
980
- switchNetwork,
981
- getPublicKey,
982
- getBalance,
983
- getInscriptions,
984
- getAllBRC20Tokens,
985
- sendBTC,
986
- signPsbt,
987
- pushPsbt,
988
- payInscribe,
989
- deploy,
990
- mint,
991
- signMessage
992
- };
993
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(LaserEyesContext.Provider, { value: contextValue, children });
852
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
853
+ LaserEyesContext.Provider,
854
+ {
855
+ value: {
856
+ library,
857
+ accounts,
858
+ publicKey,
859
+ address,
860
+ paymentAddress,
861
+ paymentPublicKey,
862
+ provider,
863
+ balance,
864
+ network,
865
+ connected,
866
+ isConnecting,
867
+ hasOyl,
868
+ hasUnisat,
869
+ hasXverse,
870
+ hasLeather,
871
+ // functions
872
+ connect,
873
+ disconnect,
874
+ requestAccounts,
875
+ getNetwork,
876
+ switchNetwork,
877
+ getPublicKey,
878
+ getBalance,
879
+ sendBTC,
880
+ signPsbt,
881
+ pushPsbt,
882
+ signMessage
883
+ },
884
+ children
885
+ }
886
+ );
994
887
  };
995
888
  // Annotate the CommonJS export names for ESM import in node:
996
889
  0 && (module.exports = {
@@ -1006,6 +899,7 @@ var LaserEyesProvider = ({ children }) => {
1006
899
  P2WPKH,
1007
900
  P2WSH,
1008
901
  PHANTOM,
902
+ REGTEST,
1009
903
  TESTNET,
1010
904
  UNISAT,
1011
905
  UNISAT_MAINNET,