@bananapus/nana-sdk-core 1.11.0 → 2.0.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/cjs/actions/JBSuckerAbi.d.ts +12 -2
- package/dist/cjs/actions/JBSuckerAbi.d.ts.map +1 -1
- package/dist/cjs/actions/JBSuckerAbi.js +12 -2
- package/dist/cjs/actions/JBSuckerAbi.js.map +1 -1
- package/dist/cjs/actions/projectMetadata.d.ts.map +1 -1
- package/dist/cjs/actions/projectMetadata.js +15 -9
- package/dist/cjs/actions/projectMetadata.js.map +1 -1
- package/dist/cjs/actions/suckerPairs.d.ts +26 -0
- package/dist/cjs/actions/suckerPairs.d.ts.map +1 -1
- package/dist/cjs/actions/suckerPairs.js +73 -39
- package/dist/cjs/actions/suckerPairs.js.map +1 -1
- package/dist/cjs/constants.d.ts +17 -7
- package/dist/cjs/constants.d.ts.map +1 -1
- package/dist/cjs/constants.js +45 -31
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/contracts.d.ts +6 -1
- package/dist/cjs/contracts.d.ts.map +1 -1
- package/dist/cjs/contracts.js +7 -1
- package/dist/cjs/contracts.js.map +1 -1
- package/dist/cjs/generated/juicebox.d.ts +8779 -6436
- package/dist/cjs/generated/juicebox.d.ts.map +1 -1
- package/dist/cjs/generated/juicebox.js +3027 -1244
- package/dist/cjs/generated/juicebox.js.map +1 -1
- package/dist/cjs/types.d.ts +13 -10
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/types.js +10 -6
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/utils/bendystraw.d.ts +19 -3
- package/dist/cjs/utils/bendystraw.d.ts.map +1 -1
- package/dist/cjs/utils/bendystraw.js +38 -10
- package/dist/cjs/utils/bendystraw.js.map +1 -1
- package/dist/cjs/utils/errors.d.ts +19 -0
- package/dist/cjs/utils/errors.d.ts.map +1 -0
- package/dist/cjs/utils/errors.js +32 -0
- package/dist/cjs/utils/errors.js.map +1 -0
- package/dist/cjs/utils/fee.d.ts +12 -0
- package/dist/cjs/utils/fee.d.ts.map +1 -1
- package/dist/cjs/utils/fee.js +13 -2
- package/dist/cjs/utils/fee.js.map +1 -1
- package/dist/cjs/utils/hook.d.ts +17 -4
- package/dist/cjs/utils/hook.d.ts.map +1 -1
- package/dist/cjs/utils/hook.js +60 -31
- package/dist/cjs/utils/hook.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +1 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/ipfs.d.ts +9 -1
- package/dist/cjs/utils/ipfs.d.ts.map +1 -1
- package/dist/cjs/utils/ipfs.js +13 -1
- package/dist/cjs/utils/ipfs.js.map +1 -1
- package/dist/cjs/utils/revnet.d.ts +1 -1
- package/dist/cjs/utils/revnet.d.ts.map +1 -1
- package/dist/cjs/utils/revnet.js +2 -1
- package/dist/cjs/utils/revnet.js.map +1 -1
- package/dist/cjs/utils/ruleset.d.ts +14 -0
- package/dist/cjs/utils/ruleset.d.ts.map +1 -1
- package/dist/cjs/utils/ruleset.js +19 -0
- package/dist/cjs/utils/ruleset.js.map +1 -1
- package/dist/cjs/utils/tx.d.ts +9 -0
- package/dist/cjs/utils/tx.d.ts.map +1 -1
- package/dist/cjs/utils/tx.js +10 -3
- package/dist/cjs/utils/tx.js.map +1 -1
- package/dist/cjs/utils/urn.d.ts +20 -1
- package/dist/cjs/utils/urn.d.ts.map +1 -1
- package/dist/cjs/utils/urn.js +54 -32
- package/dist/cjs/utils/urn.js.map +1 -1
- package/dist/cjs/v6/cashOut.d.ts +40 -6
- package/dist/cjs/v6/cashOut.d.ts.map +1 -1
- package/dist/cjs/v6/cashOut.js +54 -4
- package/dist/cjs/v6/cashOut.js.map +1 -1
- package/dist/cjs/v6/fees.d.ts +11 -8
- package/dist/cjs/v6/fees.d.ts.map +1 -1
- package/dist/cjs/v6/fees.js +12 -9
- package/dist/cjs/v6/fees.js.map +1 -1
- package/dist/cjs/v6/index.d.ts +1 -0
- package/dist/cjs/v6/index.d.ts.map +1 -1
- package/dist/cjs/v6/index.js +1 -0
- package/dist/cjs/v6/index.js.map +1 -1
- package/dist/cjs/v6/loans.d.ts +13 -4
- package/dist/cjs/v6/loans.d.ts.map +1 -1
- package/dist/cjs/v6/loans.js +14 -5
- package/dist/cjs/v6/loans.js.map +1 -1
- package/dist/cjs/v6/nft.d.ts +43 -7
- package/dist/cjs/v6/nft.d.ts.map +1 -1
- package/dist/cjs/v6/nft.js +69 -12
- package/dist/cjs/v6/nft.js.map +1 -1
- package/dist/cjs/v6/priceFeeds.d.ts +78 -0
- package/dist/cjs/v6/priceFeeds.d.ts.map +1 -0
- package/dist/cjs/v6/priceFeeds.js +109 -0
- package/dist/cjs/v6/priceFeeds.js.map +1 -0
- package/dist/cjs/v6/revnets.d.ts +21 -2
- package/dist/cjs/v6/revnets.d.ts.map +1 -1
- package/dist/cjs/v6/revnets.js +35 -3
- package/dist/cjs/v6/revnets.js.map +1 -1
- package/dist/cjs/v6/suckers.d.ts +11 -0
- package/dist/cjs/v6/suckers.d.ts.map +1 -1
- package/dist/cjs/v6/suckers.js +22 -1
- package/dist/cjs/v6/suckers.js.map +1 -1
- package/dist/cjs/v6/terminals.d.ts +24 -4
- package/dist/cjs/v6/terminals.d.ts.map +1 -1
- package/dist/cjs/v6/terminals.js +13 -2
- package/dist/cjs/v6/terminals.js.map +1 -1
- package/dist/esm/actions/JBSuckerAbi.d.ts +12 -2
- package/dist/esm/actions/JBSuckerAbi.d.ts.map +1 -1
- package/dist/esm/actions/JBSuckerAbi.js +12 -2
- package/dist/esm/actions/JBSuckerAbi.js.map +1 -1
- package/dist/esm/actions/projectMetadata.d.ts.map +1 -1
- package/dist/esm/actions/projectMetadata.js +16 -10
- package/dist/esm/actions/projectMetadata.js.map +1 -1
- package/dist/esm/actions/suckerPairs.d.ts +26 -0
- package/dist/esm/actions/suckerPairs.d.ts.map +1 -1
- package/dist/esm/actions/suckerPairs.js +75 -41
- package/dist/esm/actions/suckerPairs.js.map +1 -1
- package/dist/esm/constants.d.ts +17 -7
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +44 -30
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/contracts.d.ts +6 -1
- package/dist/esm/contracts.d.ts.map +1 -1
- package/dist/esm/contracts.js +6 -0
- package/dist/esm/contracts.js.map +1 -1
- package/dist/esm/generated/juicebox.d.ts +8779 -6436
- package/dist/esm/generated/juicebox.d.ts.map +1 -1
- package/dist/esm/generated/juicebox.js +9644 -7861
- package/dist/esm/generated/juicebox.js.map +1 -1
- package/dist/esm/types.d.ts +13 -10
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/types.js +10 -6
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils/bendystraw.d.ts +19 -3
- package/dist/esm/utils/bendystraw.d.ts.map +1 -1
- package/dist/esm/utils/bendystraw.js +36 -9
- package/dist/esm/utils/bendystraw.js.map +1 -1
- package/dist/esm/utils/errors.d.ts +19 -0
- package/dist/esm/utils/errors.d.ts.map +1 -0
- package/dist/esm/utils/errors.js +28 -0
- package/dist/esm/utils/errors.js.map +1 -0
- package/dist/esm/utils/fee.d.ts +12 -0
- package/dist/esm/utils/fee.d.ts.map +1 -1
- package/dist/esm/utils/fee.js +13 -2
- package/dist/esm/utils/fee.js.map +1 -1
- package/dist/esm/utils/hook.d.ts +17 -4
- package/dist/esm/utils/hook.d.ts.map +1 -1
- package/dist/esm/utils/hook.js +61 -32
- package/dist/esm/utils/hook.js.map +1 -1
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/ipfs.d.ts +9 -1
- package/dist/esm/utils/ipfs.d.ts.map +1 -1
- package/dist/esm/utils/ipfs.js +13 -1
- package/dist/esm/utils/ipfs.js.map +1 -1
- package/dist/esm/utils/revnet.d.ts +1 -1
- package/dist/esm/utils/revnet.d.ts.map +1 -1
- package/dist/esm/utils/revnet.js +2 -1
- package/dist/esm/utils/revnet.js.map +1 -1
- package/dist/esm/utils/ruleset.d.ts +14 -0
- package/dist/esm/utils/ruleset.d.ts.map +1 -1
- package/dist/esm/utils/ruleset.js +19 -0
- package/dist/esm/utils/ruleset.js.map +1 -1
- package/dist/esm/utils/tx.d.ts +9 -0
- package/dist/esm/utils/tx.d.ts.map +1 -1
- package/dist/esm/utils/tx.js +11 -4
- package/dist/esm/utils/tx.js.map +1 -1
- package/dist/esm/utils/urn.d.ts +20 -1
- package/dist/esm/utils/urn.d.ts.map +1 -1
- package/dist/esm/utils/urn.js +54 -32
- package/dist/esm/utils/urn.js.map +1 -1
- package/dist/esm/v6/cashOut.d.ts +40 -6
- package/dist/esm/v6/cashOut.d.ts.map +1 -1
- package/dist/esm/v6/cashOut.js +54 -4
- package/dist/esm/v6/cashOut.js.map +1 -1
- package/dist/esm/v6/fees.d.ts +11 -8
- package/dist/esm/v6/fees.d.ts.map +1 -1
- package/dist/esm/v6/fees.js +11 -8
- package/dist/esm/v6/fees.js.map +1 -1
- package/dist/esm/v6/index.d.ts +1 -0
- package/dist/esm/v6/index.d.ts.map +1 -1
- package/dist/esm/v6/index.js +1 -0
- package/dist/esm/v6/index.js.map +1 -1
- package/dist/esm/v6/loans.d.ts +13 -4
- package/dist/esm/v6/loans.d.ts.map +1 -1
- package/dist/esm/v6/loans.js +13 -4
- package/dist/esm/v6/loans.js.map +1 -1
- package/dist/esm/v6/nft.d.ts +43 -7
- package/dist/esm/v6/nft.d.ts.map +1 -1
- package/dist/esm/v6/nft.js +66 -11
- package/dist/esm/v6/nft.js.map +1 -1
- package/dist/esm/v6/priceFeeds.d.ts +78 -0
- package/dist/esm/v6/priceFeeds.d.ts.map +1 -0
- package/dist/esm/v6/priceFeeds.js +105 -0
- package/dist/esm/v6/priceFeeds.js.map +1 -0
- package/dist/esm/v6/revnets.d.ts +21 -2
- package/dist/esm/v6/revnets.d.ts.map +1 -1
- package/dist/esm/v6/revnets.js +34 -3
- package/dist/esm/v6/revnets.js.map +1 -1
- package/dist/esm/v6/suckers.d.ts +11 -0
- package/dist/esm/v6/suckers.d.ts.map +1 -1
- package/dist/esm/v6/suckers.js +21 -1
- package/dist/esm/v6/suckers.js.map +1 -1
- package/dist/esm/v6/terminals.d.ts +24 -4
- package/dist/esm/v6/terminals.d.ts.map +1 -1
- package/dist/esm/v6/terminals.js +13 -2
- package/dist/esm/v6/terminals.js.map +1 -1
- package/package.json +7 -1
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { PublicClient } from "viem";
|
|
2
|
+
import { JBChainId } from "../types.js";
|
|
3
|
+
import { JBAccountingContext } from "./terminals.js";
|
|
4
|
+
/**
|
|
5
|
+
* One `JBPrices.pricePerUnitOf` lookup a project's configuration depends on at
|
|
6
|
+
* runtime. Pairs are unordered — JBPrices falls back to the inverse feed
|
|
7
|
+
* itself, so reachability is symmetric.
|
|
8
|
+
*/
|
|
9
|
+
export interface JBFeedPair {
|
|
10
|
+
pricingCurrency: number;
|
|
11
|
+
unitCurrency: number;
|
|
12
|
+
/**
|
|
13
|
+
* The decimals the terminal itself passes: the context's decimals on the
|
|
14
|
+
* pay path, 18 (the store's max fixed-point fidelity) on the cross-context
|
|
15
|
+
* cash-out/surplus path.
|
|
16
|
+
*/
|
|
17
|
+
decimals: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Every `JBPrices` pair the terminal will resolve at runtime for a project
|
|
21
|
+
* accepting the given accounting contexts (the exact structs
|
|
22
|
+
* `buildAccountingContext` emits) with the given ruleset `baseCurrency`:
|
|
23
|
+
*
|
|
24
|
+
* - each `context.currency` ↔ `baseCurrency` (the pay/issuance conversion;
|
|
25
|
+
* skipped when equal — the terminal short-circuits), and
|
|
26
|
+
* - each `context.currency` ↔ each other `context.currency` (cash-out and
|
|
27
|
+
* surplus views convert every OTHER context's balance into the reclaimed
|
|
28
|
+
* context's currency, NOT the base currency; skipped for single-context
|
|
29
|
+
* projects).
|
|
30
|
+
*
|
|
31
|
+
* Pairs are deduped without direction. Feeds resolve direct or inverse only —
|
|
32
|
+
* never transitively through an intermediate currency — so every returned pair
|
|
33
|
+
* must be individually served by a feed or the project's payments and/or cash
|
|
34
|
+
* outs revert on-chain. Accounting contexts are immutable once set, so an
|
|
35
|
+
* unreachable pair must be caught BEFORE launch (see
|
|
36
|
+
* {@link probeFeedReachability}).
|
|
37
|
+
*/
|
|
38
|
+
export declare function requiredFeedPairs(accountingContexts: readonly JBAccountingContext[], baseCurrency: number): JBFeedPair[];
|
|
39
|
+
/**
|
|
40
|
+
* A feed-reachability verdict. Anything other than `ok` should block a launch:
|
|
41
|
+
* `missing` because the chain ANSWERED that a required pair has no feed, and
|
|
42
|
+
* `unavailable` because at least one probe could not be completed — an RPC
|
|
43
|
+
* failure is not proof of a missing feed, but it is not proof of a present one
|
|
44
|
+
* either, so it fails closed WITHOUT being reported as `missing`.
|
|
45
|
+
*/
|
|
46
|
+
export type FeedReachability = {
|
|
47
|
+
status: "ok";
|
|
48
|
+
} | {
|
|
49
|
+
status: "missing";
|
|
50
|
+
missing: JBFeedPair[];
|
|
51
|
+
} | {
|
|
52
|
+
status: "unavailable";
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Probe on-chain that every given `JBPrices` pair resolves, via the same
|
|
56
|
+
* `pricePerUnitOf` read the terminal performs at runtime. The default
|
|
57
|
+
* `projectId` 0 gives exactly the protocol-default-feed semantics a freshly
|
|
58
|
+
* launched project starts with — and, because the probe is on-chain, a later
|
|
59
|
+
* protocol-side default-feed registration unblocks the combination with no
|
|
60
|
+
* client release.
|
|
61
|
+
*
|
|
62
|
+
* A revert (as opposed to a transport failure) means the chain answered, so a
|
|
63
|
+
* pair is only ever reported `missing` on a proven
|
|
64
|
+
* `ContractFunctionRevertedError`; every other failure — timeouts, HTTP
|
|
65
|
+
* errors, a chain with no known `JBPrices` deployment — yields `unavailable`.
|
|
66
|
+
*
|
|
67
|
+
* @param client A viem public client on the given chain.
|
|
68
|
+
* @param args.chainId The chain to probe on.
|
|
69
|
+
* @param args.pairs The pairs to probe (see {@link requiredFeedPairs}).
|
|
70
|
+
* @param args.projectId The project id to resolve feeds for. Defaults to 0n
|
|
71
|
+
* (the protocol default feeds).
|
|
72
|
+
*/
|
|
73
|
+
export declare function probeFeedReachability(client: PublicClient, { chainId, pairs, projectId, }: {
|
|
74
|
+
chainId: JBChainId;
|
|
75
|
+
pairs: readonly JBFeedPair[];
|
|
76
|
+
projectId?: bigint;
|
|
77
|
+
}): Promise<FeedReachability>;
|
|
78
|
+
//# sourceMappingURL=priceFeeds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"priceFeeds.d.ts","sourceRoot":"","sources":["../../../src/v6/priceFeeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGrD;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,EAClD,YAAY,EAAE,MAAM,GACnB,UAAU,EAAE,CA0Bd;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAA;CAAE,GAC5C;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,KAAK,EACL,SAAc,GACf,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACA,OAAO,CAAC,gBAAgB,CAAC,CAuC3B"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.requiredFeedPairs = requiredFeedPairs;
|
|
4
|
+
exports.probeFeedReachability = probeFeedReachability;
|
|
5
|
+
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
6
|
+
const errors_js_1 = require("../utils/errors.js");
|
|
7
|
+
const types_js_1 = require("./types.js");
|
|
8
|
+
/**
|
|
9
|
+
* Every `JBPrices` pair the terminal will resolve at runtime for a project
|
|
10
|
+
* accepting the given accounting contexts (the exact structs
|
|
11
|
+
* `buildAccountingContext` emits) with the given ruleset `baseCurrency`:
|
|
12
|
+
*
|
|
13
|
+
* - each `context.currency` ↔ `baseCurrency` (the pay/issuance conversion;
|
|
14
|
+
* skipped when equal — the terminal short-circuits), and
|
|
15
|
+
* - each `context.currency` ↔ each other `context.currency` (cash-out and
|
|
16
|
+
* surplus views convert every OTHER context's balance into the reclaimed
|
|
17
|
+
* context's currency, NOT the base currency; skipped for single-context
|
|
18
|
+
* projects).
|
|
19
|
+
*
|
|
20
|
+
* Pairs are deduped without direction. Feeds resolve direct or inverse only —
|
|
21
|
+
* never transitively through an intermediate currency — so every returned pair
|
|
22
|
+
* must be individually served by a feed or the project's payments and/or cash
|
|
23
|
+
* outs revert on-chain. Accounting contexts are immutable once set, so an
|
|
24
|
+
* unreachable pair must be caught BEFORE launch (see
|
|
25
|
+
* {@link probeFeedReachability}).
|
|
26
|
+
*/
|
|
27
|
+
function requiredFeedPairs(accountingContexts, baseCurrency) {
|
|
28
|
+
const pairs = [];
|
|
29
|
+
const seen = new Set();
|
|
30
|
+
const add = (pricingCurrency, unitCurrency, decimals) => {
|
|
31
|
+
if (pricingCurrency === unitCurrency)
|
|
32
|
+
return;
|
|
33
|
+
const key = `${Math.min(pricingCurrency, unitCurrency)}:${Math.max(pricingCurrency, unitCurrency)}`;
|
|
34
|
+
if (seen.has(key))
|
|
35
|
+
return;
|
|
36
|
+
seen.add(key);
|
|
37
|
+
pairs.push({ pricingCurrency, unitCurrency, decimals });
|
|
38
|
+
};
|
|
39
|
+
for (const context of accountingContexts) {
|
|
40
|
+
add(context.currency, baseCurrency, context.decimals);
|
|
41
|
+
}
|
|
42
|
+
for (let i = 0; i < accountingContexts.length; i++) {
|
|
43
|
+
for (let j = i + 1; j < accountingContexts.length; j++) {
|
|
44
|
+
add(accountingContexts[i].currency, accountingContexts[j].currency, 18);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return pairs;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Probe on-chain that every given `JBPrices` pair resolves, via the same
|
|
51
|
+
* `pricePerUnitOf` read the terminal performs at runtime. The default
|
|
52
|
+
* `projectId` 0 gives exactly the protocol-default-feed semantics a freshly
|
|
53
|
+
* launched project starts with — and, because the probe is on-chain, a later
|
|
54
|
+
* protocol-side default-feed registration unblocks the combination with no
|
|
55
|
+
* client release.
|
|
56
|
+
*
|
|
57
|
+
* A revert (as opposed to a transport failure) means the chain answered, so a
|
|
58
|
+
* pair is only ever reported `missing` on a proven
|
|
59
|
+
* `ContractFunctionRevertedError`; every other failure — timeouts, HTTP
|
|
60
|
+
* errors, a chain with no known `JBPrices` deployment — yields `unavailable`.
|
|
61
|
+
*
|
|
62
|
+
* @param client A viem public client on the given chain.
|
|
63
|
+
* @param args.chainId The chain to probe on.
|
|
64
|
+
* @param args.pairs The pairs to probe (see {@link requiredFeedPairs}).
|
|
65
|
+
* @param args.projectId The project id to resolve feeds for. Defaults to 0n
|
|
66
|
+
* (the protocol default feeds).
|
|
67
|
+
*/
|
|
68
|
+
async function probeFeedReachability(client, { chainId, pairs, projectId = 0n, }) {
|
|
69
|
+
if (pairs.length === 0)
|
|
70
|
+
return { status: "ok" };
|
|
71
|
+
let prices;
|
|
72
|
+
try {
|
|
73
|
+
prices = (0, types_js_1.v6Address)("JBPrices", chainId);
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
return { status: "unavailable" };
|
|
77
|
+
}
|
|
78
|
+
let unverified = false;
|
|
79
|
+
const missing = [];
|
|
80
|
+
await Promise.all(pairs.map(async (pair) => {
|
|
81
|
+
try {
|
|
82
|
+
await client.readContract({
|
|
83
|
+
address: prices,
|
|
84
|
+
abi: juicebox_js_1.jbPricesAbi,
|
|
85
|
+
functionName: "pricePerUnitOf",
|
|
86
|
+
args: [
|
|
87
|
+
projectId,
|
|
88
|
+
BigInt(pair.pricingCurrency),
|
|
89
|
+
BigInt(pair.unitCurrency),
|
|
90
|
+
BigInt(pair.decimals),
|
|
91
|
+
],
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
if ((0, errors_js_1.isContractRevertError)(error)) {
|
|
96
|
+
missing.push(pair);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
unverified = true;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}));
|
|
103
|
+
if (missing.length > 0)
|
|
104
|
+
return { status: "missing", missing };
|
|
105
|
+
if (unverified)
|
|
106
|
+
return { status: "unavailable" };
|
|
107
|
+
return { status: "ok" };
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=priceFeeds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"priceFeeds.js","sourceRoot":"","sources":["../../../src/v6/priceFeeds.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/v6/revnets.d.ts
CHANGED
|
@@ -36,6 +36,14 @@ export type REVDeploy721TiersHookConfig = RevDeployArgs6[4];
|
|
|
36
36
|
* may post to, and at what minimum price/supply.
|
|
37
37
|
*/
|
|
38
38
|
export type REVCroptopAllowedPost = RevDeployArgs6[5][number];
|
|
39
|
+
/**
|
|
40
|
+
* Ruleset `extraMetadata` bit 2: allows `REVDeployer.deploySuckersFor` to extend
|
|
41
|
+
* the revnet to new chains while the stage is active (the deployer checks
|
|
42
|
+
* `(metadata >> 2) & 1`). `extraMetadata` is folded into the revnet's immutable
|
|
43
|
+
* encoded-configuration hash, so a stage without this bit can NEVER be extended —
|
|
44
|
+
* there is no later fix.
|
|
45
|
+
*/
|
|
46
|
+
export declare const REV_METADATA_ALLOW_SUCKER_DEPLOYMENT: number;
|
|
39
47
|
/**
|
|
40
48
|
* Build a `REVStageConfig` (spec-exact encodings, documented per field).
|
|
41
49
|
*
|
|
@@ -58,8 +66,13 @@ export type REVCroptopAllowedPost = RevDeployArgs6[5][number];
|
|
|
58
66
|
* - `issuanceCutPercent`: how much issuance drops each period, out of 1e9
|
|
59
67
|
* (`MAX_WEIGHT_CUT_PERCENT`; e.g. 20% = 200,000,000).
|
|
60
68
|
* - `cashOutTaxRate`: out of 10,000 (`MAX_CASH_OUT_TAX_RATE`). Any non-zero
|
|
61
|
-
* rate makes EVERY cash out incur the 2.5% protocol fee
|
|
62
|
-
*
|
|
69
|
+
* rate makes EVERY cash out incur the 2.5% protocol fee; zero-tax cash outs
|
|
70
|
+
* still pay it on `min(reclaimAmount, feeFreeSurplusOf)`, which is often
|
|
71
|
+
* but not always zero.
|
|
72
|
+
* - `extraMetadata`: extra metadata bits forwarded to hooks.
|
|
73
|
+
* {@link REV_METADATA_ALLOW_SUCKER_DEPLOYMENT} (bit 2) is ORed in by default
|
|
74
|
+
* so the revnet stays extendable to new chains; pass
|
|
75
|
+
* `allowSuckerDeployment: false` to opt out PERMANENTLY for the stage.
|
|
63
76
|
*/
|
|
64
77
|
export declare function buildRevnetStageConfig(args: {
|
|
65
78
|
startsAtOrAfter: number;
|
|
@@ -71,6 +84,12 @@ export declare function buildRevnetStageConfig(args: {
|
|
|
71
84
|
issuanceCutPercent?: number;
|
|
72
85
|
cashOutTaxRate?: number;
|
|
73
86
|
extraMetadata?: number;
|
|
87
|
+
/**
|
|
88
|
+
* Whether `REVDeployer.deploySuckersFor` may extend the revnet to new chains
|
|
89
|
+
* during this stage. Defaults to TRUE — a stage without the bit is
|
|
90
|
+
* un-extendable forever, since stages are immutable once deployed.
|
|
91
|
+
*/
|
|
92
|
+
allowSuckerDeployment?: boolean;
|
|
74
93
|
}): REVStageConfig;
|
|
75
94
|
/**
|
|
76
95
|
* Build a `REVDeployer.deployFor` transaction request deploying a new revnet
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revnets.d.ts","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACnE,OAAO,EAAE,cAAc,EAAe,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGrD,KAAK,aAAa,GAAG,oBAAoB,CACvC,OAAO,cAAc,EACrB,SAAS,EACT,WAAW,CACZ,CAAC;AAEF,KAAK,cAAc,GAAG,OAAO,CAC3B,aAAa,EACb,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAChE,CAAC;AAEF,KAAK,cAAc,GAAG,OAAO,CAC3B,aAAa,EACb,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAC9C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D
|
|
1
|
+
{"version":3,"file":"revnets.d.ts","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
package/dist/cjs/v6/revnets.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.REV_METADATA_ALLOW_SUCKER_DEPLOYMENT = void 0;
|
|
3
4
|
exports.buildRevnetStageConfig = buildRevnetStageConfig;
|
|
4
5
|
exports.buildDeployRevnetTx = buildDeployRevnetTx;
|
|
5
6
|
exports.buildAutoIssueTx = buildAutoIssueTx;
|
|
@@ -9,6 +10,14 @@ exports.isRevnetOperator = isRevnetOperator;
|
|
|
9
10
|
exports.getRevnetTiered721Hook = getRevnetTiered721Hook;
|
|
10
11
|
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
11
12
|
const types_js_1 = require("./types.js");
|
|
13
|
+
/**
|
|
14
|
+
* Ruleset `extraMetadata` bit 2: allows `REVDeployer.deploySuckersFor` to extend
|
|
15
|
+
* the revnet to new chains while the stage is active (the deployer checks
|
|
16
|
+
* `(metadata >> 2) & 1`). `extraMetadata` is folded into the revnet's immutable
|
|
17
|
+
* encoded-configuration hash, so a stage without this bit can NEVER be extended —
|
|
18
|
+
* there is no later fix.
|
|
19
|
+
*/
|
|
20
|
+
exports.REV_METADATA_ALLOW_SUCKER_DEPLOYMENT = 1 << 2;
|
|
12
21
|
/**
|
|
13
22
|
* Build a `REVStageConfig` (spec-exact encodings, documented per field).
|
|
14
23
|
*
|
|
@@ -31,10 +40,18 @@ const types_js_1 = require("./types.js");
|
|
|
31
40
|
* - `issuanceCutPercent`: how much issuance drops each period, out of 1e9
|
|
32
41
|
* (`MAX_WEIGHT_CUT_PERCENT`; e.g. 20% = 200,000,000).
|
|
33
42
|
* - `cashOutTaxRate`: out of 10,000 (`MAX_CASH_OUT_TAX_RATE`). Any non-zero
|
|
34
|
-
* rate makes EVERY cash out incur the 2.5% protocol fee
|
|
35
|
-
*
|
|
43
|
+
* rate makes EVERY cash out incur the 2.5% protocol fee; zero-tax cash outs
|
|
44
|
+
* still pay it on `min(reclaimAmount, feeFreeSurplusOf)`, which is often
|
|
45
|
+
* but not always zero.
|
|
46
|
+
* - `extraMetadata`: extra metadata bits forwarded to hooks.
|
|
47
|
+
* {@link REV_METADATA_ALLOW_SUCKER_DEPLOYMENT} (bit 2) is ORed in by default
|
|
48
|
+
* so the revnet stays extendable to new chains; pass
|
|
49
|
+
* `allowSuckerDeployment: false` to opt out PERMANENTLY for the stage.
|
|
36
50
|
*/
|
|
37
51
|
function buildRevnetStageConfig(args) {
|
|
52
|
+
const extraMetadata = args.allowSuckerDeployment === false
|
|
53
|
+
? (args.extraMetadata ?? 0)
|
|
54
|
+
: (args.extraMetadata ?? 0) | exports.REV_METADATA_ALLOW_SUCKER_DEPLOYMENT;
|
|
38
55
|
return {
|
|
39
56
|
startsAtOrAfter: args.startsAtOrAfter,
|
|
40
57
|
autoIssuances: args.autoIssuances ?? [],
|
|
@@ -44,7 +61,7 @@ function buildRevnetStageConfig(args) {
|
|
|
44
61
|
issuanceCutFrequency: args.issuanceCutFrequency ?? 0,
|
|
45
62
|
issuanceCutPercent: args.issuanceCutPercent ?? 0,
|
|
46
63
|
cashOutTaxRate: args.cashOutTaxRate ?? 0,
|
|
47
|
-
extraMetadata
|
|
64
|
+
extraMetadata,
|
|
48
65
|
};
|
|
49
66
|
}
|
|
50
67
|
/**
|
|
@@ -75,6 +92,21 @@ function buildRevnetStageConfig(args) {
|
|
|
75
92
|
function buildDeployRevnetTx(args) {
|
|
76
93
|
const address = (0, types_js_1.v6Address)("REVDeployer", args.chainId);
|
|
77
94
|
const revnetId = args.revnetId ?? 0n;
|
|
95
|
+
// An omnichain revnet whose stages lack the sucker-deployment bit can never
|
|
96
|
+
// be extended to new chains (or have failed sucker deploys retried): stages
|
|
97
|
+
// are immutable and `deploySuckersFor` checks the CURRENT stage's bit. Refuse
|
|
98
|
+
// to encode that foot-gun — `buildRevnetStageConfig` sets the bit by default.
|
|
99
|
+
if (args.suckerConfig.deployerConfigurations.length > 0) {
|
|
100
|
+
const blockedStage = args.config.stageConfigurations.findIndex((stage) => (Number(stage.extraMetadata) & exports.REV_METADATA_ALLOW_SUCKER_DEPLOYMENT) ===
|
|
101
|
+
0);
|
|
102
|
+
if (blockedStage !== -1) {
|
|
103
|
+
throw new Error(`Stage ${blockedStage} does not set REV_METADATA_ALLOW_SUCKER_DEPLOYMENT ` +
|
|
104
|
+
`(extraMetadata bit 2), so this cross-chain revnet could never deploy ` +
|
|
105
|
+
`suckers during that stage — permanently. Build stages with ` +
|
|
106
|
+
`buildRevnetStageConfig (which sets the bit by default), or OR the bit ` +
|
|
107
|
+
`into extraMetadata.`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
78
110
|
// The deployer forwards msg.value to `JBProjects.createFor` for new revnets and
|
|
79
111
|
// reverts on any value when initializing an existing project.
|
|
80
112
|
if (revnetId === 0n && args.creationFee === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/v6/suckers.d.ts
CHANGED
|
@@ -974,6 +974,17 @@ export declare function getV6SuckerPairs(client: PublicClient, { chainId, projec
|
|
|
974
974
|
chainId: JBChainId;
|
|
975
975
|
projectId: bigint;
|
|
976
976
|
}): Promise<JBSuckerPairV6[]>;
|
|
977
|
+
/**
|
|
978
|
+
* The key a sucker's accounting context is compared under across chains.
|
|
979
|
+
*
|
|
980
|
+
* The same logical asset carries a different address on every chain, so native
|
|
981
|
+
* and USDC normalize to shared keys and everything else keys by its own address
|
|
982
|
+
* in that chain's namespace. Decimals are part of the key: two contexts for the
|
|
983
|
+
* same asset at different decimals are not interchangeable amounts.
|
|
984
|
+
*
|
|
985
|
+
* Chains with no USDC deployment simply take the address-keyed branch.
|
|
986
|
+
*/
|
|
987
|
+
export declare function suckerAccountingContextKey(token: Address, chainId: JBChainId, decimals: number): string;
|
|
977
988
|
/**
|
|
978
989
|
* Read active and deprecated suckers for a project. Historical suckers remain
|
|
979
990
|
* relevant because their already-delivered leaves can still be claimed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suckers.d.ts","sourceRoot":"","sources":["../../../src/v6/suckers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,GAAG,EACH,YAAY,EAQb,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"suckers.d.ts","sourceRoot":"","sources":["../../../src/v6/suckers.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/v6/suckers.js
CHANGED
|
@@ -21,8 +21,10 @@ exports.buildBridgePrepareTx = buildBridgePrepareTx;
|
|
|
21
21
|
exports.buildBridgeClaimTx = buildBridgeClaimTx;
|
|
22
22
|
exports.buildToRemoteTx = buildToRemoteTx;
|
|
23
23
|
exports.getV6SuckerPairs = getV6SuckerPairs;
|
|
24
|
+
exports.suckerAccountingContextKey = suckerAccountingContextKey;
|
|
24
25
|
exports.getAllV6SuckerPairs = getAllV6SuckerPairs;
|
|
25
26
|
const viem_1 = require("viem");
|
|
27
|
+
const constants_js_1 = require("../constants.js");
|
|
26
28
|
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
27
29
|
const types_js_1 = require("./types.js");
|
|
28
30
|
const jbSuckerV6WriteAbi = [
|
|
@@ -764,10 +766,29 @@ async function getV6SuckerPairs(client, { chainId, projectId }) {
|
|
|
764
766
|
});
|
|
765
767
|
return pairs.map((pair) => ({
|
|
766
768
|
local: pair.local,
|
|
767
|
-
remote: (
|
|
769
|
+
remote: suckerBytes32ToAddress(pair.remote),
|
|
768
770
|
remoteChainId: pair.remoteChainId,
|
|
769
771
|
}));
|
|
770
772
|
}
|
|
773
|
+
/**
|
|
774
|
+
* The key a sucker's accounting context is compared under across chains.
|
|
775
|
+
*
|
|
776
|
+
* The same logical asset carries a different address on every chain, so native
|
|
777
|
+
* and USDC normalize to shared keys and everything else keys by its own address
|
|
778
|
+
* in that chain's namespace. Decimals are part of the key: two contexts for the
|
|
779
|
+
* same asset at different decimals are not interchangeable amounts.
|
|
780
|
+
*
|
|
781
|
+
* Chains with no USDC deployment simply take the address-keyed branch.
|
|
782
|
+
*/
|
|
783
|
+
function suckerAccountingContextKey(token, chainId, decimals) {
|
|
784
|
+
const normalized = token.toLowerCase();
|
|
785
|
+
if (normalized === constants_js_1.NATIVE_TOKEN.toLowerCase())
|
|
786
|
+
return `native@${decimals}`;
|
|
787
|
+
const usdc = constants_js_1.USDC_ADDRESSES[chainId];
|
|
788
|
+
if (usdc && normalized === usdc.toLowerCase())
|
|
789
|
+
return `usdc@${decimals}`;
|
|
790
|
+
return `${normalized}@${decimals}`;
|
|
791
|
+
}
|
|
771
792
|
/**
|
|
772
793
|
* Read active and deprecated suckers for a project. Historical suckers remain
|
|
773
794
|
* relevant because their already-delivered leaves can still be claimed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suckers.js","sourceRoot":"","sources":["../../../src/v6/suckers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"suckers.js","sourceRoot":"","sources":["../../../src/v6/suckers.ts"],"names":[],"mappings":";;;AA6PA,wCAiBC;AA0CD,wCAOC;AAKD,4CAWC;AAMD,0CA6BC;AAGD,4CAwBC;AAgDD,wDAQC;AAUD,sDA+IC;AAwBD,wDAgBC;AAMD,gDA0JC;AAGD,0DASC;AAqBD,4DAaC;AAGD,gEAaC;AAMD,0DA8BC;AAGD,8DAaC;AAGD,kDAQC;AAGD,wDAMC;AAoBD,oDAqCC;AAWD,gDAsBC;AAcD,0CA0BC;AAYD,4CAgBC;AAYD,gEAUC;AAMD,kDAgCC;AAtoCD,+BAWc;AACd,kDAA+D;AAC/D,0DAA+D;AAE/D,yCAAuC;AAEvC,MAAM,kBAAkB,GAAG;IACzB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACvE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACjE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACxE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC3D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAC/D;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACrE,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,SAAS;KAC3B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,gBAAgB;gBAC9B,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,YAAY,EAAE,eAAe;wBAC7B,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;4BAC3D,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;4BACjE;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,SAAS;gCACf,YAAY,EAAE,SAAS;6BACxB;4BACD;gCACE,IAAI,EAAE,qBAAqB;gCAC3B,IAAI,EAAE,SAAS;gCACf,YAAY,EAAE,SAAS;6BACxB;4BACD,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;yBAC/D;qBACF;oBACD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE;iBACpE;aACF;SACF;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;CACO,CAAC;AAEX,iFAAiF;AACpE,QAAA,iBAAiB,GAAG;IAC/B;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,MAAM;QACZ,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC/C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;oBACpC;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;wBACb,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE;4BACvC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;yBACnC;qBACF;iBACF;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACjC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;iBAClC;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;SACnC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAC7C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;oBACjC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE;oBACxC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;iBAClC;aACF;SACF;KACF;CACO,CAAC;AAEX,8EAA8E;AACjE,QAAA,yBAAyB,GAAG;IACvC,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,oBAAoB;IAC1B,MAAM,EAAE;QACN,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;QACvD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;QACjD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QACnD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QAClD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QACjD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QAC9D,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QAChE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;QACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;KACpD;CACO,CAAC;AAEX,yEAAyE;AAC5D,QAAA,iBAAiB,GAAG;IAC/B;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;CACO,CAAC;AAEX,+EAA+E;AAClE,QAAA,wBAAwB,GAAG;IACtC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;CACO,CAAC;AAEX;;;GAGG;AACU,QAAA,aAAa,GAAG;IAC3B,GAAG,yBAAiB;IACpB,iCAAyB;IACzB,GAAG,kBAAkB;IACrB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;CACO,CAAC;AAoBX,8DAA8D;AAC9D,SAAgB,cAAc,CAAC,EAC7B,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,QAAQ,GACS;IACjB,OAAO,IAAA,gBAAS,EACd,IAAA,0BAAmB,EACjB;QACE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;KACpB,EACD,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAChE,CACF,CAAC;AACJ,CAAC;AAkCD,oEAAoE;AACvD,QAAA,mBAAmB,GAAG,EAAE,CAAC;AAEtC,mDAAmD;AACtC,QAAA,sBAAsB,GACjC,oEAA2E,CAAC;AAE9E,8EAA8E;AAC9E,SAAgB,cAAc,CAAC,IAAS,EAAE,KAAU;IAClD,OAAO,IAAA,gBAAS,EACd,IAAA,0BAAmB,EACjB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAC1C,CAAC,IAAI,EAAE,KAAK,CAAC,CACd,CACF,CAAC;AACJ,CAAC;AAED,IAAI,qBAAqB,GAAiB,IAAI,CAAC;AAE/C,8EAA8E;AAC9E,SAAgB,gBAAgB;IAC9B,IAAI,qBAAqB;QAAE,OAAO,qBAAqB,CAAC;IACxD,MAAM,MAAM,GAAU,CAAC,eAAQ,CAAC,CAAC;IACjC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,2BAAmB,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,MAAM,CAAC,2BAAmB,CAAC,KAAK,8BAAsB,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,qBAAqB,GAAG,MAAM,CAAC;IAC/B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAC7B,UAA0B,EAC1B,KAAa;IAEb,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,IAAI,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,2BAAmB,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,OAAO,GAAG,QAAQ,GAAG,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAExE,MAAM,IAAI,GAAU,EAAE,CAAC;QACvB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CACP,cAAc,CACZ,KAAK,CAAC,MAAM,CAAC,EACb,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAClE,CACF,CAAC;QACJ,CAAC;QACD,KAAK,GAAG,IAAI,CAAC;QACb,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,KAA+B,CAAC;AACzC,CAAC;AAED,0EAA0E;AAC1E,SAAgB,gBAAgB,CAC9B,QAAa,EACb,KAAqB,EACrB,KAAa;IAEb,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,2BAAmB,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CACb,+BAA+B,2BAAmB,kBAAkB,CACrE,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,2BAAmB,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,OAAO;YACL,QAAQ,GAAG,CAAC;gBACV,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;gBACvC,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5C,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAuCD,SAAS,eAAe,CAAC,KAAa,EAAE,KAAa;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,GAAG,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,mFAAmF;AACnF,SAAgB,sBAAsB,CAAC,KAAU;IAC/C,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,eAAQ,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAA,iBAAU,EAAC,IAAA,eAAQ,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,qBAAqB,CACzC,MAAoB,EACpB,EACE,MAAM,EACN,KAAK,EACL,KAAK,EAAE,cAAc,EACrB,SAAS,GAAG,EAAE,EACd,OAAO,EACP,UAAU,GAAG,MAAO,EACpB,cAAc,GAAG,GAAG,GAKO;IAE7B,IAAI,SAAS,GAAG,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACrE,IAAI,UAAU,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,KAAK,GACT,cAAc;QACd,eAAe,CACb,CACE,MAAM,MAAM,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,MAAM;YACf,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,UAAU;YACxB,IAAI,EAAE,CAAC,KAAK,CAAC;SACd,CAAC,CACH,CAAC,IAAI,CAAC,KAAK,EACZ,cAAc,CACf,CAAC;IACJ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAC1D,IAAI,MAAM,GAAG,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8B,CAAC;IACtD,MAAM,OAAO,GAAG,CAAC,IAAqC,EAAE,EAAE;QACxD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;YACnE,IAAI,KAAK,IAAI,KAAK;gBAAE,SAAS;YAC7B,MAAM,MAAM,GAAG,cAAc,CAAC;gBAC5B,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW;gBACjC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,iBAAiB;gBAC7C,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,mBAAmB;gBACjD,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC3D,MAAM,IAAI,KAAK,CACb,+DAA+D,KAAK,GAAG,CACxE,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE;gBACjB,KAAK;gBACL,MAAM;gBACN,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;gBACnB,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW;gBACjC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,iBAAiB;gBAC7C,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,mBAAmB;gBACjD,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ;gBAC3B,WAAW,EAAE,GAAG,CAAC,WAAW;aAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,CACL,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC;YACpB,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,iCAAyB;YAChC,IAAI,EAAE,EAAE,KAAK,EAAE;YACf,SAAS;YACT,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAA2B,CAC9B,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,cAAc,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC7C,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OACE,MAAM,IAAI,SAAS;YACnB,OAAO,CAAC,IAAI,GAAG,KAAK;YACpB,MAAM,GAAG,cAAc,EACvB,CAAC;YACD,MAAM,UAAU,GACd,MAAM,GAAG,SAAS,GAAG,EAAE,GAAG,UAAU;gBAClC,CAAC,CAAC,MAAM,GAAG,UAAU,GAAG,EAAE;gBAC1B,CAAC,CAAC,SAAS,CAAC;YAChB,OAAO,CACL,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC;gBACpB,OAAO,EAAE,MAAM;gBACf,KAAK,EAAE,iCAAyB;gBAChC,IAAI,EAAE,EAAE,KAAK,EAAE;gBACf,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,IAAI;aACb,CAAC,CAA2B,CAC9B,CAAC;YACF,MAAM,IAAI,CAAC,CAAC;YACZ,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM;YACpC,MAAM,GAAG,UAAU,GAAG,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CACb,2EAA2E,KAAK,IAAI,CACrF,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,gBAAgB,CACjC,IAAI,CAAC,MAAM,EACX,eAAe,CACb,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EACjC,KAAK,GAAG,CAAC,CACV,EACD,KAAK,GAAG,CAAC,CACV,CAAC;IACF,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAuBD,kEAAkE;AAClE,SAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,KAAK,EACL,cAAc,EACd,SAAS,GAMV;IACC,IAAI,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAC9D,IAAI,KAAK,GAAG,cAAc,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,kBAAkB,CACtC,YAA0B,EAC1B,iBAA+B,EAC/B,EACE,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,WAAW,EAAE,oBAAoB,EACjC,GAAG,WAAW,EAWa;IAE7B,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAChD,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,YAAY;YACrB,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,UAAU;YACxB,IAAI,EAAE,CAAC,WAAW,CAAC;SACpB,CAAC;QACF,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,YAAY;YACrB,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,gBAAgB;YAC9B,IAAI,EAAE,CAAC,WAAW,CAAC;SACpB,CAAC;KACH,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,eAAe,CAC/B,MAAM,CAAC,kBAAkB,EACzB,mBAAmB,CACpB,CAAC;IACF,IAAI,SAAS,GAAG,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,iBAAiB,GACrB,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,eAAQ;QAC3C,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,sBAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACjD,IACE,iBAAiB;QACjB,oBAAoB;QACpB,iBAAiB,CAAC,WAAW,EAAE,KAAK,oBAAoB,CAAC,WAAW,EAAE,EACtE,CAAC;QACD,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,iBAAiB,IAAI,oBAAoB,CAAC;IAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,YAAY,EAAE;QACvD,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,WAAW;QAClB,KAAK;QACL,GAAG,WAAW;KACf,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAChD,iBAAiB,CAAC,YAAY,CAAC;YAC7B,OAAO,EAAE,iBAAiB;YAC1B,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,CAAC,WAAW,CAAC;SACpB,CAAC;QACF,OAAO,CAAC,GAAG,CACT,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClB,iBAAiB,CAAC,YAAY,CAAC;YAC7B,OAAO,EAAE,iBAAiB;YAC1B,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,oBAAoB;YAClC,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACxC,CAAC,CACH,CACF;KACF,CAAC,CAAC;IAEH,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,eAAQ,EAAE,CAAC;QAC1C,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACxD,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClE,cAAc,GAAG,KAAK,GAAG,CAAC,CAAC;gBAC3B,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;QACtC,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAC3C,IACE,YAAY,CAAC,WAAW,EAAE,KAAK,eAAQ;YACvC,YAAY,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,EAC9D,CAAC;YACD,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC;YACpD,QAAQ,EAAE,YAAY,CAAC,WAAW,EAAE,KAAK,eAAQ;YACjD,KAAK;YACL,cAAc;YACd,SAAS;SACV,CAAC,CAAC;QACH,MAAM,KAAK,GACT,MAAM,KAAK,WAAW;YACpB,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC;QACX,IACE,KAAK;YACL,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE;gBAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAC1B,CAAC;YACD,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,WAAW;YACX,WAAW;YACX,IAAI,EAAE;gBACJ,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB;gBAC/C,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;gBACnD,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC9B;YACD,QAAQ,EAAE,UAAU,CAAC,MAAM;YAC3B,UAAU,EAAE,UAAU,CAAC,IAAI;YAC3B,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,MAAM;YACN,UAAU;YACV,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAChF,SAAgB,uBAAuB,CAAC,QAA0B;IAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,WAAW;QAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;KACtB,CAAC;AACJ,CAAC;AAED,6EAA6E;AAChE,QAAA,4BAA4B,GAAsB;IAC7D,iBAAsB;IACtB,iBAAsB;IACtB,kBAAuB;IACvB,kBAAuB;IACvB,mBAAwB;IACxB,mBAAwB;CACzB,CAAC;AAEF,+EAA+E;AAClE,QAAA,8BAA8B,GAAsB;IAC/D,EAAE;IACF,iBAAsB;IACtB,kBAAuB;IACvB,kBAAuB;CACxB,CAAC;AAEF,0EAA0E;AACnE,KAAK,UAAU,wBAAwB,CAC5C,MAAyB,EACzB,QAA6C;IAE7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4EAA4E;AAC5E,SAAgB,0BAA0B,CACxC,SAA4B,EAC5B,KAAa,EACb,OAAO,GAAG,EAAE;IAEZ,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,SAAS,KAAK,MAAM,IAAI,KAAK,GAAG,OAAO,IAAI,EAAE,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,uBAAuB,CAC3C,MAAoB,EACpB,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;YACvC,OAAO,EAAE,MAAM;YACf,GAAG,EAAE,yBAAiB;YACtB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,4CAA4C,EAAE,CAAC;YAC1E,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;IAC5C,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,CAAC,aAAa,EAAE,UAAU,CAAU,EAAE,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;gBACvC,OAAO,EAAE,MAAM;gBACf,GAAG,EAAE,gCAAwB;gBAC7B,YAAY;aACb,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,kBAAW;gBAAE,OAAO,QAAQ,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,sEAAsE;QACxE,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,uEAAuE;AACvE,SAAgB,yBAAyB,CAAC,IAIzC;IACC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,MAAM;QACpB,GAAG,EAAE,qBAAa;QAClB,YAAY,EAAE,oBAA6B;QAC3C,IAAI,EAAE,EAAW;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;KACxB,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,SAAgB,mBAAmB,CAAC,IAAY,EAAE,KAAa;IAC7D,IAAI,IAAI,GAAG,EAAE,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3C,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,CAAC,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;IAC9D,OAAO,MAAM,CAAC,CAAC,UAAU,GAAG,QAAU,CAAC,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;AAChE,CAAC;AAED,qEAAqE;AACrE,SAAgB,sBAAsB,CAAC,KAAa;IAClD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,kBAAkB,GAAG,EAAE,EACvB,KAAK,EACL,QAAQ,GAAG,eAAQ,GASpB;IAOC,OAAO;QACL,OAAO;QACP,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,qBAAa;QAClB,YAAY,EAAE,SAAS;QACvB,IAAI,EAAE;YACJ,iBAAiB;YACjB,iFAAiF;YACjF,IAAA,UAAG,EAAC,WAAW,CAAC,WAAW,EAAa,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACvD,kBAAkB;YAClB,KAAK;YACL,QAAQ;SACT;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,kBAAkB,CAAC,EACjC,OAAO,EACP,MAAM,EACN,KAAK,GAKN;IAOC,OAAO;QACL,OAAO;QACP,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,qBAAa;QAClB,YAAY,EAAE,OAAO;QACrB,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,EACN,KAAK,EACL,KAAK,GAAG,EAAE,GAMX;IAQC,OAAO;QACL,OAAO;QACP,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,qBAAa;QAClB,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,CAAC,KAAK,CAAC;QACb,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,gBAAgB,CACpC,MAAoB,EACpB,EAAE,OAAO,EAAE,SAAS,EAA6C;IAEjE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,IAAA,oBAAS,EAAC,kBAAkB,EAAE,OAAO,CAAC;QAC/C,GAAG,EAAE,iCAAmB;QACxB,YAAY,EAAE,eAAe;QAC7B,IAAI,EAAE,CAAC,SAAS,CAAC;KAClB,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,IAAI,CAAC,aAAa;KAClC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,0BAA0B,CACxC,KAAc,EACd,OAAkB,EAClB,QAAgB;IAEhB,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvC,IAAI,UAAU,KAAK,2BAAY,CAAC,WAAW,EAAE;QAAE,OAAO,UAAU,QAAQ,EAAE,CAAC;IAC3E,MAAM,IAAI,GAAG,6BAAc,CAAC,OAAO,CAAwB,CAAC;IAC5D,IAAI,IAAI,IAAI,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE;QAAE,OAAO,QAAQ,QAAQ,EAAE,CAAC;IACzE,OAAO,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAC;AACrC,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAoB,EACpB,EAAE,OAAO,EAAE,SAAS,EAA6C;IAEjE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QACxC,OAAO,EAAE,IAAA,oBAAS,EAAC,kBAAkB,EAAE,OAAO,CAAC;QAC/C,GAAG,EAAE,iCAAmB;QACxB,YAAY,EAAE,cAAc;QAC5B,IAAI,EAAE,CAAC,SAAS,CAAC;KAClB,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,CAChB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC1B,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChD,MAAM,CAAC,YAAY,CAAC;gBAClB,OAAO,EAAE,KAAK;gBACd,GAAG,EAAE,yBAAiB;gBACtB,YAAY,EAAE,MAAM;aACrB,CAAC;YACF,MAAM,CAAC,YAAY,CAAC;gBAClB,OAAO,EAAE,KAAK;gBACd,GAAG,EAAE,yBAAiB;gBACtB,YAAY,EAAE,aAAa;aAC5B,CAAC;SACH,CAAC,CAAC;QACH,OAAO;YACL,KAAK;YACL,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC;YACtC,aAAa;SACd,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -10,8 +10,17 @@ export interface ResolvedPaymentTerminal {
|
|
|
10
10
|
address: Address;
|
|
11
11
|
/**
|
|
12
12
|
* True when the project has no primary terminal for the token and the
|
|
13
|
-
* JBRouterTerminalRegistry (
|
|
14
|
-
*
|
|
13
|
+
* JBRouterTerminalRegistry (which exposes the same `pay` signature) is used
|
|
14
|
+
* instead.
|
|
15
|
+
*
|
|
16
|
+
* The registry is NOT a universal terminal: it forwards to a per-project
|
|
17
|
+
* resolved terminal and reverts `JBRouterTerminalRegistry_TerminalNotSet`
|
|
18
|
+
* when none resolves — the cold-start case, where a project has no pinned
|
|
19
|
+
* terminal and has not reached the default-terminal threshold. So `isRouter`
|
|
20
|
+
* means "the router is where the payment would go", not "this token is
|
|
21
|
+
* payable". Probe routability with `previewPayFor` before offering the
|
|
22
|
+
* route: a `previewPayFor` call against the resolved address reverts for a
|
|
23
|
+
* cold-start project and succeeds otherwise.
|
|
15
24
|
*/
|
|
16
25
|
isRouter: boolean;
|
|
17
26
|
}
|
|
@@ -37,8 +46,19 @@ export interface JBAccountingContext {
|
|
|
37
46
|
*
|
|
38
47
|
* Reads `JBDirectory.primaryTerminalOf(projectId, token)`. When the project has no
|
|
39
48
|
* primary terminal for the token (zero address), falls back to the
|
|
40
|
-
* JBRouterTerminalRegistry
|
|
41
|
-
*
|
|
49
|
+
* JBRouterTerminalRegistry, which exposes the same `pay` signature.
|
|
50
|
+
*
|
|
51
|
+
* The registry is a FORWARDER, not a universal terminal: it resolves a
|
|
52
|
+
* per-project terminal (the project's pinned one, else the threshold-resolved
|
|
53
|
+
* default) and reverts `JBRouterTerminalRegistry_TerminalNotSet` when neither
|
|
54
|
+
* exists (`JBRouterTerminalRegistry.sol:429-432`, reached from both `pay` and
|
|
55
|
+
* `previewPayFor`). Its view surface is deliberately softer — an unresolved
|
|
56
|
+
* `accountingContextForTokenOf` returns an EMPTY context rather than reverting
|
|
57
|
+
* (`:182-186`) — so an empty context is not proof the token is unsupported.
|
|
58
|
+
*
|
|
59
|
+
* A returned `isRouter: true` therefore does not mean the token is payable.
|
|
60
|
+
* Probe routability with {@link previewPay} against the returned address: it
|
|
61
|
+
* reverts for a cold-start project and returns a preview otherwise.
|
|
42
62
|
*
|
|
43
63
|
* @param client A viem public client on the given chain.
|
|
44
64
|
* @param args.chainId The chain to resolve on.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminals.d.ts","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB
|
|
1
|
+
{"version":3,"file":"terminals.d.ts","sourceRoot":"","sources":["../../../src/v6/terminals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;;OAaG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,EACT,KAAK,GACN,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB,GACA,OAAO,CAAC,uBAAuB,CAAC,CAgBlC;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAOzC"}
|