@gardenfi/react-hooks 0.0.1-beta.110 → 0.0.1-beta.111

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.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index2.cjs"),r=require("./index3.cjs"),o=require("./index4.cjs"),t=require("@catalogfi/wallets");exports.GardenProvider=e.GardenProvider;exports.useGarden=e.useGarden;exports.useOrderbook=r.useOrderbook;exports.useSecretManager=o.useSecretManager;Object.defineProperty(exports,"BitcoinNetwork",{enumerable:!0,get:()=>t.BitcoinNetwork});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index2.cjs"),n=require("./index3.cjs"),o=require("./index4.cjs"),t=require("@catalogfi/wallets"),r=require("./index5.cjs");exports.GardenProvider=e.GardenProvider;exports.useGarden=e.useGarden;exports.useOrderbook=n.useOrderbook;exports.useSecretManager=o.useSecretManager;Object.defineProperty(exports,"BitcoinNetwork",{enumerable:!0,get:()=>t.BitcoinNetwork});exports.GARDEN_CONFIG=r.GARDEN_CONFIG;exports.environment=r.environment;
package/dist/index.js CHANGED
@@ -1,11 +1,14 @@
1
1
  import { GardenProvider as o, useGarden as t } from "./index2.js";
2
- import { useOrderbook as d } from "./index3.js";
3
- import { useSecretManager as m } from "./index4.js";
4
- import { BitcoinNetwork as p } from "@catalogfi/wallets";
2
+ import { useOrderbook as m } from "./index3.js";
3
+ import { useSecretManager as p } from "./index4.js";
4
+ import { BitcoinNetwork as a } from "@catalogfi/wallets";
5
+ import { GARDEN_CONFIG as i, environment as G } from "./index5.js";
5
6
  export {
6
- p as BitcoinNetwork,
7
+ a as BitcoinNetwork,
8
+ i as GARDEN_CONFIG,
7
9
  o as GardenProvider,
10
+ G as environment,
8
11
  t as useGarden,
9
- d as useOrderbook,
10
- m as useSecretManager
12
+ m as useOrderbook,
13
+ p as useSecretManager
11
14
  };
