@theoo/react 0.3.0 → 0.4.0

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.
@@ -1,4 +1,4 @@
1
1
  /** Hooks and the provider only: nothing that assumes a DOM. What `@theoo/react-native` builds on. */
2
2
  export { TheooProvider, useTheoo, useSession, type TheooProviderProps, type SessionState } from "./context.js";
3
- export { useBalances, useChains, useEnrolPasskey, useMoneyOrders, useName, useSwap, useOperation, useOperations, useRecovery, useSessionKeys, useSignIn, useSolanaSessionKeys, type SignInStep, } from "./hooks.js";
3
+ export { useBalances, useChains, useEnrolPasskey, useEspees, useMoneyOrders, useName, useSwap, useOperation, useOperations, useRecovery, useSessionKeys, useSignIn, useSolanaSessionKeys, type SignInStep, } from "./hooks.js";
4
4
  //# sourceMappingURL=hooks-entry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-entry.d.ts","sourceRoot":"","sources":["../src/hooks-entry.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/G,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"hooks-entry.d.ts","sourceRoot":"","sources":["../src/hooks-entry.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/G,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,EACT,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
1
  /** Hooks and the provider only: nothing that assumes a DOM. What `@theoo/react-native` builds on. */
2
2
  export { TheooProvider, useTheoo, useSession } from "./context.js";
3
- export { useBalances, useChains, useEnrolPasskey, useMoneyOrders, useName, useSwap, useOperation, useOperations, useRecovery, useSessionKeys, useSignIn, useSolanaSessionKeys, } from "./hooks.js";
3
+ export { useBalances, useChains, useEnrolPasskey, useEspees, useMoneyOrders, useName, useSwap, useOperation, useOperations, useRecovery, useSessionKeys, useSignIn, useSolanaSessionKeys, } from "./hooks.js";
4
4
  //# sourceMappingURL=hooks-entry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-entry.js","sourceRoot":"","sources":["../src/hooks-entry.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAA8C,MAAM,cAAc,CAAC;AAC/G,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GAErB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"hooks-entry.js","sourceRoot":"","sources":["../src/hooks-entry.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAA8C,MAAM,cAAc,CAAC;AAC/G,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,EACT,cAAc,EACd,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GAErB,MAAM,YAAY,CAAC"}
package/dist/hooks.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { AuthChallenge, AuthOutcome, Balances, ChainOption, ExecuteOptions, MoneyOrder, TheooError, OperationKind, OperationStatus, RecoveryStatus, SessionGrant, SessionKey, SessionRenewal, SolanaAction, SolanaSessionGrant, SolanaSessionKey, SwapQuote, SwapQuoteRequest, WaitOptions, Name } from "@theoo/sdk";
1
+ import type { AuthChallenge, AuthOutcome, Balances, ChainOption, ExecuteOptions, MoneyOrder, TheooError, OperationKind, OperationStatus, RecoveryStatus, SessionGrant, SessionKey, SessionRenewal, SolanaAction, SolanaSessionGrant, SolanaSessionKey, SwapQuote, SwapQuoteRequest, WaitOptions, Name, DeskInfo, EspeesQuote, EspeesQuoteRequest } from "@theoo/sdk";
2
2
  type Err = TheooError | Error | null;
3
3
  export { useSession, type SessionState } from "./context.js";
4
4
  export type SignInStep = {
@@ -216,6 +216,28 @@ export declare function useSwap(chain?: number): {
216
216
  confirm: () => Promise<OperationStatus | undefined>;
217
217
  reset: () => void;
218
218
  };
219
+ /**
220
+ * Buying ESPEES from the desk: `info` has its prices, `ask` gets a price held
221
+ * for a few minutes, `confirm` has the passkey pay it into the escrow. The
222
+ * desk is paid only once it delivers, and `release` or `dispute` answer a
223
+ * delivery. Nothing delivered in time comes back on its own.
224
+ */
225
+ export declare function useEspees(chain?: number): {
226
+ info: DeskInfo | null;
227
+ busy: boolean;
228
+ error: Err;
229
+ clearError: () => void;
230
+ quote: EspeesQuote | null;
231
+ status: OperationStatus | null;
232
+ secondsLeft: number;
233
+ expired: boolean;
234
+ reload: () => Promise<void>;
235
+ ask: (req: Omit<EspeesQuoteRequest, "chain">) => Promise<EspeesQuote | undefined>;
236
+ confirm: () => Promise<OperationStatus | undefined>;
237
+ release: (order: string) => Promise<OperationStatus | undefined>;
238
+ dispute: (order: string) => Promise<OperationStatus | undefined>;
239
+ reset: () => void;
240
+ };
219
241
  /** The user's Money history, newest first. */
220
242
  export declare function useMoneyOrders(limit?: number): {
221
243
  orders: MoneyOrder[] | null;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
package/dist/hooks.js CHANGED
@@ -246,6 +246,71 @@ export function useSwap(chain) {
246
246
  },
247
247
  };
248
248
  }
249
+ /**
250
+ * Buying ESPEES from the desk: `info` has its prices, `ask` gets a price held
251
+ * for a few minutes, `confirm` has the passkey pay it into the escrow. The
252
+ * desk is paid only once it delivers, and `release` or `dispute` answer a
253
+ * delivery. Nothing delivered in time comes back on its own.
254
+ */
255
+ export function useEspees(chain) {
256
+ const theoo = useTheoo();
257
+ const { busy, error, run, clearError } = useAction();
258
+ const [info, setInfo] = useState(null);
259
+ const [quote, setQuote] = useState(null);
260
+ const [status, setStatus] = useState(null);
261
+ const [now, setNow] = useState(() => Date.now());
262
+ const reload = useCallback(async () => {
263
+ try {
264
+ setInfo(await theoo.money.espees(chain));
265
+ }
266
+ catch (e) {
267
+ setInfo(null);
268
+ }
269
+ }, [theoo, chain]);
270
+ useEffect(() => {
271
+ void reload();
272
+ }, [reload]);
273
+ useEffect(() => {
274
+ if (!quote)
275
+ return;
276
+ const id = setInterval(() => setNow(Date.now()), 1000);
277
+ return () => clearInterval(id);
278
+ }, [quote]);
279
+ const secondsLeft = quote ? Math.max(0, Math.floor(quote.expiresAt - now / 1000)) : 0;
280
+ return {
281
+ info,
282
+ busy,
283
+ error,
284
+ clearError,
285
+ quote,
286
+ status,
287
+ secondsLeft,
288
+ expired: quote !== null && secondsLeft === 0,
289
+ reload,
290
+ ask: (req) => run(async () => {
291
+ setStatus(null);
292
+ const q = await theoo.me.money.quoteEspees({ ...req, chain });
293
+ setNow(Date.now());
294
+ setQuote(q);
295
+ return q;
296
+ }),
297
+ confirm: () => run(async () => {
298
+ if (!quote)
299
+ throw new Error("Ask for a price first.");
300
+ const s = await theoo.me.money.buyEspees(quote);
301
+ setQuote(null);
302
+ setStatus(s);
303
+ return s;
304
+ }),
305
+ release: (order) => run(() => theoo.me.money.releaseEspees(order, chain)),
306
+ dispute: (order) => run(() => theoo.me.money.disputeEspees(order, chain)),
307
+ reset: () => {
308
+ setQuote(null);
309
+ setStatus(null);
310
+ clearError();
311
+ },
312
+ };
313
+ }
249
314
  /** The user's Money history, newest first. */
