@gardenfi/react-hooks 0.0.1-beta.122 → 0.0.1-beta.124

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/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"),P=require("@catalogfi/wallets"),N=require("@gardenfi/utils"),H=require("./index6.cjs"),_=require("./index5.cjs"),O=n.createContext({isExecuting:!1}),T=({children:h,config:a})=>{const[l,W]=n.useState(),[c,U]=n.useState(),[i,x]=n.useState(),[f,y]=n.useState(),z=n.useMemo(()=>!!(l&&c&&i&&f),[l,c,i,f]),{orderBookUrl:d,quoteUrl:M,bitcoinRPCUrl:q,blockNumberFetcherUrl:C}=n.useMemo(()=>{const e=_.getConfigForNetwork(a.environment);return{orderBookUrl:a.orderBookUrl||e.orderBookUrl,quoteUrl:a.quoteUrl||e.quoteUrl,bitcoinRPCUrl:a.bitcoinRPCUrl||e.bitcoinRPCUrl,blockNumberFetcherUrl:a.blockNumberFetcherUrl||e.blockNumberFetcherUrl}},[a]),v=n.useMemo(()=>new u.Quote(M),[M]),E=n.useMemo(()=>C&&a.environment?new u.BlockNumberFetcher(C,a.environment):void 0,[C,a.environment]),p=n.useMemo(()=>new P.BitcoinProvider(_.getBitcoinNetwork(a.environment),q),[a.environment,q]);u.testForReactHooks();const{data:s}=Q.useWalletClient(),{initializeSecretManager:G}=I.useSecretManager(W),{orderbook:k}=j.useOrderbook(d,i,y,E),B=async()=>{if(!s||!i)return t.Err("WalletClient or auth not initialized");const e=await G();if(e.error)return t.Err(e.error);const o=P.BitcoinWallet.fromPrivateKey(e.val.getMasterPrivKey(),p),r=new u.Garden({orderbookURl:d,secretManager:e.val,quote:v,auth:i,wallets:{evmWallet:s,btcWallet:o},blockNumberFetcher:E});return U(r),t.Ok(r)},A=async e=>{if(console.log("swap params from gardenProvider",e),!k||!s||!i)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,m=await new u.EvmRelay(r.val,d,i).init(S);if(m.error)return t.Err(m.error);const b={...r.val,source_swap:{...r.val.source_swap,initiate_tx_hash:m.val}};return t.Ok(b)},K=async e=>{if(!s||!i)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 b=await B();if(b.error)return t.Err(b.error);o=b.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,g=await new u.EvmRelay(e,d,i).init(w);if(g.error)return t.Err(g.error);const m={...e,source_swap:{...e.source_swap,initiate_tx_hash:g.val}};return t.Ok(m)},$=n.useMemo(()=>async({fromAsset:e,toAsset:o,amount:r,isExactOut:w=!1})=>await v.getQuote(H.constructOrderpair(e,o),r,w),[v]);return n.useEffect(()=>{if(!s||!window)return;const e=new N.Siwe(new N.Url(d),s,{store:a.store,domain:window.location.hostname});x(e)},[s]),n.useEffect(()=>{if(!l||!s||!k||!i)return;const e=P.BitcoinWallet.fromPrivateKey(l.getMasterPrivKey(),p),o=new u.Garden({orderbookURl:d,secretManager:l,quote:v,auth:i,wallets:{evmWallet:s,btcWallet:e},blockNumberFetcher:E});U(o)},[l,s,k,i]),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(O.Provider,{value:{orderBookUrl:d,initializeSecretManager:G,orderBook:k,swapAndInitiate:A,pendingOrders:f,getQuote:$,secretManager:l,garden:c,isExecuting:z,evmInitiate:K,quote:v}},h)},V=()=>{const h=n.useContext(O);if(!h)throw new Error("useGarden must be used within a GardenProvider");return h};exports.GardenContext=O;exports.GardenProvider=T;exports.useGarden=V;
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"),R=require("@catalogfi/wallets"),N=require("@gardenfi/utils"),T=require("./index6.cjs"),_=require("./index5.cjs"),O=n.createContext({isExecuting:!1}),V=({children:h,config:i})=>{const[l,W]=n.useState(),[c,U]=n.useState(),[a,x]=n.useState(),[f,y]=n.useState(),z=n.useMemo(()=>!!(l&&c&&a&&f),[l,c,a,f]),{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 R.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=R.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(console.log("swap params from gardenProvider",e),!k||!s||!a)return t.Err("Orderbook or walletClient or auth not initialized");let o=c;if(!l||!o){const P=await B();if(P.error)return t.Err(P.error);o=P.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,m=await new u.EvmRelay(r.val,d,a).init(S);if(m.error)return t.Err(m.error);const b={...r.val,source_swap:{...r.val.source_swap,initiate_tx_hash:m.val}};return t.Ok(b)},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 b=await B();if(b.error)return t.Err(b.error);o=b.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,g=await new u.EvmRelay(e,d,a).init(w);if(g.error)return t.Err(g.error);const m={...e,source_swap:{...e.source_swap,initiate_tx_hash:g.val}};return t.Ok(m)},$=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=R.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(O.Provider,{value:{orderBookUrl:d,initializeSecretManager:G,orderBook:k,swapAndInitiate:A,pendingOrders:f,getQuote:$,secretManager:l,garden:c,isExecuting:z,evmInitiate:K,quote:v}},h)},D=()=>{const h=n.useContext(O);if(!h)throw new Error("useGarden must be used within a GardenProvider");return h};exports.GardenContext=O;exports.GardenProvider=V;exports.useGarden=D;
package/dist/index2.js CHANGED
@@ -1,37 +1,35 @@
1
- import z, { createContext as D, useState as p, useMemo as d, useEffect as P } from "react";
1
+ import z, { createContext as H, useState as p, useMemo as d, useEffect as P } from "react";
2
2
  import { useWalletClient as J } from "wagmi";
