@toon-protocol/views 0.10.8 → 0.11.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.
- package/dist/app/index.html +86 -81
- package/dist/app-bridge/ext-apps-bridge.d.ts.map +1 -1
- package/dist/app-bridge/ext-apps-bridge.js +11 -0
- package/dist/app-bridge/ext-apps-bridge.js.map +1 -1
- package/dist/atoms/interactive.d.ts.map +1 -1
- package/dist/atoms/interactive.js +93 -9
- package/dist/atoms/interactive.js.map +1 -1
- package/dist/atoms/media.d.ts +3 -0
- package/dist/atoms/media.d.ts.map +1 -1
- package/dist/atoms/media.js +71 -24
- package/dist/atoms/media.js.map +1 -1
- package/dist/atoms/status.d.ts.map +1 -1
- package/dist/atoms/status.js +7 -2
- package/dist/atoms/status.js.map +1 -1
- package/dist/atoms/types.d.ts +8 -0
- package/dist/atoms/types.d.ts.map +1 -1
- package/dist/atoms/use-refresh.d.ts +2 -0
- package/dist/atoms/use-refresh.d.ts.map +1 -0
- package/dist/atoms/use-refresh.js +40 -0
- package/dist/atoms/use-refresh.js.map +1 -0
- package/dist/atoms/wallet.d.ts.map +1 -1
- package/dist/atoms/wallet.js +125 -22
- package/dist/atoms/wallet.js.map +1 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +26 -9
- package/dist/catalog.js.map +1 -1
- package/dist/runtime.d.ts +21 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +70 -13
- package/dist/runtime.js.map +1 -1
- package/dist/test-setup.d.ts +2 -0
- package/dist/test-setup.d.ts.map +1 -0
- package/dist/test-setup.js +25 -0
- package/dist/test-setup.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared post-action refresh signal.
|
|
3
|
+
*
|
|
4
|
+
* The runtime bumps a `refreshNonce` after every SUCCESSFUL write action (see
|
|
5
|
+
* `buildActions` in runtime.tsx). Read-bearing atoms (and the feed `useBind`)
|
|
6
|
+
* call this hook with that nonce and fold the returned counter into their read
|
|
7
|
+
* `useEffect` dependency array, so the rendered data re-fetches IN PLACE after a
|
|
8
|
+
* mutation — no re-render from the agent.
|
|
9
|
+
*
|
|
10
|
+
* Two kinds of staleness are covered:
|
|
11
|
+
* - immediate: the moment the action resolves, re-read (the nonce bump).
|
|
12
|
+
* - settlement-delayed: faucet drips + relay propagation can land a beat after
|
|
13
|
+
* the tool call returns, so we re-read again after each delay in `delaysMs`.
|
|
14
|
+
*
|
|
15
|
+
* The initial mount (nonce 0) does NOT fire — the atom's own mount-time read
|
|
16
|
+
* already covers first paint. Timers are cleared on the next bump / unmount, so
|
|
17
|
+
* there are no leaks and no setState-after-unmount. Reads must never bump the
|
|
18
|
+
* nonce themselves (only write actions do), so this can't loop.
|
|
19
|
+
*/
|
|
20
|
+
import { useEffect, useState } from 'react';
|
|
21
|
+
/** Default settlement-retry cadence: one re-read ~1.5s after the action. */
|
|
22
|
+
const DEFAULT_DELAYS_MS = [1500];
|
|
23
|
+
export function useRefreshTick(refreshNonce, delaysMs = DEFAULT_DELAYS_MS) {
|
|
24
|
+
const [tick, setTick] = useState(0);
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
// Skip the initial mount — the atom's own read effect handles first paint.
|
|
27
|
+
if (!refreshNonce)
|
|
28
|
+
return;
|
|
29
|
+
// Re-read immediately, then once more after each settlement delay.
|
|
30
|
+
setTick((t) => t + 1);
|
|
31
|
+
const timers = delaysMs.map((ms) => setTimeout(() => setTick((t) => t + 1), ms));
|
|
32
|
+
return () => {
|
|
33
|
+
for (const t of timers)
|
|
34
|
+
clearTimeout(t);
|
|
35
|
+
};
|
|
36
|
+
// Only the integer nonce drives re-fetch; delaysMs is a stable call-site literal.
|
|
37
|
+
}, [refreshNonce]);
|
|
38
|
+
return tick;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=use-refresh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-refresh.js","sourceRoot":"","sources":["../../src/atoms/use-refresh.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,4EAA4E;AAC5E,MAAM,iBAAiB,GAAsB,CAAC,IAAI,CAAC,CAAC;AAEpD,MAAM,UAAU,cAAc,CAC5B,YAAgC,EAChC,WAA8B,iBAAiB;IAE/C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,2EAA2E;QAC3E,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,mEAAmE;QACnE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjF,OAAO,GAAG,EAAE;YACV,KAAK,MAAM,CAAC,IAAI,MAAM;gBAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,kFAAkF;IACpF,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACnB,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/atoms/wallet.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/atoms/wallet.tsx"],"names":[],"mappings":"AAsBA,OAAO,EACL,KAAK,IAAI,EAKV,MAAM,YAAY,CAAC;AAoDpB;;;;GAIG;AACH,iBAAS,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,MAAM,CAQtD;AAynBD,eAAO,MAAM,WAAW,EAAE,IAAI,EAY7B,CAAC;AAGF,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/atoms/wallet.js
CHANGED
|
@@ -12,7 +12,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
12
12
|
* runtime-wired `readBalances` / `readChannels` seams, and the faucet fires the
|
|
13
13
|
* wired `fund` action. No key material lives here.
|
|
14
14
|
*/
|
|
15
|
-
import { useEffect, useState } from 'react';
|
|
15
|
+
import { useEffect, useRef, useState } from 'react';
|
|
16
16
|
import { Wallet, Landmark, Coins, Check, RotateCw } from 'lucide-react';
|
|
17
17
|
import { Button } from '@/components/ui/button.js';
|
|
18
18
|
import { Input } from '@/components/ui/input.js';
|
|
@@ -20,7 +20,16 @@ import { Spinner } from '@/components/ui/spinner.js';
|
|
|
20
20
|
import { MonoId } from '@/components/mono-id.js';
|
|
21
21
|
import { CopyButton } from '@/components/copy-button.js';
|
|
22
22
|
import { Stepper } from './loading.js';
|
|
23
|
+
import { useRefreshTick } from './use-refresh.js';
|
|
23
24
|
import {} from './types.js';
|
|
25
|
+
/**
|
|
26
|
+
* Wallet refresh cadence: re-read balances ~1.5s after a successful write, then
|
|
27
|
+
* again at the faucet-drip settlement marks. The drip settles AFTER the submit
|
|
28
|
+
* returns (EVM/Solana ~30s, Mina ~1–2 min), so the later marks let the new
|
|
29
|
+
* balance light up without a manual refresh. Module-level so the dep array stays
|
|
30
|
+
* stable across renders.
|
|
31
|
+
*/
|
|
32
|
+
const WALLET_REFRESH_DELAYS = [1500, 15_000, 45_000, 90_000];
|
|
24
33
|
/** Human chain label for the per-chain rows. */
|
|
25
34
|
const CHAIN_LABEL = {
|
|
26
35
|
evm: 'EVM',
|
|
@@ -73,14 +82,49 @@ function formatUnits(amount, scale = 6) {
|
|
|
73
82
|
/** A small inline loading row, consistent with the `loading` atom. */
|
|
74
83
|
const Loading = ({ label }) => (_jsxs("div", { className: "flex items-center gap-2 px-1 py-3 text-sm text-muted-foreground", role: "status", "aria-live": "polite", children: [_jsx(Spinner, { size: "sm" }), label] }));
|
|
75
84
|
const CardShell = ({ icon, title, action, children, }) => (_jsxs("div", { className: "overflow-hidden rounded-xl border border-border bg-card text-card-foreground shadow-sm", children: [_jsxs("div", { className: "flex items-center justify-between gap-3 border-b border-border px-4 py-3", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "text-primary", children: icon }), _jsx("span", { className: "text-sm font-semibold", children: title })] }), action] }), _jsx("div", { className: "px-4 py-3", children: children })] }));
|
|
76
|
-
const WalletOverview = ({ readStatus, readBalances, actions }) => {
|
|
85
|
+
const WalletOverview = ({ readStatus, readBalances, actions, refreshNonce }) => {
|
|
77
86
|
const [identity, setIdentity] = useState(undefined);
|
|
78
87
|
const [balances, setBalances] = useState([]);
|
|
79
88
|
const [balState, setBalState] = useState(readBalances ? 'loading' : 'ok');
|
|
80
|
-
// Bump to force a balance re-read (manual retry
|
|
89
|
+
// Bump to force a balance re-read (manual retry button).
|
|
81
90
|
const [balReload, setBalReload] = useState(0);
|
|
82
91
|
const [funding, setFunding] = useState({});
|
|
92
|
+
// Per-chain balance amount captured when a fund was submitted, so we can clear
|
|
93
|
+
// the "Submitted ✓" state the moment that chain's balance actually changes
|
|
94
|
+
// (the drip landed). And a fallback timer per chain so a drip that never moves
|
|
95
|
+
// the balance (e.g. a failed Solana faucet) doesn't park on "Submitted" forever.
|
|
96
|
+
const fundBaselineRef = useRef({});
|
|
97
|
+
const fundTimersRef = useRef({});
|
|
83
98
|
const fund = actions['fund'];
|
|
99
|
+
const clearFunding = (chain) => {
|
|
100
|
+
const t = fundTimersRef.current[chain];
|
|
101
|
+
if (t) {
|
|
102
|
+
clearTimeout(t);
|
|
103
|
+
delete fundTimersRef.current[chain];
|
|
104
|
+
}
|
|
105
|
+
delete fundBaselineRef.current[chain];
|
|
106
|
+
setFunding((f) => {
|
|
107
|
+
if (!(chain in f))
|
|
108
|
+
return f;
|
|
109
|
+
const next = { ...f };
|
|
110
|
+
delete next[chain];
|
|
111
|
+
return next;
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
// Clear all fund timers on unmount.
|
|
115
|
+
useEffect(() => {
|
|
116
|
+
const timers = fundTimersRef.current;
|
|
117
|
+
return () => {
|
|
118
|
+
for (const t of Object.values(timers))
|
|
119
|
+
clearTimeout(t);
|
|
120
|
+
};
|
|
121
|
+
}, []);
|
|
122
|
+
// After ANY successful write in the view (including this wallet's faucet
|
|
123
|
+
// `fund`, which flows through the runtime action wrapper → onMutated), re-read
|
|
124
|
+
// balances immediately and again across the drip-settlement marks. This folds
|
|
125
|
+
// the old bespoke post-fund re-poll into the shared refresh mechanism, so the
|
|
126
|
+
// wrapper's onMutated drives it and the timers self-clean on bump/unmount.
|
|
127
|
+
const refreshTick = useRefreshTick(refreshNonce, WALLET_REFRESH_DELAYS);
|
|
84
128
|
// Addresses come from the live status identity (always available); balances
|
|
85
129
|
// are an optional enrichment that may be absent until the reader is wired.
|
|
86
130
|
useEffect(() => {
|
|
@@ -107,6 +151,29 @@ const WalletOverview = ({ readStatus, readBalances, actions }) => {
|
|
|
107
151
|
return;
|
|
108
152
|
setBalances(b);
|
|
109
153
|
setBalState('ok');
|
|
154
|
+
// Reset any "Submitted ✓" button whose chain balance has now changed
|
|
155
|
+
// from the value captured at fund time — i.e. the drip landed and the UI
|
|
156
|
+
// updated, so the transient feedback should fall back to the idle "Fund".
|
|
157
|
+
setFunding((prev) => {
|
|
158
|
+
let next = prev;
|
|
159
|
+
for (const [ch, st] of Object.entries(prev)) {
|
|
160
|
+
if (st !== 'submitted')
|
|
161
|
+
continue;
|
|
162
|
+
const newAmt = b.find((x) => x.chain === ch)?.amount;
|
|
163
|
+
if (newAmt !== undefined && newAmt !== fundBaselineRef.current[ch]) {
|
|
164
|
+
if (next === prev)
|
|
165
|
+
next = { ...prev };
|
|
166
|
+
delete next[ch];
|
|
167
|
+
const t = fundTimersRef.current[ch];
|
|
168
|
+
if (t) {
|
|
169
|
+
clearTimeout(t);
|
|
170
|
+
delete fundTimersRef.current[ch];
|
|
171
|
+
}
|
|
172
|
+
delete fundBaselineRef.current[ch];
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
return next;
|
|
176
|
+
});
|
|
110
177
|
})
|
|
111
178
|
// The read seam retries the flaky control plane and only rejects on a
|
|
112
179
|
// persistent failure (toon-client#186) — surface it as an error/retry
|
|
@@ -115,36 +182,67 @@ const WalletOverview = ({ readStatus, readBalances, actions }) => {
|
|
|
115
182
|
return () => {
|
|
116
183
|
cancelled = true;
|
|
117
184
|
};
|
|
118
|
-
|
|
185
|
+
// balReload = manual retry; refreshTick = post-write refresh (incl. fund drip).
|
|
186
|
+
}, [readBalances, balReload, refreshTick]);
|
|
119
187
|
const onFund = async (chain) => {
|
|
120
188
|
if (!fund)
|
|
121
189
|
return;
|
|
190
|
+
// Snapshot the pre-fund balance so we can detect when the drip actually
|
|
191
|
+
// lands and clear the "Submitted" state at that point.
|
|
192
|
+
fundBaselineRef.current[chain] =
|
|
193
|
+
balances.find((b) => b.chain === chain)?.amount ?? '';
|
|
122
194
|
setFunding((f) => ({ ...f, [chain]: 'funding' }));
|
|
123
195
|
const outcome = await fund({ chain });
|
|
124
|
-
// `fund` may resolve to void (older paths) — treat that as success.
|
|
196
|
+
// `fund` may resolve to void (older paths) — treat that as success. With the
|
|
197
|
+
// async drip the call now returns a 'pending' submit, not a settled balance.
|
|
125
198
|
const ok = !outcome || outcome.ok !== false;
|
|
126
|
-
setFunding((f) => ({ ...f, [chain]: ok ? '
|
|
127
|
-
//
|
|
128
|
-
|
|
129
|
-
|
|
199
|
+
setFunding((f) => ({ ...f, [chain]: ok ? 'submitted' : 'error' }));
|
|
200
|
+
// No bespoke re-poll here: a successful `fund` bumps the view's refreshNonce
|
|
201
|
+
// (via the runtime action wrapper → onMutated), which drives the staggered
|
|
202
|
+
// balance re-read through `refreshTick` / WALLET_REFRESH_DELAYS above; the
|
|
203
|
+
// re-read clears "Submitted" once this chain's balance changes.
|
|
204
|
+
if (ok) {
|
|
205
|
+
// Fallback: if the balance never moves (e.g. a faucet drip that fails to
|
|
206
|
+
// settle), don't park on "Submitted" forever — reset shortly after the
|
|
207
|
+
// last refresh mark.
|
|
208
|
+
const prev = fundTimersRef.current[chain];
|
|
209
|
+
if (prev)
|
|
210
|
+
clearTimeout(prev);
|
|
211
|
+
fundTimersRef.current[chain] = setTimeout(() => clearFunding(chain), WALLET_REFRESH_DELAYS[WALLET_REFRESH_DELAYS.length - 1] + 5_000);
|
|
212
|
+
}
|
|
130
213
|
};
|
|
131
214
|
const retryBalances = () => setBalReload((n) => n + 1);
|
|
132
215
|
const rows = identity ? buildRows(identity, balances) : [];
|
|
216
|
+
// Defense in depth (#200): even when `readBalances` resolved `'ok'`, a shape
|
|
217
|
+
// mismatch that slipped through as an empty list would leave every value cell
|
|
218
|
+
// blank — indistinguishable from a real zero balance, with no retry. If the
|
|
219
|
+
// balance seam IS wired and we have address rows but NONE carries a balance,
|
|
220
|
+
// treat it as unavailable (show the retry banner) rather than a silent blank.
|
|
221
|
+
// When the seam isn't wired (`readBalances` undefined) the addresses-only card
|
|
222
|
+
// is the intended degraded mode, so don't flag it.
|
|
223
|
+
const balancesUnavailable = !!readBalances &&
|
|
224
|
+
balState === 'ok' &&
|
|
225
|
+
rows.length > 0 &&
|
|
226
|
+
!rows.some((r) => r.balance);
|
|
227
|
+
const showBalanceError = balState === 'error' || balancesUnavailable;
|
|
133
228
|
return (_jsxs(CardShell, { icon: _jsx(Wallet, { "aria-hidden": "true", className: "size-4" }), title: "Wallet", children: [identity === undefined ? (_jsx(Loading, { label: "Loading wallet\u2026" })) : rows.length === 0 ? (_jsx("p", { className: "py-2 text-sm text-muted-foreground", children: "No wallet addresses configured yet." })) : (_jsx("ul", { className: "flex flex-col divide-y divide-border", children: rows.map((row) => {
|
|
134
229
|
const fundState = funding[row.chain];
|
|
135
|
-
return (_jsxs("li", { className: "flex flex-col gap-1 py-3 first:pt-0 last:pb-0", children: [_jsxs("div", { className: "flex items-baseline justify-between gap-3", children: [_jsx("span", { className: "text-xs font-medium uppercase tracking-wide text-muted-foreground", children: CHAIN_LABEL[row.chain] ?? row.chain }), row.balance ? (_jsxs("span", { className: "font-mono text-sm font-semibold tabular-nums", children: [formatUnits(row.balance.amount, row.balance.assetScale ?? 6), row.balance.asset ? (_jsx("span", { className: "ml-1 text-xs font-normal text-muted-foreground", children: row.balance.asset })) : null] })) : balState === 'loading' ? (_jsx(Spinner, { size: "sm" })) : null] }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx(MonoId, { value: row.address, prefixLen: 10, suffixLen: 6, className: "text-muted-foreground" }), _jsxs("div", { className: "flex items-center gap-0.5", children: [_jsx(CopyButton, { value: row.address, label: `Copy ${CHAIN_LABEL[row.chain] ?? row.chain} address` }), fund ? (_jsxs(Button, { type: "button", variant: "ghost", size: "sm", disabled: fundState === 'funding', className: "h-7 gap-1 px-2 text-xs text-muted-foreground hover:text-foreground", onClick: () => void onFund(row.chain), children: [fundState === 'funding' ? (_jsx(Spinner, { size: "sm" })) : fundState === '
|
|
136
|
-
? '
|
|
137
|
-
: fundState === '
|
|
138
|
-
? '
|
|
230
|
+
return (_jsxs("li", { className: "flex flex-col gap-1 py-3 first:pt-0 last:pb-0", children: [_jsxs("div", { className: "flex items-baseline justify-between gap-3", children: [_jsx("span", { className: "text-xs font-medium uppercase tracking-wide text-muted-foreground", children: CHAIN_LABEL[row.chain] ?? row.chain }), row.balance ? (_jsxs("span", { className: "font-mono text-sm font-semibold tabular-nums", children: [formatUnits(row.balance.amount, row.balance.assetScale ?? 6), row.balance.asset ? (_jsx("span", { className: "ml-1 text-xs font-normal text-muted-foreground", children: row.balance.asset })) : null] })) : balState === 'loading' ? (_jsx(Spinner, { size: "sm" })) : null] }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx(MonoId, { value: row.address, prefixLen: 10, suffixLen: 6, className: "text-muted-foreground" }), _jsxs("div", { className: "flex items-center gap-0.5", children: [_jsx(CopyButton, { value: row.address, label: `Copy ${CHAIN_LABEL[row.chain] ?? row.chain} address` }), fund ? (_jsxs(Button, { type: "button", variant: "ghost", size: "sm", disabled: fundState === 'funding', className: "h-7 gap-1 px-2 text-xs text-muted-foreground hover:text-foreground", onClick: () => void onFund(row.chain), children: [fundState === 'funding' ? (_jsx(Spinner, { size: "sm" })) : fundState === 'submitted' ? (_jsx(Check, { "aria-hidden": "true", className: "text-primary" })) : (_jsx(Coins, { "aria-hidden": "true" })), fundState === 'funding'
|
|
231
|
+
? 'Submitting…'
|
|
232
|
+
: fundState === 'submitted'
|
|
233
|
+
? 'Submitted'
|
|
139
234
|
: fundState === 'error'
|
|
140
235
|
? 'Retry fund'
|
|
141
236
|
: 'Fund'] })) : null] })] })] }, `${row.chain}:${row.address}`));
|
|
142
|
-
}) })),
|
|
237
|
+
}) })), showBalanceError ? (_jsxs("div", { className: "mt-2 flex items-center justify-between gap-2 rounded-md bg-muted/50 px-2 py-1.5", children: [_jsx("span", { className: "text-xs text-muted-foreground", children: "Balances are temporarily unavailable." }), _jsxs(Button, { type: "button", variant: "ghost", size: "sm", className: "h-7 gap-1 px-2 text-xs", onClick: retryBalances, children: [_jsx(RotateCw, { "aria-hidden": "true" }), "Retry"] })] })) : null, Object.values(funding).some((s) => s === 'submitted') ? (_jsx("p", { className: "mt-2 text-xs text-muted-foreground", children: "Drip submitted \u2014 balances updating\u2026 (Mina can take 1\u20132 min to settle.)" })) : null, fund ? (_jsx("p", { className: "mt-2 text-[10px] text-muted-foreground/70", children: "\u201CFund\u201D requests devnet test funds from the faucet \u2014 it receives, it doesn\u2019t spend." })) : null] }));
|
|
143
238
|
};
|
|
144
239
|
// ── channel-list ─────────────────────────────────────────────────────────────
|
|
145
|
-
const ChannelList = ({ readChannels }) => {
|
|
240
|
+
const ChannelList = ({ readChannels, refreshNonce }) => {
|
|
146
241
|
const [channels, setChannels] = useState(null);
|
|
147
242
|
const [error, setError] = useState(false);
|
|
243
|
+
// Re-read channels after a successful write (open/deposit/close/settle):
|
|
244
|
+
// immediate + a short settlement delay.
|
|
245
|
+
const refreshTick = useRefreshTick(refreshNonce);
|
|
148
246
|
useEffect(() => {
|
|
149
247
|
if (!readChannels) {
|
|
150
248
|
setError(true);
|
|
@@ -157,10 +255,10 @@ const ChannelList = ({ readChannels }) => {
|
|
|
157
255
|
return () => {
|
|
158
256
|
cancelled = true;
|
|
159
257
|
};
|
|
160
|
-
}, [readChannels]);
|
|
258
|
+
}, [readChannels, refreshTick]);
|
|
161
259
|
return (_jsx(CardShell, { icon: _jsx(Landmark, { "aria-hidden": "true", className: "size-4" }), title: "Payment channels", action: channels && channels.length > 0 ? (_jsx("span", { className: "rounded-full bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground tabular-nums", children: channels.length })) : undefined, children: error ? (_jsx("p", { className: "py-2 text-sm text-destructive", children: "Channels are unavailable." })) : channels === null ? (_jsx(Loading, { label: "Loading channels\u2026" })) : channels.length === 0 ? (_jsx("p", { className: "py-2 text-sm text-muted-foreground", children: "No channels open yet." })) : (_jsx("ul", { className: "flex flex-col divide-y divide-border", children: channels.map((c) => (_jsxs("li", { className: "flex flex-col gap-1.5 py-3 first:pt-0 last:pb-0", children: [_jsxs("div", { className: "flex items-baseline justify-between gap-3", children: [_jsx(MonoId, { value: c.channelId, className: "text-foreground" }), _jsxs("span", { className: "text-xs text-muted-foreground", children: ["nonce ", _jsx("span", { className: "font-mono font-medium text-foreground", children: c.nonce })] })] }), c.availableBalance !== undefined ? (_jsxs("div", { className: "flex items-baseline justify-between gap-3 text-xs", children: [_jsx("span", { className: "text-muted-foreground", children: "Available" }), _jsxs("span", { className: "font-mono font-semibold tabular-nums text-foreground", children: [formatUnits(c.availableBalance), c.depositTotal !== undefined ? (_jsxs("span", { className: "ml-1 font-normal text-muted-foreground", children: ["/ ", formatUnits(c.depositTotal)] })) : null] })] })) : null] }, c.channelId))) })) }));
|
|
162
260
|
};
|
|
163
|
-
const DepositForm = ({ readChannels, actions }) => {
|
|
261
|
+
const DepositForm = ({ readChannels, actions, refreshNonce }) => {
|
|
164
262
|
const [channels, setChannels] = useState([]);
|
|
165
263
|
const [channelId, setChannelId] = useState('');
|
|
166
264
|
const [amount, setAmount] = useState('');
|
|
@@ -168,6 +266,8 @@ const DepositForm = ({ readChannels, actions }) => {
|
|
|
168
266
|
const [depositTotal, setDepositTotal] = useState(null);
|
|
169
267
|
const [error, setError] = useState(null);
|
|
170
268
|
const deposit = actions['deposit'];
|
|
269
|
+
// Refresh the channel selector after a successful write elsewhere in the view.
|
|
270
|
+
const refreshTick = useRefreshTick(refreshNonce);
|
|
171
271
|
useEffect(() => {
|
|
172
272
|
if (!readChannels)
|
|
173
273
|
return;
|
|
@@ -187,7 +287,7 @@ const DepositForm = ({ readChannels, actions }) => {
|
|
|
187
287
|
return () => {
|
|
188
288
|
cancelled = true;
|
|
189
289
|
};
|
|
190
|
-
}, [readChannels]);
|
|
290
|
+
}, [readChannels, refreshTick]);
|
|
191
291
|
const submit = async () => {
|
|
192
292
|
const value = amount.trim();
|
|
193
293
|
if (!channelId || !value || !deposit)
|
|
@@ -218,17 +318,20 @@ function mmss(totalSec) {
|
|
|
218
318
|
const m = Math.floor(s / 60);
|
|
219
319
|
return `${m}:${String(s % 60).padStart(2, '0')}`;
|
|
220
320
|
}
|
|
221
|
-
const WithdrawFlow = ({ readChannels, actions }) => {
|
|
321
|
+
const WithdrawFlow = ({ readChannels, actions, refreshNonce }) => {
|
|
222
322
|
const [channels, setChannels] = useState([]);
|
|
223
323
|
const [channelId, setChannelId] = useState('');
|
|
224
|
-
// Optimistic override after a close/settle action
|
|
225
|
-
//
|
|
324
|
+
// Optimistic override after a close/settle action gives instant feedback; the
|
|
325
|
+
// refreshNonce-driven re-read below then reconciles with authoritative state.
|
|
226
326
|
const [override, setOverride] = useState({});
|
|
227
327
|
const [nowSec, setNowSec] = useState(() => Math.floor(Date.now() / 1000));
|
|
228
328
|
const [busy, setBusy] = useState(null);
|
|
229
329
|
const [error, setError] = useState(null);
|
|
230
330
|
const close = actions['close'];
|
|
231
331
|
const settle = actions['settle'];
|
|
332
|
+
// Re-read channels after a successful close/settle so the flow reflects the
|
|
333
|
+
// authoritative on-chain state, not just the optimistic override.
|
|
334
|
+
const refreshTick = useRefreshTick(refreshNonce);
|
|
232
335
|
useEffect(() => {
|
|
233
336
|
if (!readChannels)
|
|
234
337
|
return;
|
|
@@ -248,7 +351,7 @@ const WithdrawFlow = ({ readChannels, actions }) => {
|
|
|
248
351
|
return () => {
|
|
249
352
|
cancelled = true;
|
|
250
353
|
};
|
|
251
|
-
}, [readChannels]);
|
|
354
|
+
}, [readChannels, refreshTick]);
|
|
252
355
|
// Tick the clock so the countdown + settle gate update live.
|
|
253
356
|
useEffect(() => {
|
|
254
357
|
const t = setInterval(() => setNowSec(Math.floor(Date.now() / 1000)), 1000);
|
package/dist/atoms/wallet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/atoms/wallet.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAA2B,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAMN,MAAM,YAAY,CAAC;AAEpB,gDAAgD;AAChD,MAAM,WAAW,GAA2B;IAC1C,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACb,CAAC;AASF;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,QAAgC,EAAE,QAAuB;IAC1E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,OAAgB,EAAQ,EAAE;QACpD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,GAAG,GAAc,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,GAAG;YAAE,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC,CAAC;IACF,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACjC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACvC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACnC,kEAAkE;IAClE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5G,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,MAAc,EAAE,KAAK,GAAG,CAAC;IAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnG,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;IAC5D,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAChE,CAAC;AAED,sEAAsE;AACtE,MAAM,OAAO,GAA0B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACpD,eAAK,SAAS,EAAC,iEAAiE,EAAC,IAAI,EAAC,QAAQ,eAAW,QAAQ,aAC/G,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,EACpB,KAAK,IACF,CACP,CAAC;AAEF,MAAM,SAAS,GAAoF,CAAC,EAClG,IAAI,EACJ,KAAK,EACL,MAAM,EACN,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,eAAK,SAAS,EAAC,wFAAwF,aACrG,eAAK,SAAS,EAAC,0EAA0E,aACvF,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAM,SAAS,EAAC,cAAc,YAAE,IAAI,GAAQ,EAC5C,eAAM,SAAS,EAAC,uBAAuB,YAAE,KAAK,GAAQ,IAClD,EACL,MAAM,IACH,EACN,cAAK,SAAS,EAAC,WAAW,YAAE,QAAQ,GAAO,IACvC,CACP,CAAC;AASF,MAAM,cAAc,GAAwB,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;IACpF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA4C,SAAS,CAAC,CAAC;IAC/F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAe,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxF,sEAAsE;IACtE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA4B,EAAE,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7B,4EAA4E;IAC5E,2EAA2E;IAC3E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,UAAU,EAAE;aACd,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;aAC1D,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,KAAK,YAAY,EAAE;aAChB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,SAAS;gBAAE,OAAO;YACtB,WAAW,CAAC,CAAC,CAAC,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC;YACF,sEAAsE;YACtE,sEAAsE;YACtE,sEAAsE;aACrE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IAE9B,MAAM,MAAM,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;QACpD,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACtC,oEAAoE;QACpE,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC;QAC5C,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9D,+DAA+D;QAC/D,IAAI,EAAE;YAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAS,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE7D,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3D,OAAO,CACL,MAAC,SAAS,IAAC,IAAI,EAAE,KAAC,MAAM,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EAAE,KAAK,EAAC,QAAQ,aAC9E,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CACxB,KAAC,OAAO,IAAC,KAAK,EAAC,sBAAiB,GAAG,CACpC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACtB,YAAG,SAAS,EAAC,oCAAoC,oDAAwC,CAC1F,CAAC,CAAC,CAAC,CACF,aAAI,SAAS,EAAC,sCAAsC,YACjD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBAChB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACrC,OAAO,CACL,cAAwC,SAAS,EAAC,+CAA+C,aAC/F,eAAK,SAAS,EAAC,2CAA2C,aACxD,eAAM,SAAS,EAAC,mEAAmE,YAChF,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,GAC/B,EACN,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CACb,gBAAM,SAAS,EAAC,8CAA8C,aAC3D,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,EAC5D,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CACnB,eAAM,SAAS,EAAC,gDAAgD,YAAE,GAAG,CAAC,OAAO,CAAC,KAAK,GAAQ,CAC5F,CAAC,CAAC,CAAC,IAAI,IACH,CACR,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAC3B,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,CACtB,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,eAAK,SAAS,EAAC,yCAAyC,aACtD,KAAC,MAAM,IAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAC,uBAAuB,GAAG,EAC7F,eAAK,SAAS,EAAC,2BAA2B,aACxC,KAAC,UAAU,IAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,UAAU,GAAI,EAC/F,IAAI,CAAC,CAAC,CAAC,CACN,MAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,SAAS,KAAK,SAAS,EACjC,SAAS,EAAC,oEAAoE,EAC9E,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,aAEpC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CACzB,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,CACtB,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,CACzB,KAAC,KAAK,mBAAa,MAAM,EAAC,SAAS,EAAC,cAAc,GAAG,CACtD,CAAC,CAAC,CAAC,CACF,KAAC,KAAK,mBAAa,MAAM,GAAG,CAC7B,EACA,SAAS,KAAK,SAAS;wDACtB,CAAC,CAAC,UAAU;wDACZ,CAAC,CAAC,SAAS,KAAK,MAAM;4DACpB,CAAC,CAAC,WAAW;4DACb,CAAC,CAAC,SAAS,KAAK,OAAO;gEACrB,CAAC,CAAC,YAAY;gEACd,CAAC,CAAC,MAAM,IACP,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,IACF,KA9CC,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CA+CjC,CACN,CAAC;gBACJ,CAAC,CAAC,GACC,CACN,EACA,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CACtB,eAAK,SAAS,EAAC,iFAAiF,aAC9F,eAAM,SAAS,EAAC,+BAA+B,sDAA6C,EAC5F,MAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,wBAAwB,EAClC,OAAO,EAAE,aAAa,aAEtB,KAAC,QAAQ,mBAAa,MAAM,GAAG,aAExB,IACL,CACP,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,YAAG,SAAS,EAAC,2CAA2C,uHAEpD,CACL,CAAC,CAAC,CAAC,IAAI,IACE,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAEhF,MAAM,WAAW,GAAwB,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;IAC5D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAuB,IAAI,CAAC,CAAC;IACrE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QACD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,YAAY,EAAE;aAChB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;aACzC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO,CACL,KAAC,SAAS,IACR,IAAI,EAAE,KAAC,QAAQ,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EACxD,KAAK,EAAC,kBAAkB,EACxB,MAAM,EACJ,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAChC,eAAM,SAAS,EAAC,0FAA0F,YACvG,QAAQ,CAAC,MAAM,GACX,CACR,CAAC,CAAC,CAAC,SAAS,YAGd,KAAK,CAAC,CAAC,CAAC,CACP,YAAG,SAAS,EAAC,+BAA+B,0CAA8B,CAC3E,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CACtB,KAAC,OAAO,IAAC,KAAK,EAAC,wBAAmB,GAAG,CACtC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC1B,YAAG,SAAS,EAAC,oCAAoC,sCAA0B,CAC5E,CAAC,CAAC,CAAC,CACF,aAAI,SAAS,EAAC,sCAAsC,YACjD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,cAAsB,SAAS,EAAC,iDAAiD,aAC/E,eAAK,SAAS,EAAC,2CAA2C,aACxD,KAAC,MAAM,IAAC,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,EAAC,iBAAiB,GAAG,EAC1D,gBAAM,SAAS,EAAC,+BAA+B,uBACvC,eAAM,SAAS,EAAC,uCAAuC,YAAE,CAAC,CAAC,KAAK,GAAQ,IACzE,IACH,EACL,CAAC,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,CAClC,eAAK,SAAS,EAAC,mDAAmD,aAChE,eAAM,SAAS,EAAC,uBAAuB,0BAAiB,EACxD,gBAAM,SAAS,EAAC,sDAAsD,aACnE,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAC/B,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAC9B,gBAAM,SAAS,EAAC,wCAAwC,mBACnD,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,IACzB,CACR,CAAC,CAAC,CAAC,IAAI,IACH,IACH,CACP,CAAC,CAAC,CAAC,IAAI,KAnBD,CAAC,CAAC,SAAS,CAoBf,CACN,CAAC,GACC,CACN,GACS,CACb,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,WAAW,GAAwB,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;IACrE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,YAAY,EAAE;aAChB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,SAAS;gBAAE,OAAO;YACtB,WAAW,CAAC,CAAC,CAAC,CAAC;YACf,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK;gBAAE,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;QAC7D,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,iCAAiC;QACnC,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,MAAM,GAAG,KAAK,IAAmB,EAAE;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO;YAAE,OAAO;QAC7C,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YACrC,QAAQ,CAAC,OAAO,EAAE,KAAK,IAAI,iBAAiB,CAAC,CAAC;YAC9C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAA8B,CAAC;QAC/D,eAAe,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC;QAC3C,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CACL,KAAC,SAAS,IAAC,IAAI,EAAE,KAAC,KAAK,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EAAE,KAAK,EAAC,SAAS,YAC/E,eAAK,SAAS,EAAC,0BAA0B,aACvC,aAAG,SAAS,EAAC,SAAS,qCAAqB,KAAC,MAAM,IAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAC,iBAAiB,GAAG,SAAK,EACvG,YAAY,CAAC,CAAC,CAAC,CACd,aAAG,SAAS,EAAC,+BAA+B,kCACxB,GAAG,EACrB,eAAM,SAAS,EAAC,yCAAyC,YAAE,WAAW,CAAC,YAAY,CAAC,GAAQ,IAC1F,CACL,CAAC,CAAC,CAAC,IAAI,EACR,cAAK,SAAS,EAAC,kBAAkB,YAC/B,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,6BAE9E,GACL,IACF,GACI,CACb,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,KAAK,YAAY,CAAC;IACpC,OAAO,CACL,KAAC,SAAS,IAAC,IAAI,EAAE,KAAC,KAAK,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EAAE,KAAK,EAAC,oBAAoB,YAC1F,eAAK,SAAS,EAAC,0BAA0B,aACvC,iBAAO,SAAS,EAAC,qBAAqB,aACpC,eAAM,SAAS,EAAC,2CAA2C,wBAAe,EAC1E,kBACE,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC7C,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EACvC,SAAS,EAAC,mMAAmM,aAE5M,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,iBAAQ,KAAK,EAAC,EAAE,iCAA0B,CAAC,CAAC,CAAC,IAAI,EACzE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,iBAA0B,KAAK,EAAE,CAAC,CAAC,SAAS,YACzC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IADpF,CAAC,CAAC,SAAS,CAEf,CACV,CAAC,IACK,IACH,EACR,iBAAO,SAAS,EAAC,qBAAqB,aACpC,eAAM,SAAS,EAAC,2CAA2C,qCAA4B,EACvF,KAAC,KAAK,IACJ,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,SAAS,EACnB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EACjE,WAAW,EAAC,SAAS,EACrB,QAAQ,EAAE,IAAI,GACd,IACI,EACP,KAAK,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,0BAA0B,YAAE,KAAK,GAAK,CAAC,CAAC,CAAC,IAAI,EACnE,eAAK,SAAS,EAAC,yCAAyC,aACtD,eAAM,SAAS,EAAC,sCAAsC,4EAA8D,EACpH,MAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,MAAM,EAAE,aACxG,KAAC,KAAK,mBAAa,MAAM,GAAG,EAC3B,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EACjC,eAAM,SAAS,EAAC,6BAA6B,uBAAc,IACpD,IACL,IACF,GACI,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAEhF,MAAM,cAAc,GAAG,CAAC,eAAe,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AAEvE,+CAA+C;AAC/C,SAAS,IAAI,CAAC,QAAgB;IAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACnD,CAAC;AAID,MAAM,YAAY,GAAwB,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;IACtE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,uEAAuE;IACvE,kEAAkE;IAClE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAqD,EAAE,CAAC,CAAC;IACjG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAC1E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAA4B,IAAI,CAAC,CAAC;IAClE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEjC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,YAAY,EAAE;aAChB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,SAAS;gBAAE,OAAO;YACtB,WAAW,CAAC,CAAC,CAAC,CAAC;YACf,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK;gBAAE,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;QAC7D,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,0BAA0B;QAC5B,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,6DAA6D;IAC7D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5E,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,iEAAiE;IACjE,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,IAAI,MAAM,CAAe,CAAC;IACtF,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,IAAI,OAAO,EAAE,YAAY,CAAC;IACpE,MAAM,aAAa,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,OAAO,GAAG,aAAa,KAAK,SAAS,IAAI,MAAM,IAAI,aAAa,CAAC;IACvE,gFAAgF;IAChF,MAAM,KAAK,GAAe,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtF,MAAM,UAAU,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,MAAM,SAAS,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3E,MAAM,OAAO,GAAG,KAAK,IAAmB,EAAE;QACxC,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK;YAAE,OAAO;QACjC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YACrC,QAAQ,CAAC,OAAO,EAAE,KAAK,IAAI,eAAe,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAA8B,CAAC;QAC/D,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,IAAmB,EAAE;QACzC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM;YAAE,OAAO;QAClC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YACrC,+EAA+E;YAC/E,QAAQ,CAAC,OAAO,EAAE,KAAK,IAAI,6CAA6C,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CACL,KAAC,SAAS,IAAC,IAAI,EAAE,KAAC,QAAQ,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EAAE,KAAK,EAAC,UAAU,YACnF,eAAK,SAAS,EAAC,0BAA0B,aACvC,KAAC,OAAO,IAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,GAAI,EAC7C,aAAG,SAAS,EAAC,SAAS,yDACe,KAAC,MAAM,IAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAC,iBAAiB,GAAG,SACzF,IACA,GACI,CACb,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,SAAS,IAAC,IAAI,EAAE,KAAC,QAAQ,mBAAa,MAAM,EAAC,SAAS,EAAC,QAAQ,GAAG,EAAE,KAAK,EAAC,UAAU,YACnF,eAAK,SAAS,EAAC,0BAA0B,aACvC,iBAAO,SAAS,EAAC,qBAAqB,aACpC,eAAM,SAAS,EAAC,2CAA2C,wBAAe,EAC1E,kBACE,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC7C,QAAQ,EAAE,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EACzC,SAAS,EAAC,mMAAmM,aAE5M,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,iBAAQ,KAAK,EAAC,EAAE,iCAA0B,CAAC,CAAC,CAAC,IAAI,EACzE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,iBAA0B,KAAK,EAAE,CAAC,CAAC,SAAS,YACzC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IADpF,CAAC,CAAC,SAAS,CAEf,CACV,CAAC,IACK,IACH,EAER,KAAC,OAAO,IAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAI,EAErD,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CACrB,aAAG,SAAS,EAAC,+BAA+B,8BAC5B,GAAG,EACjB,eAAM,SAAS,EAAC,oDAAoD,YAAE,IAAI,CAAC,SAAS,CAAC,GAAQ,EAAC,GAAG,qFAE/F,CACL,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,0BAA0B,YAAE,KAAK,GAAK,CAAC,CAAC,CAAC,IAAI,EAEnE,eAAK,SAAS,EAAC,yCAAyC,aACtD,eAAM,SAAS,EAAC,sCAAsC,0EAE/C,EACN,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAClB,MAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,QAAQ,EAAE,IAAI,KAAK,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,EAAE,aACjG,KAAC,KAAK,mBAAa,MAAM,GAAG,EAC3B,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EACxC,eAAM,SAAS,EAAC,6BAA6B,uBAAc,IACpD,CACV,CAAC,CAAC,CAAC,CACF,MAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,YAAY,IAAI,CAAC,MAAM,EAChE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,aAE9B,KAAC,KAAK,mBAAa,MAAM,GAAG,EAC3B,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAC3C,eAAM,SAAS,EAAC,6BAA6B,uBAAc,IACpD,CACV,IACG,IACF,GACI,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE;IAC5F,EAAE,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE;IAC9C,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE;IACxG;QACE,EAAE,EAAE,eAAe;QACnB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,EAAE;YAC5C,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,IAAI,EAAE;SAC9C;QACD,SAAS,EAAE,YAAY;KACxB;CACF,CAAC;AAEF,2BAA2B;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/atoms/wallet.tsx"],"names":[],"mappings":"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"}
|
package/dist/catalog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,sCAAsC;IACtC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,sCAAsC;IACtC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,EA6RlC,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAA0C,CAAC"}
|
package/dist/catalog.js
CHANGED
|
@@ -42,9 +42,19 @@ export const ATOM_CATALOG = [
|
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
id: 'composer',
|
|
45
|
-
description: '
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
description: 'The DEFAULT post composer: write a kind:1 note and OPTIONALLY attach one ' +
|
|
46
|
+
'media/file (paperclip) — text-only posts publish via the "post" action ' +
|
|
47
|
+
'(toon_publish_unsigned); a post WITH media publishes via the "upload" ' +
|
|
48
|
+
'action (toon_upload, kind:1) so the file is carried as NIP-92 imeta and ' +
|
|
49
|
+
'renders inline in the feed. Wire BOTH actions. Use this for "make a post" ' +
|
|
50
|
+
'(with or without a picture/video); use media-uploader only when the user ' +
|
|
51
|
+
'just wants to upload a file with no note.',
|
|
52
|
+
writes: [{ name: 'toon_publish_unsigned' }, { name: 'toon_upload', spendy: true }],
|
|
53
|
+
propsSchema: {
|
|
54
|
+
placeholder: 'string',
|
|
55
|
+
label: 'string',
|
|
56
|
+
accept: "string (optional MIME filter for the attach picker, e.g. 'image/*')",
|
|
57
|
+
},
|
|
48
58
|
},
|
|
49
59
|
{
|
|
50
60
|
id: 'pay-confirm',
|
|
@@ -63,13 +73,20 @@ export const ATOM_CATALOG = [
|
|
|
63
73
|
},
|
|
64
74
|
{
|
|
65
75
|
id: 'media-uploader',
|
|
66
|
-
description: '
|
|
67
|
-
'
|
|
68
|
-
'
|
|
69
|
-
'
|
|
70
|
-
'
|
|
76
|
+
description: 'Compose & publish a media POST: pick a file (image, video, pdf, audio, …) ' +
|
|
77
|
+
'via the in-app picker, preview it, add an OPTIONAL caption/text, then ' +
|
|
78
|
+
'Publish — uploads to Arweave and publishes a reference event in one paid ' +
|
|
79
|
+
'write. The caption becomes the event content, so an image/video + text is ' +
|
|
80
|
+
'a real post (kind:20 picture, 21 video, 1063 NIP-94 file for everything ' +
|
|
81
|
+
'else — chosen automatically from the MIME). Spendy. This IS the ' +
|
|
82
|
+
'post-with-media path; use it whenever the user wants to post/upload a ' +
|
|
83
|
+
'picture, video, or file with or without a caption. No URL needed.',
|
|
71
84
|
writes: [{ name: 'toon_upload', spendy: true }],
|
|
72
|
-
propsSchema: {
|
|
85
|
+
propsSchema: {
|
|
86
|
+
label: 'string',
|
|
87
|
+
accept: "string (optional MIME filter, e.g. 'image/*'; default any)",
|
|
88
|
+
captionPlaceholder: 'string (optional placeholder for the caption field)',
|
|
89
|
+
},
|
|
73
90
|
},
|
|
74
91
|
// forge
|
|
75
92
|
{ id: 'repo-card', description: 'NIP-34 kind:30617 repository card.', kinds: [30617] },
|
package/dist/catalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAkBjF,MAAM,CAAC,MAAM,YAAY,GAAe;IACtC,SAAS;IACT;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,wDAAwD;QACrE,WAAW,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE,4BAA4B,EAAE;KAC/E;IACD,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,yBAAyB,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAC3F,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACvD;QACE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,2EAA2E;QACxF,WAAW,EAAE,EAAE,MAAM,EAAE,sCAAsC,EAAE;KAChE;IAED,SAAS;IACT,EAAE,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,0DAA0D,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;IAC7G;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EACT,2EAA2E;YAC3E,sEAAsE;YACtE,2EAA2E;YAC3E,wCAAwC;QAC1C,KAAK,EAAE,CAAC,CAAC,CAAC;QACV,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;KAC5C;IACD,EAAE,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,yDAAyD,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;IAC1G;QACE,EAAE,EAAE,eAAe;QACnB,WAAW,EAAE,4CAA4C;QACzD,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;QAC3C,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;KACjC;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -8,7 +8,28 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { type ReactNode } from 'react';
|
|
10
10
|
import { type ViewBridge } from './app-bridge/types.js';
|
|
11
|
+
import { type AtomBalance } from './atoms/types.js';
|
|
11
12
|
export { QUERY_TOOL, WRITE_TOOLS } from './tool-names.js';
|
|
13
|
+
export { buildReadBalances, parseBalancesPayload };
|
|
14
|
+
/**
|
|
15
|
+
* Validate the `toon_balances` wire contract and project it to the atom's
|
|
16
|
+
* `AtomBalance[]`.
|
|
17
|
+
*
|
|
18
|
+
* The contract (shared with the daemon) is a plain OBJECT
|
|
19
|
+
* `{ balances: AtomBalance[] }` carried via the MCP `structuredContent` →
|
|
20
|
+
* `ToolOutcome.data`. A missing payload (no `structuredContent`), a non-object,
|
|
21
|
+
* a bare array, or a missing / non-array `balances` key is a CONTRACT VIOLATION
|
|
22
|
+
* — a daemon↔views version skew or a transport that dropped the structured
|
|
23
|
+
* content — and must `throw` so it drives the wallet atom's error/retry path.
|
|
24
|
+
*
|
|
25
|
+
* The bug (#200): collapsing any of those violations into the same `[]` as a
|
|
26
|
+
* legitimate empty balance list renders a silent blank card that's
|
|
27
|
+
* indistinguishable from a real zero balance, with no retry. Only a genuine
|
|
28
|
+
* `{ balances: [] }` (an empty wallet) is a valid success that returns `[]`.
|
|
29
|
+
*/
|
|
30
|
+
declare function parseBalancesPayload(data: unknown): AtomBalance[];
|
|
31
|
+
/** Read on-chain wallet balances (`toon_balances`) for the wallet atom. */
|
|
32
|
+
declare function buildReadBalances(bridge: ViewBridge): () => Promise<AtomBalance[]>;
|
|
12
33
|
/** Top-level: validate an untrusted ViewSpec then render it, or show the error. */
|
|
13
34
|
export declare function ViewSpecRenderer({ spec, bridge, }: {
|
|
14
35
|
spec: unknown;
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAA6C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AASlF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAYxD,OAAO,EAML,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAC;AA2B1B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;AAuVnD;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,EAAE,CAU1D;AAED,2EAA2E;AAC3E,iBAAS,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAwB3E;AA0ED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,MAAM,GACP,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;CACpB,GAAG,SAAS,CAqBZ"}
|