250
315
  export function useMoneyOrders(limit = 20) {
251
316
  const theoo = useTheoo();
package/dist/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
package/dist/money.d.ts CHANGED
@@ -1,9 +1,11 @@
1
- import { type OperationStatus } from "@theoo/sdk";
1
+ import { type CashoutSender, type OperationStatus } from "@theoo/sdk";
2
2
  export interface TheooMoneyProps {
3
3
  /** The chain to swap on; the project's default when omitted. */
4
4
  chain?: number;
5
- /** Which flows to offer. Swaps today; naira in and out and ESPEES follow. */
6
- flows?: Array<"swap">;
5
+ /** Which flows to offer: swaps, and buying ESPEES from the desk. More than one shows tabs. */
6
+ flows?: Array<"swap" | "espees" | "buy" | "cashout">;
7
+ /** For cashing out: the sender's KYC, which your app holds. Without it the Cash out tab explains what's missing. */
8
+ cashoutSender?: CashoutSender;
7
9
  /** What to start with: a symbol (`USDT`) or an address. */
8
10
  defaultSell?: string;
9
11
  defaultBuy?: string;
@@ -22,5 +24,5 @@ export interface TheooMoneyProps {
22
24
  * the passkey signs is one batch that approves the exact amount, swaps, and
23
25
  * resets the approval to zero. Nothing is left behind for anyone to spend.
24
26
  */
25
- export declare function TheooMoney({ chain, flows, defaultSell, defaultBuy, onDone, explorerTx, className }: TheooMoneyProps): import("react").JSX.Element | null;
27
+ export declare function TheooMoney({ chain, flows, defaultSell, defaultBuy, onDone, explorerTx, className, cashoutSender }: TheooMoneyProps): import("react").JSX.Element;
26
28
  //# sourceMappingURL=money.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"money.d.ts","sourceRoot":"","sources":["../src/money.tsx"],"names":[],"mappings":"AACA,OAAO,EAA0D,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAO1G,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6EAA6E;IAC7E,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,+DAA+D;IAC/D,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgCD;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,KAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,eAAe,sCAyM9H"}
1
+ {"version":3,"file":"money.d.ts","sourceRoot":"","sources":["../src/money.tsx"],"names":[],"mappings":"AACA,OAAO,EAAuE,KAAK,aAAa,EAAmB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAQ5J,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC;IACrD,oHAAoH;IACpH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,+DAA+D;IAC/D,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoCD;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,KAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,eAAe,+BAgC7I"}
package/dist/money.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useEffect, useMemo, useState } from "react";
3
3
  import { formatUnits, parseUnits } from "@theoo/sdk";
4
+ import { useTheoo } from "./context.js";
4
5
  import { styles } from "./components.js";
5
- import { useBalances, useMoneyOrders, useSwap } from "./hooks.js";
6
+ import { useBalances, useEspees, useMoneyOrders, useSwap } from "./hooks.js";
6
7
  const s = styles;
7
8
  const t = styles.token;
8
9
  const card = {
@@ -32,6 +33,10 @@ const STATE_WORDS = {
32
33
  failed: "Failed",
33
34
  expired: "Expired",
34
35
  open: "Open",
36
+ awaiting_delivery: "Waiting for the desk",
37
+ delivered: "Delivered",
38
+ disputed: "Disputed",
39
+ refunded: "Refunded",
35
40
  };
36
41
  /**
37
42
  * Swaps, in the project's own page, signed with the user's passkey.
@@ -42,7 +47,12 @@ const STATE_WORDS = {
42
47
  * the passkey signs is one batch that approves the exact amount, swaps, and
43
48
  * resets the approval to zero. Nothing is left behind for anyone to spend.
44
49
  */
45
- export function TheooMoney({ chain, flows = ["swap"], defaultSell, defaultBuy, onDone, explorerTx, className }) {
50
+ export function TheooMoney({ chain, flows = ["swap"], defaultSell, defaultBuy, onDone, explorerTx, className, cashoutSender }) {
51
+ const [tab, setTab] = useState(flows[0] ?? "swap");
52
+ const names = { swap: "Swap", espees: "Buy ESPEES", buy: "Add money", cashout: "Cash out" };
53
+ return (_jsxs("div", { className: className, style: card, "data-theoo-money": "", children: [flows.length > 1 ? (_jsx("div", { role: "tablist", style: { display: "flex", gap: 6 }, children: flows.map((f) => (_jsx("button", { type: "button", role: "tab", "aria-selected": tab === f, onClick: () => setTab(f), style: { ...(tab === f ? s.button : s.secondary), padding: "6px 12px", fontSize: 13.5 }, children: names[f] }, f))) })) : null, tab === "espees" ? (_jsx(EspeesPanel, { chain: chain, onDone: onDone, explorerTx: explorerTx })) : tab === "buy" ? (_jsx(BuyPanel, { chain: chain })) : tab === "cashout" ? (_jsx(CashoutPanel, { chain: chain, sender: cashoutSender, onDone: onDone })) : (_jsx(SwapPanel, { chain: chain, defaultSell: defaultSell, defaultBuy: defaultBuy, onDone: onDone, explorerTx: explorerTx }))] }));
54
+ }
55
+ function SwapPanel({ chain, defaultSell, defaultBuy, onDone, explorerTx }) {
46
56
  const { balances, error: balanceError, reload } = useBalances(chain);
47
57
  const swap = useSwap(chain);
48
58
  const { orders, reload: reloadOrders } = useMoneyOrders(5);
@@ -51,15 +61,17 @@ export function TheooMoney({ chain, flows = ["swap"], defaultSell, defaultBuy, o
51
61
  const [buyAddr, setBuyAddr] = useState("");
52
62
  const [amount, setAmount] = useState("");
53
63
  // Pick sensible defaults once the list is known: a stablecoin to sell, another thing to buy.
64
+ // A choice that isn't on this chain's list (the chain changed) is chosen again.
54
65
  useEffect(() => {
55
- if (!list.length)
66
+ if (list.length < 2)
56
67
  return;
57
- if (!sellAddr)
58
- setSellAddr((find(list, defaultSell) ?? list.find((b) => b.token.stable) ?? list[0]).token.address);
59
- if (!buyAddr) {
60
- const sell = find(list, defaultSell)?.token.address ?? list.find((b) => b.token.stable)?.token.address;
61
- setBuyAddr((find(list, defaultBuy) ?? list.find((b) => b.token.address !== sell) ?? list[0]).token.address);
62
- }
68
+ const has = (a) => list.some((b) => b.token.address === a);
69
+ const sell = has(sellAddr) ? sellAddr : (find(list, defaultSell) ?? list.find((b) => b.token.stable) ?? list[0]).token.address;
70
+ const buy = has(buyAddr) && buyAddr !== sell ? buyAddr : (find(list, defaultBuy) ?? list.find((b) => b.token.address !== sell) ?? list[0]).token.address;
71
+ if (sell !== sellAddr)
72
+ setSellAddr(sell);
73
+ if (buy !== buyAddr)
74
+ setBuyAddr(buy);
63
75
  }, [list, sellAddr, buyAddr, defaultSell, defaultBuy]);
64
76
  const sell = list.find((b) => b.token.address === sellAddr);
65
77
  const buy = list.find((b) => b.token.address === buyAddr);
@@ -94,13 +106,15 @@ export function TheooMoney({ chain, flows = ["swap"], defaultSell, defaultBuy, o
94
106
  useEffect(() => {
95
107
  if (!swap.status)
96
108
  return;
97
- void reload();
98
109
  void reloadOrders();
99
110
  onDone?.(swap.status);
111
+ // Some endpoints answer from a block or two behind the receipt, so one
112
+ // read straight after a swap can still show the old balances. Read again
113
+ // over the next few seconds until the chain has caught up.
114
+ const timers = [0, 2000, 5000, 10000].map((ms) => setTimeout(() => void reload(), ms));
115
+ return () => timers.forEach(clearTimeout);
100
116
  // eslint-disable-next-line react-hooks/exhaustive-deps
101
117
  }, [swap.status]);
102
- if (!flows.includes("swap"))
103
- return null;
104
118
  const flip = () => {
105
119
  setSellAddr(buyAddr);
106
120
  setBuyAddr(sellAddr);
@@ -109,7 +123,194 @@ export function TheooMoney({ chain, flows = ["swap"], defaultSell, defaultBuy, o
109
123
  const q = swap.quote;
110
124
  const done = swap.status;
111
125
  const txLink = done?.txHash && explorerTx ? explorerTx(done.txHash, done.chain) : null;
112
- return (_jsxs("div", { className: className, style: card, "data-theoo-money": "", children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "baseline", gap: 8 }, children: [_jsx("strong", { style: { fontSize: 15.5, letterSpacing: "-0.01em" }, children: "Swap" }), balances ? _jsx("span", { style: s.tiny, children: "Gas is on us \u00B7 you sign with your passkey" }) : null] }), balanceError ? (_jsx("div", { style: s.error, role: "alert", children: balanceError.message })) : null, !balances && !balanceError ? _jsx("p", { style: s.muted, children: "Loading balances\u2026" }) : null, balances && list.length < 2 ? _jsx("p", { style: s.muted, children: "Swaps aren't available on this chain yet." }) : null, balances && list.length >= 2 ? (_jsxs(_Fragment, { children: [_jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between" }, children: [_jsx("label", { htmlFor: "theoo-money-amount", style: label, children: "You pay" }), sell ? (_jsxs("span", { style: s.tiny, children: ["Balance ", sell.display, " ", sell.token.symbol, " ", _jsx("button", { type: "button", style: link, onClick: () => setAmount(formatUnits(sell.amount, sell.token.decimals, sell.token.decimals)), children: "Max" })] })) : null] }), _jsxs("div", { style: row, children: [_jsx("input", { id: "theoo-money-amount", inputMode: "decimal", autoComplete: "off", placeholder: "0.00", value: amount, onChange: (e) => setAmount(e.target.value), style: { ...s.input, fontFamily: t.mono, fontSize: 17 }, "aria-invalid": parsed.problem ? true : undefined }), _jsx("select", { id: "theoo-money-sell", "aria-label": "Token to pay with", value: sellAddr, onChange: (e) => setSellAddr(e.target.value), style: select, children: list.map((b) => (_jsx("option", { value: b.token.address, disabled: b.token.address === buyAddr, children: b.token.symbol }, b.token.address))) })] }), parsed.problem ? _jsx("p", { style: { ...s.tiny, color: t.alert }, children: parsed.problem }) : null] }), _jsx("div", { style: { display: "flex", justifyContent: "center" }, children: _jsx("button", { type: "button", onClick: flip, "aria-label": "Swap direction", style: { ...s.secondary, padding: "4px 12px", fontSize: 15 }, children: "\u21C5" }) }), _jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsx("label", { htmlFor: "theoo-money-buy", style: label, children: "You get" }), _jsxs("div", { style: row, children: [_jsx("div", { style: { ...s.input, fontFamily: t.mono, fontSize: 17, color: q ? t.ink : t.ink3 }, "aria-live": "polite", children: q ? q.buy.display : "—" }), _jsx("select", { id: "theoo-money-buy", value: buyAddr, onChange: (e) => setBuyAddr(e.target.value), style: select, children: list.map((b) => (_jsx("option", { value: b.token.address, disabled: b.token.address === sellAddr, children: b.token.symbol }, b.token.address))) })] })] }), q && !swap.expired ? (_jsxs("div", { style: { display: "grid", gap: 6, padding: 12, borderRadius: t.radius, background: t.accentSoft, fontSize: 13.5, lineHeight: 1.5 }, "data-theoo-quote": "", children: [_jsx("span", { children: q.summary }), q.warning ? _jsx("span", { style: { color: t.alert }, children: q.warning }) : null, _jsxs("span", { style: s.tiny, children: ["The swap can't deliver less than ", q.minBuy.display, " ", q.minBuy.symbol, ": the chain enforces it. Quote good for ", swap.secondsLeft, "s."] })] })) : null, q && swap.expired ? _jsx("p", { style: s.muted, children: "That quote expired. Ask for a fresh one." }) : null, swap.error ? (_jsx("div", { style: s.error, role: "alert", children: swap.error.message })) : null, !q || swap.expired ? (_jsx("button", { type: "button", style: { ...s.button, opacity: !parsed.units || swap.busy ? 0.6 : 1 }, disabled: !parsed.units || swap.busy || !sell || !buy, onClick: () => sell && buy && parsed.units && swap.ask({ sellToken: sell.token.address, buyToken: buy.token.address, sellAmount: parsed.units }), children: swap.busy ? "Checking the best price…" : q ? "Get a fresh quote" : "Get a quote" })) : (_jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr auto", gap: 8 }, children: [_jsx("button", { type: "button", style: { ...s.button, opacity: swap.busy ? 0.6 : 1 }, disabled: swap.busy, onClick: () => void swap.confirm(), children: swap.busy ? "Confirming…" : "Confirm with passkey" }), _jsx("button", { type: "button", style: s.secondary, disabled: swap.busy, onClick: swap.reset, children: "Cancel" })] })), done ? (_jsxs("p", { style: { ...s.muted, color: done.state === "failed" ? t.alert : t.ink2 }, role: "status", children: [done.state === "included" ? "Swapped. " : done.state === "failed" ? `The swap failed on chain${done.error ? `: ${done.error}` : ""}. ` : "Sent; it's on its way. ", txLink ? (_jsx("a", { href: txLink, target: "_blank", rel: "noopener noreferrer", style: { color: t.accent }, children: "View transaction" })) : null] })) : null] })) : null, orders && orders.length ? _jsx(Recent, { orders: orders, explorerTx: explorerTx }) : null] }));
126
+ return (_jsxs("div", { style: { display: "grid", gap: 12 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "baseline", gap: 8 }, children: [_jsx("strong", { style: { fontSize: 15.5, letterSpacing: "-0.01em" }, children: "Swap" }), balances ? _jsx("span", { style: s.tiny, children: "Gas is on us \u00B7 you sign with your passkey" }) : null] }), balanceError ? (_jsx("div", { style: s.error, role: "alert", children: balanceError.message })) : null, !balances && !balanceError ? _jsx("p", { style: s.muted, children: "Loading balances\u2026" }) : null, balances && list.length < 2 ? _jsx("p", { style: s.muted, children: "Swaps aren't available on this chain yet." }) : null, balances && list.length >= 2 ? (_jsxs(_Fragment, { children: [_jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between" }, children: [_jsx("label", { htmlFor: "theoo-money-amount", style: label, children: "You pay" }), sell ? (_jsxs("span", { style: s.tiny, children: ["Balance ", sell.display, " ", sell.token.symbol, " ", _jsx("button", { type: "button", style: link, onClick: () => setAmount(formatUnits(sell.amount, sell.token.decimals, sell.token.decimals)), children: "Max" })] })) : null] }), _jsxs("div", { style: row, children: [_jsx("input", { id: "theoo-money-amount", inputMode: "decimal", autoComplete: "off", placeholder: "0.00", value: amount, onChange: (e) => setAmount(e.target.value), style: { ...s.input, fontFamily: t.mono, fontSize: 17 }, "aria-invalid": parsed.problem ? true : undefined }), _jsx("select", { id: "theoo-money-sell", "aria-label": "Token to pay with", value: sellAddr, onChange: (e) => setSellAddr(e.target.value), style: select, children: list.map((b) => (_jsx("option", { value: b.token.address, disabled: b.token.address === buyAddr, children: b.token.symbol }, b.token.address))) })] }), parsed.problem ? _jsx("p", { style: { ...s.tiny, color: t.alert }, children: parsed.problem }) : null] }), _jsx("div", { style: { display: "flex", justifyContent: "center" }, children: _jsx("button", { type: "button", onClick: flip, "aria-label": "Swap direction", style: { ...s.secondary, padding: "4px 12px", fontSize: 15 }, children: "\u21C5" }) }), _jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsx("label", { htmlFor: "theoo-money-buy", style: label, children: "You get" }), _jsxs("div", { style: row, children: [_jsx("div", { style: { ...s.input, fontFamily: t.mono, fontSize: 17, color: q ? t.ink : t.ink3 }, "aria-live": "polite", children: q ? q.buy.display : "—" }), _jsx("select", { id: "theoo-money-buy", value: buyAddr, onChange: (e) => setBuyAddr(e.target.value), style: select, children: list.map((b) => (_jsx("option", { value: b.token.address, disabled: b.token.address === sellAddr, children: b.token.symbol }, b.token.address))) })] })] }), q && !swap.expired ? (_jsxs("div", { style: { display: "grid", gap: 6, padding: 12, borderRadius: t.radius, background: t.accentSoft, fontSize: 13.5, lineHeight: 1.5 }, "data-theoo-quote": "", children: [_jsx("span", { children: q.summary }), q.warning ? _jsx("span", { style: { color: t.alert }, children: q.warning }) : null, _jsxs("span", { style: s.tiny, children: ["The swap can't deliver less than ", q.minBuy.display, " ", q.minBuy.symbol, ": the chain enforces it. Quote good for ", swap.secondsLeft, "s."] })] })) : null, q && swap.expired ? _jsx("p", { style: s.muted, children: "That quote expired. Ask for a fresh one." }) : null, swap.error ? (_jsx("div", { style: s.error, role: "alert", children: swap.error.message })) : null, !q || swap.expired ? (_jsx("button", { type: "button", style: { ...s.button, opacity: !parsed.units || swap.busy ? 0.6 : 1 }, disabled: !parsed.units || swap.busy || !sell || !buy, onClick: () => sell && buy && parsed.units && swap.ask({ sellToken: sell.token.address, buyToken: buy.token.address, sellAmount: parsed.units }), children: swap.busy ? "Checking the best price…" : q ? "Get a fresh quote" : "Get a quote" })) : (_jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr auto", gap: 8 }, children: [_jsx("button", { type: "button", style: { ...s.button, opacity: swap.busy ? 0.6 : 1 }, disabled: swap.busy, onClick: () => void swap.confirm(), children: swap.busy ? "Confirming…" : "Confirm with passkey" }), _jsx("button", { type: "button", style: s.secondary, disabled: swap.busy, onClick: swap.reset, children: "Cancel" })] })), done ? (_jsxs("p", { style: { ...s.muted, color: done.state === "failed" ? t.alert : t.ink2 }, role: "status", children: [done.state === "included" ? "Swapped. " : done.state === "failed" ? `The swap failed on chain${done.error ? `: ${done.error}` : ""}. ` : "Sent; it's on its way. ", txLink ? (_jsx("a", { href: txLink, target: "_blank", rel: "noopener noreferrer", style: { color: t.accent }, children: "View transaction" })) : null] })) : null] })) : null, orders && orders.length ? _jsx(Recent, { orders: orders, explorerTx: explorerTx }) : null] }));
127
+ }
128
+ const ESPEES_WORDS = {
129
+ awaiting_signature: "Waiting for your passkey.",
130
+ awaiting_delivery: "Paid into the escrow, not to the desk. The desk sends your ESPEES by hand, usually within a couple of minutes. If nothing arrives in time, your payment comes back on its own.",
131
+ delivered: "The desk says your ESPEES is sent. Did it arrive?",
132
+ disputed: "You reported a problem. The arbiter will decide between you and the desk.",
133
+ completed: "Done: the desk has been paid.",
134
+ refunded: "Refunded to your account.",
135
+ failed: "The payment failed on chain; nothing was taken.",
136
+ expired: "Not signed in time; nothing was taken.",
137
+ };
138
+ /**
139
+ * ESPEES from the desk. The payment goes into an escrow on chain, the desk
140
+ * delivers by hand to the buyer's Espees wallet, and only then is it paid.
141
+ */
142
+ function EspeesPanel({ chain, onDone, explorerTx }) {
143
+ const e = useEspees(chain);
144
+ const { balances, reload } = useBalances(chain);
145
+ const { orders, reload: reloadOrders } = useMoneyOrders(10);
146
+ const tokens = e.info?.tokens ?? [];
147
+ const [token, setToken] = useState("");
148
+ const [amount, setAmount] = useState("");
149
+ const [address, setAddress] = useState("");
150
+ const [again, setAgain] = useState("");
151
+ useEffect(() => {
152
+ if (!token && tokens.length)
153
+ setToken(tokens[0].token.address);
154
+ }, [tokens, token]);
155
+ const chosen = tokens.find((t) => t.token.address === token);
156
+ const held = balances?.balances.find((b) => b.token.address.toLowerCase() === token.toLowerCase());
157
+ const parsed = useMemo(() => {
158
+ if (!chosen || !amount.trim())
159
+ return {};
160
+ try {
161
+ const units = parseUnits(amount, chosen.token.decimals);
162
+ if (BigInt(units) === 0n)
163
+ return { problem: "Enter an amount above zero." };
164
+ if (held && BigInt(units) > BigInt(held.amount))
165
+ return { problem: `You have ${held.display} ${chosen.token.symbol}.` };
166
+ return { units };
167
+ }
168
+ catch {
169
+ return { problem: "Enter an amount like 20." };
170
+ }
171
+ }, [amount, chosen, held]);
172
+ const estimate = chosen && parsed.units
173
+ ? formatUnits((BigInt(parsed.units) * BigInt(chosen.priceE18)) / 10n ** BigInt(chosen.token.decimals), 18, 6)
174
+ : null;
175
+ const mismatch = again.trim() !== "" && address.trim() !== again.trim();
176
+ useEffect(() => {
177
+ if (e.quote)
178
+ e.reset();
179
+ // eslint-disable-next-line react-hooks/exhaustive-deps
180
+ }, [token, amount, address, again]);
181
+ useEffect(() => {
182
+ if (!e.status)
183
+ return;
184
+ void reloadOrders();
185
+ onDone?.(e.status);
186
+ const timers = [0, 2000, 5000, 10000].map((ms) => setTimeout(() => void reload(), ms));
187
+ return () => timers.forEach(clearTimeout);
188
+ // eslint-disable-next-line react-hooks/exhaustive-deps
189
+ }, [e.status]);
190
+ const latest = (orders ?? []).find((o) => o.kind === "espees_buy");
191
+ // An order in flight moves by the desk's hand and the chain's clock: keep it current.
192
+ const inFlight = !!latest && ["awaiting_signature", "awaiting_delivery", "delivered", "disputed"].includes(latest.state);
193
+ useEffect(() => {
194
+ if (!inFlight)
195
+ return;
196
+ const id = setInterval(() => void reloadOrders(), 8000);
197
+ return () => clearInterval(id);
198
+ }, [inFlight, reloadOrders]);
199
+ const answer = async (f) => {
200
+ if (!latest)
201
+ return;
202
+ await f(latest.id);
203
+ await reloadOrders();
204
+ };
205
+ if (!e.info)
206
+ return _jsx("p", { style: s.muted, children: "Loading the desk\u2026" });
207
+ if (!e.info.open)
208
+ return _jsx("p", { style: s.muted, children: "The ESPEES desk isn't selling on this chain right now." });
209
+ const q = e.quote;
210
+ const minutes = Math.round(e.info.deliverWithinSecs / 60);
211
+ return (_jsxs("div", { style: { display: "grid", gap: 12 }, "data-theoo-espees": "", children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "baseline", gap: 8 }, children: [_jsx("strong", { style: { fontSize: 15.5, letterSpacing: "-0.01em" }, children: "Buy ESPEES" }), _jsxs("span", { style: s.tiny, children: ["Delivered within ", minutes, " minutes, or your money comes back"] })] }), _jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsxs("div", { style: { display: "flex", justifyContent: "space-between" }, children: [_jsx("label", { htmlFor: "theoo-espees-amount", style: label, children: "You pay" }), held && chosen ? (_jsxs("span", { style: s.tiny, children: ["Balance ", held.display, " ", chosen.token.symbol] })) : null] }), _jsxs("div", { style: row, children: [_jsx("input", { id: "theoo-espees-amount", inputMode: "decimal", autoComplete: "off", placeholder: "0.00", value: amount, onChange: (ev) => setAmount(ev.target.value), style: { ...s.input, fontFamily: t.mono, fontSize: 17 }, "aria-invalid": parsed.problem ? true : undefined }), _jsx("select", { "aria-label": "Pay ESPEES with", value: token, onChange: (ev) => setToken(ev.target.value), style: select, children: tokens.map((d) => (_jsx("option", { value: d.token.address, children: d.token.symbol }, d.token.address))) })] }), parsed.problem ? _jsx("p", { style: { ...s.tiny, color: t.alert }, children: parsed.problem }) : null, chosen ? (_jsxs("p", { style: s.tiny, children: [estimate ? `You get about ${estimate} ESPEES · ` : "", chosen.price, " ESPEES per ", chosen.token.symbol] })) : null] }), _jsxs("div", { style: { display: "grid", gap: 6 }, children: [_jsx("label", { htmlFor: "theoo-espees-address", style: label, children: "Your Espees wallet address" }), _jsx("input", { id: "theoo-espees-address", autoComplete: "off", value: address, onChange: (ev) => setAddress(ev.target.value), style: s.input }), _jsx("label", { htmlFor: "theoo-espees-again", style: label, children: "The same address, again" }), _jsx("input", { id: "theoo-espees-again", autoComplete: "off", value: again, onChange: (ev) => setAgain(ev.target.value), style: s.input, "aria-invalid": mismatch ? true : undefined }), mismatch ? _jsx("p", { style: { ...s.tiny, color: t.alert }, children: "The two addresses don't match." }) : null] }), q && !e.expired ? (_jsxs("div", { style: { display: "grid", gap: 6, padding: 12, borderRadius: t.radius, background: t.accentSoft, fontSize: 13.5, lineHeight: 1.5 }, "data-theoo-quote": "", children: [_jsx("span", { children: q.summary }), _jsxs("span", { style: s.tiny, children: ["Price held for ", e.secondsLeft, "s."] })] })) : null, q && e.expired ? _jsx("p", { style: s.muted, children: "That price expired. Ask for a fresh one." }) : null, e.error ? (_jsx("div", { style: s.error, role: "alert", children: e.error.message })) : null, !q || e.expired ? (_jsx("button", { type: "button", style: { ...s.button, opacity: !parsed.units || e.busy ? 0.6 : 1 }, disabled: !parsed.units || e.busy || !chosen || !address.trim() || address.trim() !== again.trim(), onClick: () => chosen &&
212
+ parsed.units &&
213
+ e.ask({ payToken: chosen.token.address, payAmount: parsed.units, espeesAddress: address, espeesAddressConfirm: again }), children: e.busy ? "Asking the desk…" : q ? "Get a fresh price" : "Get a price" })) : (_jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr auto", gap: 8 }, children: [_jsx("button", { type: "button", style: { ...s.button, opacity: e.busy ? 0.6 : 1 }, disabled: e.busy, onClick: () => void e.confirm(), children: e.busy ? "Paying…" : "Pay with passkey" }), _jsx("button", { type: "button", style: s.secondary, disabled: e.busy, onClick: e.reset, children: "Cancel" })] })), latest ? (_jsxs("div", { style: { display: "grid", gap: 8, borderTop: `1px solid ${t.line}`, paddingTop: 10 }, "data-espees-order": latest.state, children: [_jsxs("span", { style: label, children: ["Your latest order: ", latest.pay ? `${latest.pay.display} ${latest.pay.symbol}` : "", " \u2192 ", latest.get ? `${latest.get.display} ESPEES` : ""] }), _jsx("span", { style: { fontSize: 13.5 }, children: ESPEES_WORDS[latest.state] ?? latest.state }), latest.state === "delivered" ? (_jsxs("div", { style: { display: "flex", gap: 8 }, children: [_jsx("button", { type: "button", style: s.button, disabled: e.busy, onClick: () => void answer(e.release), children: "It arrived" }), _jsx("button", { type: "button", style: s.secondary, disabled: e.busy, onClick: () => void answer(e.dispute), children: "Report a problem" })] })) : null, latest.txHash && explorerTx && latest.chain ? (_jsx("a", { href: explorerTx(latest.txHash, latest.chain) ?? undefined, target: "_blank", rel: "noopener noreferrer", style: { color: t.accent, fontSize: 12.5 }, children: "View the payment" })) : null] })) : null] }));
214
+ }
215
+ /** The newest order of a kind, with its state in words. */
216
+ function Latest({ order, words }) {
217
+ if (!order)
218
+ return null;
219
+ return (_jsxs("div", { style: { display: "grid", gap: 4, borderTop: `1px solid ${t.line}`, paddingTop: 10 }, "data-money-latest": order.state, children: [_jsx("span", { style: label, children: "Your latest" }), _jsx("span", { style: { fontSize: 13.5 }, children: words[order.state] ?? STATE_WORDS[order.state] ?? order.state })] }));
220
+ }
221
+ /** Buying with a card or a bank transfer, on MoonPay's own page. */
222
+ function BuyPanel({ chain }) {
223
+ const theoo = useTheoo();
224
+ const { balances } = useBalances(chain);
225
+ const { orders, reload } = useMoneyOrders(10);
226
+ const stables = (balances?.balances ?? []).filter((b) => b.token.stable);
227
+ const [token, setToken] = useState("");
228
+ const [fiat, setFiat] = useState("ngn");
229
+ const [amount, setAmount] = useState("");
230
+ const [busy, setBusy] = useState(false);
231
+ const [error, setError] = useState(null);
232
+ useEffect(() => {
233
+ if (!token && stables.length)
234
+ setToken(stables[0].token.address);
235
+ }, [stables, token]);
236
+ const go = async () => {
237
+ setBusy(true);
238
+ setError(null);
239
+ try {
240
+ const start = await theoo.me.money.buy({ chain, token, fiatCurrency: fiat, fiatAmount: amount.trim() || undefined });
241
+ window.open(start.url, "_blank", "noopener");
242
+ await reload();
243
+ }
244
+ catch (e) {
245
+ setError(e instanceof Error ? e.message : String(e));
246
+ }
247
+ finally {
248
+ setBusy(false);
249
+ }
250
+ };
251
+ return (_jsxs("div", { style: { display: "grid", gap: 12 }, "data-theoo-buy": "", children: [_jsx("strong", { style: { fontSize: 15.5, letterSpacing: "-0.01em" }, children: "Add money" }), _jsxs("div", { style: row, children: [_jsx("input", { "aria-label": "Amount to pay", inputMode: "decimal", placeholder: "20000", value: amount, onChange: (e) => setAmount(e.target.value), style: { ...s.input, fontFamily: t.mono, fontSize: 17 } }), _jsxs("select", { "aria-label": "Pay in", value: fiat, onChange: (e) => setFiat(e.target.value), style: select, children: [_jsx("option", { value: "ngn", children: "NGN" }), _jsx("option", { value: "usd", children: "USD" })] })] }), _jsx("select", { "aria-label": "Token to receive", value: token, onChange: (e) => setToken(e.target.value), style: { ...select, width: "100%" }, children: stables.map((b) => (_jsxs("option", { value: b.token.address, children: ["Receive ", b.token.symbol] }, b.token.address))) }), _jsx("p", { style: s.tiny, children: "MoonPay checks your identity and takes the payment, by card or bank transfer. The tokens arrive in this account: its address is fixed in the link, so nobody can change it." }), error ? (_jsx("div", { style: s.error, role: "alert", children: error })) : null, _jsx("button", { type: "button", style: { ...s.button, opacity: busy || !token ? 0.6 : 1 }, disabled: busy || !token, onClick: () => void go(), children: busy ? "Opening MoonPay…" : "Continue to MoonPay" }), _jsx(Latest, { order: (orders ?? []).find((o) => o.kind === "onramp"), words: { awaiting_payment: "Waiting for your payment on MoonPay.", processing: "Paid. MoonPay is sending your tokens.", completed: "Arrived in your account.", failed: "MoonPay couldn't complete it; nothing was taken from this account." } })] }));
252
+ }
253
+ /** Cashing out to a Nigerian bank account through Yellow Card. */
254
+ function CashoutPanel({ chain, sender, onDone }) {
255
+ const theoo = useTheoo();
256
+ const { balances, reload } = useBalances(chain);
257
+ const { orders, reload: reloadOrders } = useMoneyOrders(10);
258
+ const [banks, setBanks] = useState(null);
259
+ const [bank, setBank] = useState("");
260
+ const [number, setNumber] = useState("");
261
+ const [name, setName] = useState(null);
262
+ const [confirmed, setConfirmed] = useState(false);
263
+ const [token, setToken] = useState("");
264
+ const [amount, setAmount] = useState("");
265
+ const [quote, setQuote] = useState(null);
266
+ const [busy, setBusy] = useState(false);
267
+ const [error, setError] = useState(null);
268
+ const stables = (balances?.balances ?? []).filter((b) => b.token.stable);
269
+ const chosen = stables.find((b) => b.token.address === token);
270
+ useEffect(() => {
271
+ theoo.money.banks().then(setBanks, (e) => setError(e instanceof Error ? e.message : String(e)));
272
+ }, [theoo]);
273
+ useEffect(() => {
274
+ if (!token && stables.length)
275
+ setToken(stables[0].token.address);
276
+ }, [stables, token]);
277
+ useEffect(() => {
278
+ setName(null);
279
+ setConfirmed(false);
280
+ }, [bank, number]);
281
+ useEffect(() => setQuote(null), [bank, number, token, amount, confirmed]);
282
+ const act = async (f) => {
283
+ setBusy(true);
284
+ setError(null);
285
+ try {
286
+ await f();
287
+ }
288
+ catch (e) {
289
+ setError(e instanceof Error ? e.message : String(e));
290
+ }
291
+ finally {
292
+ setBusy(false);
293
+ }
294
+ };
295
+ if (!sender) {
296
+ return _jsx("p", { style: s.muted, children: "Cashing out needs the account holder's details (name, NIN and BVN), which this app hasn't supplied." });
297
+ }
298
+ let units = null;
299
+ try {
300
+ units = chosen && amount.trim() ? parseUnits(amount, chosen.token.decimals) : null;
301
+ }
302
+ catch {
303
+ units = null;
304
+ }
305
+ return (_jsxs("div", { style: { display: "grid", gap: 12 }, "data-theoo-cashout": "", children: [_jsx("strong", { style: { fontSize: 15.5, letterSpacing: "-0.01em" }, children: "Cash out to a bank" }), _jsxs("select", { "aria-label": "Bank", value: bank, onChange: (e) => setBank(e.target.value), style: { ...select, width: "100%" }, children: [_jsx("option", { value: "", children: banks ? "Choose a bank" : "Loading banks…" }), (banks ?? []).map((b) => (_jsx("option", { value: b.id, children: b.name }, b.id)))] }), _jsxs("div", { style: row, children: [_jsx("input", { "aria-label": "Account number", inputMode: "numeric", placeholder: "10 digits", value: number, onChange: (e) => setNumber(e.target.value), style: s.input }), _jsx("button", { type: "button", style: s.secondary, disabled: busy || !bank || number.trim().length !== 10, onClick: () => void act(async () => setName((await theoo.me.money.resolveAccount(bank, number)).accountName)), children: "Check" })] }), name ? (_jsxs("label", { style: { display: "flex", gap: 8, fontSize: 13.5 }, children: [_jsx("input", { type: "checkbox", checked: confirmed, onChange: (e) => setConfirmed(e.target.checked) }), "Pay ", name] })) : null, _jsxs("div", { style: row, children: [_jsx("input", { "aria-label": "Amount to cash out", inputMode: "decimal", placeholder: "0.00", value: amount, onChange: (e) => setAmount(e.target.value), style: { ...s.input, fontFamily: t.mono, fontSize: 17 } }), _jsx("select", { "aria-label": "Cash out from", value: token, onChange: (e) => setToken(e.target.value), style: select, children: stables.map((b) => (_jsx("option", { value: b.token.address, children: b.token.symbol }, b.token.address))) })] }), quote ? (_jsx("div", { style: { display: "grid", gap: 6, padding: 12, borderRadius: t.radius, background: t.accentSoft, fontSize: 13.5 }, "data-theoo-quote": "", children: quote.summary })) : null, error ? (_jsx("div", { style: s.error, role: "alert", children: error })) : null, !quote ? (_jsx("button", { type: "button", style: { ...s.button, opacity: busy ? 0.6 : 1 }, disabled: busy || !confirmed || !units || !name, onClick: () => void act(async () => {
306
+ setQuote(await theoo.me.money.quoteCashout({ chain, token, amount: units, bank, accountNumber: number.trim(), accountName: name, sender }));
307
+ }), children: busy ? "Getting a quote…" : "Get a quote" })) : (_jsx("button", { type: "button", style: { ...s.button, opacity: busy ? 0.6 : 1 }, disabled: busy, onClick: () => void act(async () => {
308
+ const status = await theoo.me.money.cashOut(quote);
309
+ setQuote(null);
310
+ onDone?.(status);
311
+ await reloadOrders();
312
+ [0, 2000, 5000].forEach((ms) => setTimeout(() => void reload(), ms));
313
+ }), children: busy ? "Sending…" : "Send with passkey" })), _jsx(Latest, { order: (orders ?? []).find((o) => o.kind === "offramp"), words: { awaiting_signature: "Waiting for your passkey.", processing: "Sent. Yellow Card is paying the bank.", completed: "Paid into the bank account.", refunded: "The payout failed; your tokens came back to this account.", failed: "The transfer failed on chain; nothing was taken." } })] }));
113
314
  }
114
315
  function Recent({ orders, explorerTx }) {
115
316
  return (_jsxs("div", { style: { display: "grid", gap: 6, borderTop: `1px solid ${t.line}`, paddingTop: 10 }, children: [_jsx("span", { style: label, children: "Recent" }), orders.map((o) => {
package/dist/money.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"money.js","sourceRoot":"","sources":["../src/money.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"money.js","sourceRoot":"","sources":["../src/money.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAsB,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAyG,MAAM,YAAY,CAAC;AAC5J,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7E,MAAM,CAAC,GAAG,MAAM,CAAC;AACjB,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;AAmBvB,MAAM,IAAI,GAAkB;IAC1B,OAAO,EAAE,MAAM;IACf,GAAG,EAAE,EAAE;IACP,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,aAAa,CAAC,CAAC,KAAK,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,MAAM;IACtB,UAAU,EAAE,CAAC,CAAC,OAAO;IACrB,UAAU,EAAE,CAAC,CAAC,IAAI;IAClB,KAAK,EAAE,CAAC,CAAC,GAAG;CACb,CAAC;AACF,MAAM,GAAG,GAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AAC9E,MAAM,KAAK,GAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AACzG,MAAM,MAAM,GAAkB,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAC5F,MAAM,IAAI,GAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE/I,SAAS,IAAI,CAAC,QAAmB,EAAE,MAA0B;IAC3D,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/B,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,WAAW,GAA2B;IAC1C,kBAAkB,EAAE,0BAA0B;IAC9C,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,MAAM;IACjB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,iBAAiB,EAAE,sBAAsB;IACzC,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAmB;IAC5I,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;IACnD,MAAM,KAAK,GAA2B,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACpH,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,sBAAmB,EAAE,aACxD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAClB,cAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,YACnD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAChB,iBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,KAAK,mBACK,GAAG,KAAK,CAAC,EACxB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,YAEtF,KAAK,CAAC,CAAC,CAAC,IAPJ,CAAC,CAQC,CACV,CAAC,GACE,CACP,CAAC,CAAC,CAAC,IAAI,EACP,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAClB,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAI,CACtE,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAClB,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,CAC3B,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CACtB,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAI,CACtE,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAI,CACtH,IACG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAgD;IACrH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC;IAEtC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEzC,6FAA6F;IAC7F,gFAAgF;IAChF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO;QAC5B,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC;QAChI,MAAM,GAAG,GACP,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC;QAChJ,IAAI,IAAI,KAAK,QAAQ;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,GAAG,KAAK,OAAO;YAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAE1D,yDAAyD;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAyC,EAAE;QAChE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE;gBAAE,OAAO,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;YAC5E,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;YAC9G,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,UAAU,GAAG,CAAC,YAAY,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1E,OAAO;gBACL,OAAO,EAAE,UAAU;oBACjB,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,gBAAgB,IAAI,CAAC,KAAK,CAAC,QAAQ,kBAAkB;oBAC3E,CAAC,CAAC,4BAA4B;aACjC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAEnB,iDAAiD;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC7B,8DAA8D;QAC9D,uDAAuD;IACzD,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,KAAK,YAAY,EAAE,CAAC;QACpB,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,uEAAuE;QACvE,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,IAAK,EAAE,IAAK,EAAE,KAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1C,uDAAuD;IACzD,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAElB,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,WAAW,CAAC,OAAO,CAAC,CAAC;QACrB,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IACrB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvF,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,aACtC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9F,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,qBAAe,EACzE,QAAQ,CAAC,CAAC,CAAC,eAAM,KAAK,EAAE,CAAC,CAAC,IAAI,+DAAkD,CAAC,CAAC,CAAC,IAAI,IACpF,EAEL,YAAY,CAAC,CAAC,CAAC,CACd,cAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAC,OAAO,YAC9B,YAAY,CAAC,OAAO,GACjB,CACP,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,uCAAuB,CAAC,CAAC,CAAC,IAAI,EAE5E,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,0DAA+C,CAAC,CAAC,CAAC,IAAI,EAErG,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAC9B,8BACE,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,aAC9D,gBAAO,OAAO,EAAC,oBAAoB,EAAC,KAAK,EAAE,KAAK,wBAExC,EACP,IAAI,CAAC,CAAC,CAAC,CACN,gBAAM,KAAK,EAAE,CAAC,CAAC,IAAI,yBACR,IAAI,CAAC,OAAO,OAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAC9C,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,oBAEtH,IACJ,CACR,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,eAAK,KAAK,EAAE,GAAG,aACb,gBACE,EAAE,EAAC,oBAAoB,EACvB,SAAS,EAAC,SAAS,EACnB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,kBACzC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAC/C,EACF,iBAAQ,EAAE,EAAC,kBAAkB,gBAAY,mBAAmB,EAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,YACtI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,iBAA8B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,YACxF,CAAC,CAAC,KAAK,CAAC,MAAM,IADJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAEnB,CACV,CAAC,GACK,IACL,EACL,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAG,MAAM,CAAC,OAAO,GAAK,CAAC,CAAC,CAAC,IAAI,IAClF,EAEN,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,YACvD,iBAAQ,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,IAAI,gBAAa,gBAAgB,EAAC,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,uBAEpH,GACL,EAEN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,gBAAO,OAAO,EAAC,iBAAiB,EAAC,KAAK,EAAE,KAAK,wBAErC,EACR,eAAK,KAAK,EAAE,GAAG,aACb,cAAK,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,eAAY,QAAQ,YACxG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GACpB,EACN,iBAAQ,EAAE,EAAC,iBAAiB,EAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,YACpG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,iBAA8B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,YACzF,CAAC,CAAC,KAAK,CAAC,MAAM,IADJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAEnB,CACV,CAAC,GACK,IACL,IACF,EAEL,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACpB,eACE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,sBACjH,EAAE,aAEnB,yBAAO,CAAC,CAAC,OAAO,GAAQ,EACvB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAG,CAAC,CAAC,OAAO,GAAQ,CAAC,CAAC,CAAC,IAAI,EACvE,gBAAM,KAAK,EAAE,CAAC,CAAC,IAAI,kDACiB,CAAC,CAAC,MAAM,CAAC,OAAO,OAAG,CAAC,CAAC,MAAM,CAAC,MAAM,8CAA0C,IAAI,CAAC,WAAW,UACzH,IACH,CACP,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,yDAA8C,CAAC,CAAC,CAAC,IAAI,EAE1F,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACZ,cAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAC,OAAO,YAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,GACf,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACpB,iBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EACrE,QAAQ,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EACrD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,YAE/I,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,GAC1E,CACV,CAAC,CAAC,CAAC,CACF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,aACtE,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,YAChI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,sBAAsB,GAC5C,EACT,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,uBAEzE,IACL,CACP,EAEA,IAAI,CAAC,CAAC,CAAC,CACN,aAAG,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAC,QAAQ,aACvF,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,2BAA2B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,yBAAyB,EAClK,MAAM,CAAC,CAAC,CAAC,CACR,YAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,iCAEjF,CACL,CAAC,CAAC,CAAC,IAAI,IACN,CACL,CAAC,CAAC,CAAC,IAAI,IACP,CACJ,CAAC,CAAC,CAAC,IAAI,EAEP,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAC,MAAM,IAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAI,CAAC,CAAC,CAAC,IAAI,IAChF,CACP,CAAC;AACJ,CAAC;AAED,MAAM,YAAY,GAA2B;IAC3C,kBAAkB,EAAE,2BAA2B;IAC/C,iBAAiB,EACf,gLAAgL;IAClL,SAAS,EAAE,mDAAmD;IAC9D,QAAQ,EAAE,2EAA2E;IACrF,SAAS,EAAE,+BAA+B;IAC1C,QAAQ,EAAE,2BAA2B;IACrC,MAAM,EAAE,iDAAiD;IACzD,OAAO,EAAE,wCAAwC;CAClD,CAAC;AAEF;;;GAGG;AACH,SAAS,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAA4D;IAC1G,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACpB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAEnG,MAAM,MAAM,GAAG,OAAO,CAAC,GAAyC,EAAE;QAChE,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE;gBAAE,OAAO,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;YAC5E,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;YACxH,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;QACjD,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAC3B,MAAM,QAAQ,GACZ,MAAM,IAAI,MAAM,CAAC,KAAK;QACpB,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7G,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;IAExE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,CAAC,KAAK;YAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACvB,uDAAuD;IACzD,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO;QACtB,KAAK,YAAY,EAAE,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,IAAK,EAAE,IAAK,EAAE,KAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1C,uDAAuD;IACzD,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAEf,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;IACnE,sFAAsF;IACtF,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,YAAY,EAAE,EAAE,IAAK,CAAC,CAAC;QACzD,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,KAAK,EAAE,CAAmC,EAAE,EAAE;QAC3D,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnB,MAAM,YAAY,EAAE,CAAC;IACvB,CAAC,CAAC;IAEF,IAAI,CAAC,CAAC,CAAC,IAAI;QAAE,OAAO,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,uCAAuB,CAAC;IAC7D,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,uEAA4D,CAAC;IACvG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;IAE1D,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,uBAAoB,EAAE,aAC5D,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9F,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,2BAAqB,EAChF,gBAAM,KAAK,EAAE,CAAC,CAAC,IAAI,kCAAoB,OAAO,0CAA0C,IACpF,EAEN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,aAC9D,gBAAO,OAAO,EAAC,qBAAqB,EAAC,KAAK,EAAE,KAAK,wBAEzC,EACP,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAChB,gBAAM,KAAK,EAAE,CAAC,CAAC,IAAI,yBACR,IAAI,CAAC,OAAO,OAAG,MAAM,CAAC,KAAK,CAAC,MAAM,IACtC,CACR,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,eAAK,KAAK,EAAE,GAAG,aACb,gBACE,EAAE,EAAC,qBAAqB,EACxB,SAAS,EAAC,SAAS,EACnB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5C,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,kBACzC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAC/C,EACF,+BAAmB,iBAAiB,EAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,YAC1G,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,iBAA8B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YACjD,CAAC,CAAC,KAAK,CAAC,MAAM,IADJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAEnB,CACV,CAAC,GACK,IACL,EACL,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAG,MAAM,CAAC,OAAO,GAAK,CAAC,CAAC,CAAC,IAAI,EACrF,MAAM,CAAC,CAAC,CAAC,CACR,aAAG,KAAK,EAAE,CAAC,CAAC,IAAI,aACb,QAAQ,CAAC,CAAC,CAAC,iBAAiB,QAAQ,YAAY,CAAC,CAAC,CAAC,EAAE,EACrD,MAAM,CAAC,KAAK,kBAAc,MAAM,CAAC,KAAK,CAAC,MAAM,IAC5C,CACL,CAAC,CAAC,CAAC,IAAI,IACJ,EAEN,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,gBAAO,OAAO,EAAC,sBAAsB,EAAC,KAAK,EAAE,KAAK,2CAE1C,EACR,gBAAO,EAAE,EAAC,sBAAsB,EAAC,YAAY,EAAC,KAAK,EAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAI,EACrI,gBAAO,OAAO,EAAC,oBAAoB,EAAC,KAAK,EAAE,KAAK,wCAExC,EACR,gBACE,EAAE,EAAC,oBAAoB,EACvB,YAAY,EAAC,KAAK,EAClB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAC3C,KAAK,EAAE,CAAC,CAAC,KAAK,kBACA,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GACzC,EACD,QAAQ,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,+CAAoC,CAAC,CAAC,CAAC,IAAI,IAC1F,EAEL,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACjB,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,sBAAmB,EAAE,aAC1J,yBAAO,CAAC,CAAC,OAAO,GAAQ,EACxB,gBAAM,KAAK,EAAE,CAAC,CAAC,IAAI,gCAAkB,CAAC,CAAC,WAAW,UAAU,IACxD,CACP,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,yDAA8C,CAAC,CAAC,CAAC,IAAI,EACvF,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACT,cAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAC,OAAO,YAC9B,CAAC,CAAC,KAAK,CAAC,OAAO,GACZ,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACjB,iBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAClE,QAAQ,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,EAClG,OAAO,EAAE,GAAG,EAAE,CACZ,MAAM;oBACN,MAAM,CAAC,KAAK;oBACZ,CAAC,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,YAGxH,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,GAC/D,CACV,CAAC,CAAC,CAAC,CACF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,aACtE,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,YACvH,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,GACjC,EACT,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,uBAEnE,IACL,CACP,EAEA,MAAM,CAAC,CAAC,CAAC,CACR,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,uBAAqB,MAAM,CAAC,KAAK,aACxH,gBAAM,KAAK,EAAE,KAAK,oCACI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,cAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,EAAE,IAClI,EACP,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAG,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,GAAQ,EACnF,MAAM,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,CAC9B,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,2BAErF,EACT,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,iCAExF,IACL,CACP,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,MAAM,IAAI,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAC7C,YAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,iCAE/I,CACL,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAoE;IAChG,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,uBAAqB,KAAK,CAAC,KAAK,aACvH,eAAM,KAAK,EAAE,KAAK,4BAAoB,EACtC,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,GAAQ,IACnG,CACP,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,SAAS,QAAQ,CAAC,EAAE,KAAK,EAAsB;IAC7C,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM;YAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACrB,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC;YACrH,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC7C,MAAM,MAAM,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,CAAC;IACF,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,oBAAiB,EAAE,aACzD,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,0BAAoB,EAC/E,eAAK,KAAK,EAAE,GAAG,aACb,8BACa,eAAe,EAC1B,SAAS,EAAC,SAAS,EACnB,WAAW,EAAC,OAAO,EACnB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,GACvD,EACF,gCAAmB,QAAQ,EAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,aAC9F,iBAAQ,KAAK,EAAC,KAAK,oBAAa,EAChC,iBAAQ,KAAK,EAAC,KAAK,oBAAa,IACzB,IACL,EACN,+BAAmB,kBAAkB,EAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAC/H,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,kBAA8B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBACzC,CAAC,CAAC,KAAK,CAAC,MAAM,KADZ,CAAC,CAAC,KAAK,CAAC,OAAO,CAEnB,CACV,CAAC,GACK,EACT,YAAG,KAAK,EAAE,CAAC,CAAC,IAAI,4LAEZ,EACH,KAAK,CAAC,CAAC,CAAC,CACP,cAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAC,OAAO,YAC9B,KAAK,GACF,CACP,CAAC,CAAC,CAAC,IAAI,EACR,iBAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,YAChI,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,qBAAqB,GAC3C,EACT,KAAC,MAAM,IACL,KAAK,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,EACtD,KAAK,EAAE,EAAE,gBAAgB,EAAE,sCAAsC,EAAE,UAAU,EAAE,uCAAuC,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,EAAE,oEAAoE,EAAE,GAC7O,IACE,CACP,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAqF;IAChI,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB,IAAI,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IAE9D,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3G,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACZ,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM;YAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACrB,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACnB,SAAS,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAE1E,MAAM,GAAG,GAAG,KAAK,EAAE,CAAsB,EAAE,EAAE;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,CAAC,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,YAAG,KAAK,EAAE,CAAC,CAAC,KAAK,oHAAyG,CAAC;IACpI,CAAC;IACD,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,GAAG,IAAI,CAAC;IACf,CAAC;IACD,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,wBAAqB,EAAE,aAC7D,iBAAQ,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,mCAA6B,EACxF,gCAAmB,MAAM,EAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAClH,iBAAQ,KAAK,EAAC,EAAE,YAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,GAAU,EACrE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACxB,iBAAmB,KAAK,EAAE,CAAC,CAAC,EAAE,YAC3B,CAAC,CAAC,IAAI,IADI,CAAC,CAAC,EAAE,CAER,CACV,CAAC,IACK,EACT,eAAK,KAAK,EAAE,GAAG,aACb,8BAAkB,gBAAgB,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,WAAW,EAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAI,EAC5J,iBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,CAAC,CAAC,SAAS,EAClB,QAAQ,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EACtD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,sBAGtG,IACL,EACL,IAAI,CAAC,CAAC,CAAC,CACN,iBAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,aACvD,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAI,UACzF,IAAI,IACH,CACT,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,KAAK,EAAE,GAAG,aACb,8BAAkB,oBAAoB,EAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,MAAM,EAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI,EACpM,+BAAmB,eAAe,EAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,YACtG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,iBAA8B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YACjD,CAAC,CAAC,KAAK,CAAC,MAAM,IADJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAEnB,CACV,CAAC,GACK,IACL,EACL,KAAK,CAAC,CAAC,CAAC,CACP,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAmB,EAAE,YACxI,KAAK,CAAC,OAAO,GACV,CACP,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,CAAC,CAAC,CAAC,CACP,cAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAC,OAAO,YAC9B,KAAK,GACF,CACP,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,KAAK,CAAC,CAAC,CAAC,CACR,iBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAC/C,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAC/C,OAAO,EAAE,GAAG,EAAE,CACZ,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;oBAClB,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAM,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAChJ,CAAC,CAAC,YAGH,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,GACnC,CACV,CAAC,CAAC,CAAC,CACF,iBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAC/C,QAAQ,EAAE,IAAI,EACd,OAAO,EAAE,GAAG,EAAE,CACZ,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;oBAClB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACnD,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACf,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;oBACjB,MAAM,YAAY,EAAE,CAAC;oBACrB,CAAC,CAAC,EAAE,IAAK,EAAE,IAAK,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;gBACzE,CAAC,CAAC,YAGH,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,GACjC,CACV,EACD,KAAC,MAAM,IACL,KAAK,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EACvD,KAAK,EAAE,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,UAAU,EAAE,uCAAuC,EAAE,SAAS,EAAE,6BAA6B,EAAE,QAAQ,EAAE,2DAA2D,EAAE,MAAM,EAAE,kDAAkD,EAAE,GAC5R,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,EAAyF;IAC3H,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,aACvF,eAAM,KAAK,EAAE,KAAK,uBAAe,EAChC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACtF,OAAO,CACL,eAAgB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,sBAAoB,CAAC,CAAC,KAAK,aAC1H,2BACG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,cAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,IACjG,EACP,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,YAC5D,IAAI,CAAC,CAAC,CAAC,CACN,YAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,YACjF,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAC9B,CACL,CAAC,CAAC,CAAC,CACF,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAClC,GACI,KAZC,CAAC,CAAC,EAAE,CAaR,CACP,CAAC;YACJ,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theoo/react",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "React hooks and components for Theoo: sign-in, passkeys, operations, recovery and session keys.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -23,7 +23,7 @@
23
23
  ],
24
24
  "sideEffects": false,
25
25
  "dependencies": {
26
- "@theoo/sdk": "^0.3.0"
26
+ "@theoo/sdk": "^0.4.0"
27
27
  },
28
28
  "peerDependencies": {
29
29
  "react": ">=18"