3
3
  import { useSecretManager as L } from "./index4.js";
4
4
  import { useOrderbook as T } from "./index3.js";
5
- import { Quote as X, BlockNumberFetcher as Y, testForReactHooks as Z, Garden as x, switchOrAddNetwork as W, EvmRelay as E } from "@gardenfi/core";
5
+ import { Quote as X, BlockNumberFetcher as Y, Garden as x, switchOrAddNetwork as W, EvmRelay as E } from "@gardenfi/core";
6
6
  import { Err as a, Ok as k } from "@catalogfi/utils";
7
7
  import { isBitcoin as S } from "@gardenfi/orderbook";
8
- import { BitcoinProvider as $, BitcoinWallet as q } from "@catalogfi/wallets";
9
- import { Siwe as ee, Url as re } from "@gardenfi/utils";
10
- import { constructOrderpair as te } from "./index6.js";
11
- import { getConfigForNetwork as ne, getBitcoinNetwork as oe } from "./index5.js";
12
- const A = D({
8
+ import { BitcoinProvider as Z, BitcoinWallet as q } from "@catalogfi/wallets";
9
+ import { Siwe as $, Url as ee } from "@gardenfi/utils";
10
+ import { constructOrderpair as re } from "./index6.js";
11
+ import { getConfigForNetwork as te, getBitcoinNetwork as ne } from "./index5.js";
12
+ const A = H({
13
13
  isExecuting: !1
14
- }), be = ({
14
+ }), he = ({
15
15
  children: h,
16
16
  config: n
17
17
  }) => {
18
18
  const [l, K] = p(), [s, y] = p(), [o, Q] = p(), [g, O] = p(), I = d(
19
19
  () => !!(l && s && o && g),
20
20
  [l, s, o, g]
21
- ), { orderBookUrl: c, quoteUrl: F, bitcoinRPCUrl: B, blockNumberFetcherUrl: C } = d(() => {
22
- const e = ne(n.environment);
21
+ ), { orderBookUrl: c, quoteUrl: B, bitcoinRPCUrl: F, blockNumberFetcherUrl: C } = d(() => {
22
+ const e = te(n.environment);
23
23
  return {
24
24
  orderBookUrl: n.orderBookUrl || e.orderBookUrl,
25
25
  quoteUrl: n.quoteUrl || e.quoteUrl,
26
26
  bitcoinRPCUrl: n.bitcoinRPCUrl || e.bitcoinRPCUrl,
27
27
  blockNumberFetcherUrl: n.blockNumberFetcherUrl || e.blockNumberFetcherUrl
28
28
  };
29
- }, [n]), w = d(() => new X(F), [F]), R = d(() => C && n.environment ? new Y(C, n.environment) : void 0, [C, n.environment]), _ = d(
30
- () => new $(oe(n.environment), B),
31
- [n.environment, B]
32
- );
33
- Z();
34
- const { data: i } = J(), { initializeSecretManager: G } = L(K), { orderbook: b } = T(
29
+ }, [n]), w = d(() => new X(B), [B]), R = d(() => C && n.environment ? new Y(C, n.environment) : void 0, [C, n.environment]), _ = d(
30
+ () => new Z(ne(n.environment), F),
31
+ [n.environment, F]
32
+ ), { data: i } = J(), { initializeSecretManager: G } = L(K), { orderbook: b } = T(
35
33
  c,
36
34
  o,
37
35
  O,
@@ -56,7 +54,7 @@ const A = D({
56
54
  blockNumberFetcher: R
57
55
  });
58
56
  return y(r), k(r);
59
- }, H = async (e) => {
57
+ }, V = async (e) => {
60
58
  if (console.log("swap params from gardenProvider", e), !b || !i || !o)
61
59
  return a("Orderbook or walletClient or auth not initialized");
62
60
  let t = s;
@@ -84,7 +82,7 @@ const A = D({
84
82
  }
85
83
  };
86
84
  return k(v);
87
- }, V = async (e) => {
85
+ }, j = async (e) => {
88
86
  if (!i || !o)
89
87
  return a("Orderbook or walletClient or auth not initialized");
90
88
  if (S(e.source_swap.chain))
@@ -111,9 +109,9 @@ const A = D({
111
109
  }
112
110
  };
113
111
  return k(m);
114
- }, j = d(
112
+ }, D = d(
115
113
  () => async ({ fromAsset: e, toAsset: t, amount: r, isExactOut: u = !1 }) => await w.getQuote(
116
- te(e, t),
114
+ re(e, t),
117
115
  r,
118
116
  u
119
117
  ),
@@ -121,7 +119,7 @@ const A = D({
121
119
  );
122
120
  return P(() => {
123
121
  if (!i || !window) return;
124
- const e = new ee(new re(c), i, {
122
+ const e = new $(new ee(c), i, {
125
123
  store: n.store,
126
124
  domain: window.location.hostname
127
125
  });
@@ -156,19 +154,19 @@ const A = D({
156
154
  orderBookUrl: c,
157
155
  initializeSecretManager: G,
158
156
  orderBook: b,
159
- swapAndInitiate: H,
157
+ swapAndInitiate: V,
160
158
  pendingOrders: g,
161
- getQuote: j,
159
+ getQuote: D,
162
160
  secretManager: l,
163
161
  garden: s,
164
162
  isExecuting: I,
165
- evmInitiate: V,
163
+ evmInitiate: j,
166
164
  quote: w
167
165
  }
168
166
  },
169
167
  h
170
168
  );
171
- }, fe = () => {
169
+ }, be = () => {
172
170
  const h = z.useContext(A);
173
171
  if (!h)
174
172
  throw new Error("useGarden must be used within a GardenProvider");
@@ -176,6 +174,6 @@ const A = D({
176
174
  };
177
175
  export {
178
176
  A as GardenContext,
179
- be as GardenProvider,
180
- fe as useGarden
177
+ he as GardenProvider,
178
+ be as useGarden
181
179
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gardenfi/react-hooks",
3
- "version": "0.0.1-beta.122",
3
+ "version": "0.0.1-beta.124",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",
@@ -28,9 +28,9 @@
28
28
  "dependencies": {
29
29
  "@catalogfi/utils": "^0.1.6",
30
30
  "@catalogfi/wallets": "^0.2.51",
31
- "@gardenfi/core": "^0.3.0-beta.1",
32
- "@gardenfi/orderbook": "^0.2.0-beta.33",
33
- "@gardenfi/utils": "^0.0.1-beta.18",
31
+ "@gardenfi/core": "^0.3.0-beta.4",
32
+ "@gardenfi/orderbook": "^0.2.0-beta.36",
33
+ "@gardenfi/utils": "^0.0.1-beta.19",
34
34
  "react": "^18.3.1",
35
35
  "viem": "^2.21.15",
36
36
  "wagmi": "^2.12.16"