package/dist/index2.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),Q=require("wagmi"),I=require("./index4.cjs"),j=require("./index3.cjs"),u=require("@gardenfi/core"),t=require("@catalogfi/utils"),F=require("@gardenfi/orderbook"),O=require("@catalogfi/wallets"),N=require("@gardenfi/utils"),T=require("./index5.cjs"),_=require("./index6.cjs"),P=n.createContext({isExecuting:!1}),V=({children:h,config:i})=>{const[l,W]=n.useState(),[c,U]=n.useState(),[a,x]=n.useState(),[g,y]=n.useState(),z=n.useMemo(()=>!!(l&&c&&a&&g),[l,c,a,g]),{orderBookUrl:d,quoteUrl:M,bitcoinRPCUrl:q,blockNumberFetcherUrl:C}=n.useMemo(()=>{const e=_.getConfigForNetwork(i.environment);return{orderBookUrl:i.orderBookUrl||e.orderBookUrl,quoteUrl:i.quoteUrl||e.quoteUrl,bitcoinRPCUrl:i.bitcoinRPCUrl||e.bitcoinRPCUrl,blockNumberFetcherUrl:i.blockNumberFetcherUrl||e.blockNumberFetcherUrl}},[i]),v=n.useMemo(()=>new u.Quote(M),[M]),E=n.useMemo(()=>C&&i.environment?new u.BlockNumberFetcher(C,i.environment):void 0,[C,i.environment]),p=n.useMemo(()=>new O.BitcoinProvider(_.getBitcoinNetwork(i.environment),q),[i.environment,q]),{data:s}=Q.useWalletClient(),{initializeSecretManager:G}=I.useSecretManager(W),{orderbook:k}=j.useOrderbook(d,a,y,E),B=async()=>{if(!s||!a)return t.Err("WalletClient or auth not initialized");const e=await G();if(e.error)return t.Err(e.error);const o=O.BitcoinWallet.fromPrivateKey(e.val.getMasterPrivKey(),p),r=new u.Garden({orderbookURl:d,secretManager:e.val,quote:v,auth:a,wallets:{evmWallet:s,btcWallet:o},blockNumberFetcher:E});return U(r),t.Ok(r)},A=async e=>{if(!k||!s||!a)return t.Err("Orderbook or walletClient or auth not initialized");let o=c;if(!l||!o){const R=await B();if(R.error)return t.Err(R.error);o=R.val}const r=await o.swap(e);if(r.error)return t.Err(r.error);if(F.isBitcoin(r.val.source_swap.chain))return t.Ok(r.val);const w=await u.switchOrAddNetwork(e.fromAsset.chain,s);if(w.error)return t.Err("Failed to switch network: "+w.error);const S=w.val.walletClient,b=await new u.EvmRelay(r.val,d,a).init(S);if(b.error)return t.Err(b.error);const m={...r.val,source_swap:{...r.val.source_swap,initiate_tx_hash:b.val}};return t.Ok(m)},K=async e=>{if(!s||!a)return t.Err("Orderbook or walletClient or auth not initialized");if(F.isBitcoin(e.source_swap.chain))return t.Err("Not an EVM order: sourceSwap.chain is Bitcoin");let o=c;if(!l||!o){const m=await B();if(m.error)return t.Err(m.error);o=m.val}const r=await u.switchOrAddNetwork(e.source_swap.chain,s);if(r.error)return t.Err("Failed to switch network: "+r.error);const w=r.val.walletClient,f=await new u.EvmRelay(e,d,a).init(w);if(f.error)return t.Err(f.error);const b={...e,source_swap:{...e.source_swap,initiate_tx_hash:f.val}};return t.Ok(b)},$=n.useMemo(()=>async({fromAsset:e,toAsset:o,amount:r,isExactOut:w=!1})=>await v.getQuote(T.constructOrderpair(e,o),r,w),[v]);return n.useEffect(()=>{if(!s||!window)return;const e=new N.Siwe(new N.Url(d),s,{store:i.store,domain:window.location.hostname});x(e)},[s]),n.useEffect(()=>{if(!l||!s||!k||!a)return;const e=O.BitcoinWallet.fromPrivateKey(l.getMasterPrivKey(),p),o=new u.Garden({orderbookURl:d,secretManager:l,quote:v,auth:a,wallets:{evmWallet:s,btcWallet:e},blockNumberFetcher:E});U(o)},[l,s,k,a]),n.useEffect(()=>{if(!c)return;const e=c.execute(),o=r=>y(r);return c.on("onPendingOrdersChanged",o),()=>{(async()=>(await e)())(),c.off("onPendingOrdersChanged",o)}},[c]),n.createElement(P.Provider,{value:{orderBookUrl:d,initializeSecretManager:G,orderBook:k,swapAndInitiate:A,pendingOrders:g,getQuote:$,secretManager:l,garden:c,isExecuting:z,evmInitiate:K,quote:v}},h)},D=()=>{const h=n.useContext(P);if(!h)throw new Error("useGarden must be used within a GardenProvider");return h};exports.GardenContext=P;exports.GardenProvider=V;exports.useGarden=D;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),Q=require("wagmi"),I=require("./index4.cjs"),j=require("./index3.cjs"),u=require("@gardenfi/core"),t=require("@catalogfi/utils"),F=require("@gardenfi/orderbook"),O=require("@catalogfi/wallets"),N=require("@gardenfi/utils"),T=require("./index6.cjs"),_=require("./index5.cjs"),P=n.createContext({isExecuting:!1}),V=({children:h,config:i})=>{const[l,W]=n.useState(),[c,U]=n.useState(),[a,x]=n.useState(),[g,y]=n.useState(),z=n.useMemo(()=>!!(l&&c&&a&&g),[l,c,a,g]),{orderBookUrl:d,quoteUrl:M,bitcoinRPCUrl:q,blockNumberFetcherUrl:C}=n.useMemo(()=>{const e=_.getConfigForNetwork(i.environment);return{orderBookUrl:i.orderBookUrl||e.orderBookUrl,quoteUrl:i.quoteUrl||e.quoteUrl,bitcoinRPCUrl:i.bitcoinRPCUrl||e.bitcoinRPCUrl,blockNumberFetcherUrl:i.blockNumberFetcherUrl||e.blockNumberFetcherUrl}},[i]),v=n.useMemo(()=>new u.Quote(M),[M]),E=n.useMemo(()=>C&&i.environment?new u.BlockNumberFetcher(C,i.environment):void 0,[C,i.environment]),p=n.useMemo(()=>new O.BitcoinProvider(_.getBitcoinNetwork(i.environment),q),[i.environment,q]),{data:s}=Q.useWalletClient(),{initializeSecretManager:G}=I.useSecretManager(W),{orderbook:k}=j.useOrderbook(d,a,y,E),B=async()=>{if(!s||!a)return t.Err("WalletClient or auth not initialized");const e=await G();if(e.error)return t.Err(e.error);const o=O.BitcoinWallet.fromPrivateKey(e.val.getMasterPrivKey(),p),r=new u.Garden({orderbookURl:d,secretManager:e.val,quote:v,auth:a,wallets:{evmWallet:s,btcWallet:o},blockNumberFetcher:E});return U(r),t.Ok(r)},A=async e=>{if(!k||!s||!a)return t.Err("Orderbook or walletClient or auth not initialized");let o=c;if(!l||!o){const R=await B();if(R.error)return t.Err(R.error);o=R.val}const r=await o.swap(e);if(r.error)return t.Err(r.error);if(F.isBitcoin(r.val.source_swap.chain))return t.Ok(r.val);const w=await u.switchOrAddNetwork(e.fromAsset.chain,s);if(w.error)return t.Err("Failed to switch network: "+w.error);const S=w.val.walletClient,b=await new u.EvmRelay(r.val,d,a).init(S);if(b.error)return t.Err(b.error);const m={...r.val,source_swap:{...r.val.source_swap,initiate_tx_hash:b.val}};return t.Ok(m)},K=async e=>{if(!s||!a)return t.Err("Orderbook or walletClient or auth not initialized");if(F.isBitcoin(e.source_swap.chain))return t.Err("Not an EVM order: sourceSwap.chain is Bitcoin");let o=c;if(!l||!o){const m=await B();if(m.error)return t.Err(m.error);o=m.val}const r=await u.switchOrAddNetwork(e.source_swap.chain,s);if(r.error)return t.Err("Failed to switch network: "+r.error);const w=r.val.walletClient,f=await new u.EvmRelay(e,d,a).init(w);if(f.error)return t.Err(f.error);const b={...e,source_swap:{...e.source_swap,initiate_tx_hash:f.val}};return t.Ok(b)},$=n.useMemo(()=>async({fromAsset:e,toAsset:o,amount:r,isExactOut:w=!1})=>await v.getQuote(T.constructOrderpair(e,o),r,w),[v]);return n.useEffect(()=>{if(!s||!window)return;const e=new N.Siwe(new N.Url(d),s,{store:i.store,domain:window.location.hostname});x(e)},[s]),n.useEffect(()=>{if(!l||!s||!k||!a)return;const e=O.BitcoinWallet.fromPrivateKey(l.getMasterPrivKey(),p),o=new u.Garden({orderbookURl:d,secretManager:l,quote:v,auth:a,wallets:{evmWallet:s,btcWallet:e},blockNumberFetcher:E});U(o)},[l,s,k,a]),n.useEffect(()=>{if(!c)return;const e=c.execute(),o=r=>y(r);return c.on("onPendingOrdersChanged",o),()=>{(async()=>(await e)())(),c.off("onPendingOrdersChanged",o)}},[c]),n.createElement(P.Provider,{value:{orderBookUrl:d,initializeSecretManager:G,orderBook:k,swapAndInitiate:A,pendingOrders:g,getQuote:$,secretManager:l,garden:c,isExecuting:z,evmInitiate:K,quote:v}},h)},D=()=>{const h=n.useContext(P);if(!h)throw new Error("useGarden must be used within a GardenProvider");return h};exports.GardenContext=P;exports.GardenProvider=V;exports.useGarden=D;
package/dist/index2.js CHANGED
@@ -7,8 +7,8 @@ import { Err as a, Ok as k } from "@catalogfi/utils";
7
7
  import { isBitcoin as S } from "@gardenfi/orderbook";
8
8
  import { BitcoinProvider as Z, BitcoinWallet as q } from "@catalogfi/wallets";
9
9
  import { Siwe as $, Url as ee } from "@gardenfi/utils";
10
- import { constructOrderpair as re } from "./index5.js";
11
- import { getConfigForNetwork as te, getBitcoinNetwork as ne } from "./index6.js";
10
+ import { constructOrderpair as re } from "./index6.js";
11
+ import { getConfigForNetwork as te, getBitcoinNetwork as ne } from "./index5.js";
12
12
  const A = H({
13
13
  isExecuting: !1
14
14
  }), he = ({
package/dist/index5.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=(r,c)=>`${r.chain}:${r.atomicSwapAddress}::${c.chain}:${c.atomicSwapAddress}`;exports.constructOrderpair=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@catalogfi/wallets");var n=(t=>(t.mainnet="mainnet",t.testnet="testnet",t))(n||{});const o={testnet:{orderBookUrl:"https://evm-swapper-relay.onrender.com",quoteUrl:"https://quote-knrp.onrender.com",bitcoinRPCUrl:"https://mempool.space/testnet4/api",blockNumberFetcherUrl:"https://prod-mainnet-virtual-balance-pr-5.onrender.com"}},i=t=>{const e=o[t];if(!e)throw new Error(`Configuration for network ${t} not found`);return e},c=t=>{switch(t){case"mainnet":return r.BitcoinNetwork.Mainnet;case"testnet":return r.BitcoinNetwork.Testnet;default:throw new Error(`Invalid bitcoin network ${t}`)}};exports.GARDEN_CONFIG=o;exports.environment=n;exports.getBitcoinNetwork=c;exports.getConfigForNetwork=i;
package/dist/index5.js CHANGED
@@ -1,4 +1,30 @@
1
- const r = (a, c) => `${a.chain}:${a.atomicSwapAddress}::${c.chain}:${c.atomicSwapAddress}`;
1
+ import { BitcoinNetwork as r } from "@catalogfi/wallets";
2
+ var n = /* @__PURE__ */ ((t) => (t.mainnet = "mainnet", t.testnet = "testnet", t))(n || {});
3
+ const o = {
4
+ testnet: {
5
+ orderBookUrl: "https://evm-swapper-relay.onrender.com",
6
+ quoteUrl: "https://quote-knrp.onrender.com",
7
+ bitcoinRPCUrl: "https://mempool.space/testnet4/api",
8
+ blockNumberFetcherUrl: "https://prod-mainnet-virtual-balance-pr-5.onrender.com"
9
+ }
10
+ }, c = (t) => {
11
+ const e = o[t];
12
+ if (!e)
13
+ throw new Error(`Configuration for network ${t} not found`);
14
+ return e;
15
+ }, s = (t) => {
16
+ switch (t) {
17
+ case "mainnet":
18
+ return r.Mainnet;
19
+ case "testnet":
20
+ return r.Testnet;
21
+ default:
22
+ throw new Error(`Invalid bitcoin network ${t}`);
23
+ }
24
+ };
2
25
  export {
3
- r as constructOrderpair
26
+ o as GARDEN_CONFIG,
27
+ n as environment,
28
+ s as getBitcoinNetwork,
29
+ c as getConfigForNetwork
4
30
  };
package/dist/index6.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@catalogfi/wallets"),r={testnet:{orderBookUrl:"https://evm-swapper-relay.onrender.com",quoteUrl:"https://quote-knrp.onrender.com",bitcoinRPCUrl:"https://mempool.space/testnet4/api",blockNumberFetcherUrl:"https://prod-mainnet-virtual-balance-pr-5.onrender.com"}},n=t=>{const e=r[t];if(!e)throw new Error(`Configuration for network ${t} not found`);return e},i=t=>{switch(t){case"mainnet":return o.BitcoinNetwork.Mainnet;case"testnet":return o.BitcoinNetwork.Testnet;default:throw new Error(`Invalid bitcoin network ${t}`)}};exports.GARDEN_CONFIG=r;exports.getBitcoinNetwork=i;exports.getConfigForNetwork=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=(r,c)=>`${r.chain}:${r.atomicSwapAddress}::${c.chain}:${c.atomicSwapAddress}`;exports.constructOrderpair=a;
package/dist/index6.js CHANGED
@@ -1,28 +1,4 @@
1
- import { BitcoinNetwork as r } from "@catalogfi/wallets";
2
- const o = {
3
- testnet: {
4
- orderBookUrl: "https://evm-swapper-relay.onrender.com",
5
- quoteUrl: "https://quote-knrp.onrender.com",
6
- bitcoinRPCUrl: "https://mempool.space/testnet4/api",
7
- blockNumberFetcherUrl: "https://prod-mainnet-virtual-balance-pr-5.onrender.com"
8
- }
9
- }, i = (t) => {
10
- const e = o[t];
11
- if (!e)
12
- throw new Error(`Configuration for network ${t} not found`);
13
- return e;
14
- }, c = (t) => {
15
- switch (t) {
16
- case "mainnet":
17
- return r.Mainnet;
18
- case "testnet":
19
- return r.Testnet;
20
- default:
21
- throw new Error(`Invalid bitcoin network ${t}`);
22
- }
23
- };
1
+ const r = (a, c) => `${a.chain}:${a.atomicSwapAddress}::${c.chain}:${c.atomicSwapAddress}`;
24
2
  export {
25
- o as GARDEN_CONFIG,
26
- c as getBitcoinNetwork,
27
- i as getConfigForNetwork
3
+ r as constructOrderpair
28
4
  };
@@ -2,3 +2,4 @@ export { GardenProvider, useGarden } from './lib/context/GardenProvider';
2
2
  export { useOrderbook } from './lib/hooks/useOrderbook';
3
3
  export { useSecretManager } from './lib/hooks/useSecretManager';
4
4
  export { BitcoinNetwork } from '@catalogfi/wallets';
5
+ export { environment, GARDEN_CONFIG } from './lib/gardenConfig';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gardenfi/react-hooks",
3
- "version": "0.0.1-beta.110",
3
+ "version": "0.0.1-beta.111",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",