@continuumdao/ctm-mpc-defi 0.2.55 → 0.2.57
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/agent/catalog.cjs +692 -310
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +279 -99
- package/dist/agent/catalog.js +687 -312
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/aave-v4/SKILL.md +26 -3
- package/dist/agent/skills/aerodrome/SKILL.md +3 -1
- package/dist/agent/skills/circle-cctp/SKILL.md +5 -4
- package/dist/agent/skills/continuum-dao-marketplace/SKILL.md +4 -4
- package/dist/agent/skills/curve-dao/SKILL.md +2 -2
- package/dist/agent/skills/uniswap-v4/SKILL.md +2 -2
- package/dist/index.cjs +165 -19
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +166 -20
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs +198 -15
- package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/aave-v4/index.d.ts +62 -7
- package/dist/protocols/evm/aave-v4/index.js +189 -16
- package/dist/protocols/evm/aave-v4/index.js.map +1 -1
- package/dist/protocols/evm/aerodrome/index.cjs +152 -63
- package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
- package/dist/protocols/evm/aerodrome/index.d.ts +30 -58
- package/dist/protocols/evm/aerodrome/index.js +151 -64
- package/dist/protocols/evm/aerodrome/index.js.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.cjs +77 -19
- package/dist/protocols/evm/circle-cctp/index.cjs.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.d.ts +53 -3
- package/dist/protocols/evm/circle-cctp/index.js +76 -20
- package/dist/protocols/evm/circle-cctp/index.js.map +1 -1
- package/dist/protocols/evm/compound-v3/index.cjs +115 -2
- package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
- package/dist/protocols/evm/compound-v3/index.js +116 -3
- package/dist/protocols/evm/compound-v3/index.js.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.cjs +288 -32
- package/dist/protocols/evm/continuum-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.d.ts +14 -1
- package/dist/protocols/evm/continuum-dao/index.js +287 -33
- package/dist/protocols/evm/continuum-dao/index.js.map +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs +120 -5
- package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/curve-dao/index.js +120 -5
- package/dist/protocols/evm/curve-dao/index.js.map +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs +121 -6
- package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
- package/dist/protocols/evm/euler-v2/index.js +121 -6
- package/dist/protocols/evm/euler-v2/index.js.map +1 -1
- package/dist/protocols/evm/morpho/index.cjs +129 -57
- package/dist/protocols/evm/morpho/index.cjs.map +1 -1
- package/dist/protocols/evm/morpho/index.d.ts +2 -1
- package/dist/protocols/evm/morpho/index.js +129 -58
- package/dist/protocols/evm/morpho/index.js.map +1 -1
- package/dist/protocols/evm/pendle/index.cjs +129 -10
- package/dist/protocols/evm/pendle/index.cjs.map +1 -1
- package/dist/protocols/evm/pendle/index.js +129 -10
- package/dist/protocols/evm/pendle/index.js.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.cjs +164 -17
- package/dist/protocols/evm/uniswap-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.js +165 -18
- package/dist/protocols/evm/uniswap-v4/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -4930,6 +4930,8 @@ type MarketplaceOrder = {
|
|
|
4930
4930
|
creator: string;
|
|
4931
4931
|
seller?: string;
|
|
4932
4932
|
buyer?: string;
|
|
4933
|
+
/** NFT owner from the catalog. Listings often omit `seller` and set this to the lister. */
|
|
4934
|
+
currentOwner?: string;
|
|
4933
4935
|
paymentToken: string;
|
|
4934
4936
|
price: string;
|
|
4935
4937
|
deadlineUnix: string;
|
|
@@ -4950,6 +4952,8 @@ type MarketplaceOrder = {
|
|
|
4950
4952
|
unlockTime?: string;
|
|
4951
4953
|
unlockTimeAt?: string;
|
|
4952
4954
|
keygen?: string;
|
|
4955
|
+
/** Set when a catalog query includes `viewer`. `delist` means that address already sells this veCTM. */
|
|
4956
|
+
viewerAction?: 'delist' | 'buy' | 'none';
|
|
4953
4957
|
};
|
|
4954
4958
|
type MarketplaceAuction = {
|
|
4955
4959
|
tokenId: string;
|
|
@@ -5148,6 +5152,7 @@ declare function applyMarketplaceEvent(book: FoldedMarketplaceBook, ev: Marketpl
|
|
|
5148
5152
|
* Events must be in chain order.
|
|
5149
5153
|
*/
|
|
5150
5154
|
declare function foldMarketplaceEvents(events: readonly MarketplaceFoldEvent[], initial?: FoldedMarketplaceBook): FoldedMarketplaceBook;
|
|
5155
|
+
/** Stored Pending means no bid has met the reserve. The auction is already live, so callers see Active. */
|
|
5151
5156
|
declare function deriveAuctionStatus(auction: MarketplaceAuction, nowUnix: number): string;
|
|
5152
5157
|
declare function applyDerivedStatuses(book: FoldedMarketplaceBook, nowUnix: number): FoldedMarketplaceBook;
|
|
5153
5158
|
declare function isLiveAuctionStatus(status: string): boolean;
|
|
@@ -5378,6 +5383,8 @@ type MarketplaceSearchHit = {
|
|
|
5378
5383
|
deadlineAt: string;
|
|
5379
5384
|
attached: boolean;
|
|
5380
5385
|
fillable: boolean;
|
|
5386
|
+
/** buy or bid for someone else's order. delist when this KeyGen is the listing seller. */
|
|
5387
|
+
action: 'buy' | 'delist' | 'bid';
|
|
5381
5388
|
};
|
|
5382
5389
|
type MarketplaceSearchResult = {
|
|
5383
5390
|
sort: MarketplaceSearchSort;
|
|
@@ -5581,8 +5588,14 @@ declare function marketplaceVeCtmReceivedBy(detail: Record<string, unknown> | nu
|
|
|
5581
5588
|
tokenId: string;
|
|
5582
5589
|
} | null;
|
|
5583
5590
|
|
|
5591
|
+
type ContinuumDaoMcpPurposeAction = 'createLock' | 'increaseAmount' | 'increaseUnlockTime' | 'split' | 'merge' | 'withdraw' | 'liquidate' | 'delegate' | 'undelegate' | 'transfer' | 'attach' | 'requestDetach' | 'proposeBravo' | 'proposeDelta' | 'castVoteBravo' | 'castVoteDelta' | 'execute' | 'cancel' | 'forumSignIn' | 'marketplaceCreateListing' | 'marketplaceDelist' | 'marketplaceFulfillListing' | 'marketplaceCreateOffering' | 'marketplaceRescind' | 'marketplaceFulfillOffering' | 'marketplaceCreateAuction' | 'marketplaceCancelAuction' | 'marketplaceAuctionBid' | 'marketplaceSettleAuction';
|
|
5592
|
+
/** Action sentence stored on a ContinuumDAO multi-sign request when purposeText is omitted. */
|
|
5593
|
+
declare function buildContinuumDaoMcpPurpose(action: ContinuumDaoMcpPurposeAction, input: Record<string, unknown>): string;
|
|
5594
|
+
/** Fill purposeText from the tool action when the agent omits it. A supplied purpose is kept. */
|
|
5595
|
+
declare function preprocessContinuumDaoPurpose(action: ContinuumDaoMcpPurposeAction, raw: unknown): unknown;
|
|
5596
|
+
|
|
5584
5597
|
declare const continuumDaoMarketplaceProtocolModule: ProtocolModule;
|
|
5585
5598
|
|
|
5586
5599
|
declare const continuumDaoProtocolModule: ProtocolModule;
|
|
5587
5600
|
|
|
5588
|
-
export { ATTACH_VECTM_SIGNATURE, AUCTION_STATUS, type AbiParam, BRAVO_SUPPORT_LABELS, CONTINUUM_DAO_APPROVE_FALLBACK, CONTINUUM_DAO_ATTACH_FALLBACK, CONTINUUM_DAO_CANCEL_FALLBACK, CONTINUUM_DAO_CREATE_LOCK_FALLBACK, CONTINUUM_DAO_DELEGATE_FALLBACK, CONTINUUM_DAO_DEPLOYMENTS, CONTINUUM_DAO_DETACH_FALLBACK, CONTINUUM_DAO_ETHEREUM_CHAIN_ID, CONTINUUM_DAO_EVM_TYPES, CONTINUUM_DAO_EXECUTE_FALLBACK, CONTINUUM_DAO_GOVERNANCE_API, CONTINUUM_DAO_GOV_EVM_TYPES, CONTINUUM_DAO_INCREASE_AMOUNT_FALLBACK, CONTINUUM_DAO_INCREASE_UNLOCK_FALLBACK, CONTINUUM_DAO_LINEA_CATALOG_NETWORK, CONTINUUM_DAO_LINEA_CHAIN_ID, CONTINUUM_DAO_LINEA_GOVERNOR_ADDRESS, CONTINUUM_DAO_LINEA_GOVERNOR_LEGACY_ADDRESS, CONTINUUM_DAO_LINEA_SEPOLIA_CHAIN_ID, CONTINUUM_DAO_LIQUIDATE_FALLBACK, CONTINUUM_DAO_MARKETPLACE_API, CONTINUUM_DAO_MARKETPLACE_PROTOCOL_ID, CONTINUUM_DAO_MERGE_FALLBACK, CONTINUUM_DAO_PROPOSE_FALLBACK, CONTINUUM_DAO_PROTOCOL_ID, CONTINUUM_DAO_SPLIT_FALLBACK, CONTINUUM_DAO_TRANSFER_FALLBACK, CONTINUUM_DAO_VOTE_FALLBACK, CONTINUUM_DAO_WITHDRAW_FALLBACK, CTM_FEE_RATE_SCALE, CTM_TOKEN_ADDRESS, CTM_TOKEN_DECIMALS, CTM_TOKEN_NAME, CTM_TOKEN_SYMBOL, type ComposeDraftRow, type ComposeEncodedAction, type ComposeFunctionMatch, type ComposeParamCheck, type ContinuumDaoCommonArgs, type ContinuumDaoComposeProposalActionArgs, type ContinuumDaoComposeProposalActionResult, type ContinuumDaoDefaultAsset, type ContinuumDaoDeployment, type ContinuumDaoExplainProposalResult, type ContinuumDaoFetchProposalVotesInput, type ContinuumDaoFetchProposalVotesResult, type ContinuumDaoGovConfiguration, type ContinuumDaoLiveProposalsResult, type ContinuumDaoNodeInfo, type ContinuumDaoNodeInfoTuple, type ContinuumDaoProposalCatalog, type ContinuumDaoProposalVotesDeps, type ContinuumDaoRegisterProposalPayload, type ContinuumDaoSimulateProposalResult, type ExplainedAction, type ExplainedOption, FEE_TIER_NAMES, FORUM_GOVERNANCE_SECTIONS, FORUM_IDEA_SECTION, FORUM_LOGIN_DELIVERY_KIND, FOUNDRY_PROPOSAL_REQUIRED_SERVERS, type FeeAlternativeCandidate, type FeeAlternativeExample, type FeeAlternativePayment, type FeeAlternativeQuote, type FoldedMarketplaceBook, type ForumGovernanceSection, type ForumSignInEligible, type FoundryGovBatch, type FoundryGovLeg, type FoundryProposalScriptFile, type FoundryProposalSimulatePlan, GOVERNOR_STATE, GOVERNOR_STATE_LABELS, type GovActionInput, type GovOptionInput, INCREASE_UNLOCK_TIME_SIGNATURE, type LiveProposalBucket, type LiveProposalRow, MARKETPLACE_APPROVE_FALLBACK, MARKETPLACE_AUCTION_CREATE_FALLBACK, MARKETPLACE_BID_FALLBACK, MARKETPLACE_FULFILL_FALLBACK, MARKETPLACE_LISTING_FALLBACK, MARKETPLACE_OFFERING_FALLBACK, MARKETPLACE_SETTLE_FALLBACK, MARKETPLACE_USDC_LINEA_ADDRESS, MARKETPLACE_WETH_LINEA_ADDRESS, MARKET_ORDER_STATUS, MAXTIME_SECONDS, MULTISIGN_AGENT_WALLET_LINEA_ADDRESS, type MarketplaceAction, type MarketplaceActivity, type MarketplaceAuction, type MarketplaceAuctionStatus, type MarketplaceAuctionTuple, type MarketplaceBid, type MarketplaceCatalogSource, type MarketplaceConfig, type MarketplaceFeePreview, type MarketplaceFeeTier, type MarketplaceFoldEvent, type MarketplaceIndexCache, type MarketplaceListResult, type MarketplaceOrder, type MarketplaceOrderKind, type MarketplaceOrderStatus, type MarketplaceOrderTuple, type MarketplacePaymentToken, type MarketplacePlanInput, type MarketplacePlanSnapshot, type MarketplaceQuery, type MarketplaceSearchCandidate, type MarketplaceSearchHit, type MarketplaceSearchKind, type MarketplaceSearchQuery, type MarketplaceSearchResult, type MarketplaceSearchSort, type MarketplaceTokenPayload, PROPOSAL_TYPE_LABELS, PROPOSAL_TYPE_TO_FORUM_SECTION, type PlannedMarketplaceStep, type ProposalActionSimResult, type ProposalBatchSimResult, type ProposalCatalogAction, type ProposalCatalogAuth, type ProposalCatalogBuild, type ProposalCatalogDocument, type ProposalVoteLogLike, type ProposalVoteRow, type ResolvedGovernorProposalRef, type SimulatedGovBatch, type SimulatedGovLeg, VECTM_DEFAULT_MINIMUM_LOCK_WEI, VECTM_LIQ_MIN_LOCKED_WEI, VECTM_LIQ_PENALTY_DEN, VECTM_LIQ_PENALTY_NUM, VECTM_MAX_LOCK_WEEKS, VECTM_NODE_INFO_TUPLE, VECTM_TOKEN_NAME, VECTM_TOKEN_SYMBOL, VOTE_CAST_EVENT, VOTE_CAST_WITH_PARAMS_EVENT, VOTING_ESCROW_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_START_BLOCK, type VeCtmLockState, type VoterNodeAttachment, WEEK_SECONDS, addressInCommitteeList, applyDerivedStatuses, applyForumSectionCheck, applyMarketplaceEvent, applyNodeAttachments, assertContinuumDaoForumDeleteInput, assertContinuumDaoForumMarkReadInput, assertContinuumDaoForumRecentInput, assertContinuumDaoForumSearchInput, assertContinuumDaoForumTopicKey, assertContinuumDaoProposalSimulation, assertCreateLockAmount, assertCtmAmountAtLeastMinimum, assertDelegatee, assertExecutorOwnsLock, assertIncreaseAmount, assertIncreaseUnlockTime, assertLiquidate, assertLockDurationSeconds, assertMerge, assertProposalCatalogConstants, assertSplitExtracted, assertTransfer, assertUndelegateNotAlreadySelf, assertWithdraw, auctionCandidate, auctionStatusName, bravoSupportLabel, bucketGovernorState, buildBravoProposalArgs, buildDeltaProposalArgs, buildEvmMultisignBodyContinuumDaoAttachVeCtm, buildEvmMultisignBodyContinuumDaoAttachVeCtmFromMcp, buildEvmMultisignBodyContinuumDaoCancel, buildEvmMultisignBodyContinuumDaoCastVoteBravo, buildEvmMultisignBodyContinuumDaoCastVoteBravoFromMcp, buildEvmMultisignBodyContinuumDaoCastVoteDelta, buildEvmMultisignBodyContinuumDaoCreateLock, buildEvmMultisignBodyContinuumDaoDelegate, buildEvmMultisignBodyContinuumDaoExecute, buildEvmMultisignBodyContinuumDaoForumSignIn, buildEvmMultisignBodyContinuumDaoIncreaseAmount, buildEvmMultisignBodyContinuumDaoIncreaseUnlockTime, buildEvmMultisignBodyContinuumDaoLiquidate, buildEvmMultisignBodyContinuumDaoMarketplaceAuctionBid, buildEvmMultisignBodyContinuumDaoMarketplaceCancelAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateListing, buildEvmMultisignBodyContinuumDaoMarketplaceCreateOffering, buildEvmMultisignBodyContinuumDaoMarketplaceDelist, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillListing, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillOffering, buildEvmMultisignBodyContinuumDaoMarketplaceRescind, buildEvmMultisignBodyContinuumDaoMarketplaceSettleAuction, buildEvmMultisignBodyContinuumDaoMerge, buildEvmMultisignBodyContinuumDaoProposeBravo, buildEvmMultisignBodyContinuumDaoProposeDelta, buildEvmMultisignBodyContinuumDaoProposeDeltaFromMcp, buildEvmMultisignBodyContinuumDaoRequestDetach, buildEvmMultisignBodyContinuumDaoSplit, buildEvmMultisignBodyContinuumDaoTransfer, buildEvmMultisignBodyContinuumDaoUndelegate, buildEvmMultisignBodyContinuumDaoWithdraw, buildFeeAlternativeSummary, buildFoundryProposalSimulatePlan, calculateMarketplaceFee, collectVotesFromLogs, computeLiquidationAmounts, continuumDaoComposeProposalAction, continuumDaoDeployment, continuumDaoExplainProposal, continuumDaoFetchDelegates, continuumDaoFetchLiveProposals, continuumDaoFetchProposal, continuumDaoFetchProposalCount, continuumDaoFetchProposalState, continuumDaoFetchProposalVoteEligibility, continuumDaoFetchProposalVotes, continuumDaoFetchProposals, continuumDaoFetchVotingPower, continuumDaoForumCreateIdea, continuumDaoForumCreateTopic, continuumDaoForumDelete, continuumDaoForumFetchPost, continuumDaoForumFetchThread, continuumDaoForumMarkRead, continuumDaoForumMarkUnread, continuumDaoForumMe, continuumDaoForumReact, continuumDaoForumRecent, continuumDaoForumReply, continuumDaoForumReplyCount, continuumDaoForumResolve, continuumDaoForumSearch, continuumDaoForumSections, continuumDaoForumSignInEligible, continuumDaoForumSignInNonce, continuumDaoForumSignOut, continuumDaoForumUnread, continuumDaoForumUrl, continuumDaoForumUserPostIds, continuumDaoHashProposal, continuumDaoMarketplaceProtocolModule, continuumDaoMpaFlag, continuumDaoMpaListing, continuumDaoMpaMailboxList, continuumDaoMpaMailboxOpen, continuumDaoMpaMailboxSend, continuumDaoMpaRetract, continuumDaoProtocolModule, continuumDaoRegisterProposal, continuumDaoSignatureText, continuumDaoSimulateProposal, continuumDaoTechnocoreBind, ctmTokenAddressOnEvmChain, decodeDeltaVoteParams, deriveAuctionStatus, emptyMarketplaceIndexCache, encodeContinuumDaoNodeInfo, encodeDeltaMetadata, encodeDeltaVoteParams, encodeGovActionCalldata, estimateBlockAtTimestamp, executableGovBatches, expectedForumSectionForProposalType, explainGovAction, explainProposalRecord, explorerBase, fetchContinuumDaoCommitteeAddresses, fetchContinuumDaoMarketplaceActivity, fetchContinuumDaoMarketplaceAuctions, fetchContinuumDaoMarketplaceConfig, fetchContinuumDaoMarketplaceFeePreview, fetchContinuumDaoMarketplaceListings, fetchContinuumDaoMarketplaceOfferings, fetchContinuumDaoMarketplaceToken, floorUnlockTimeSeconds, foldMarketplaceEvents, formatProposalSimulationFailure, foundryPlanHasSequentialExecute, foundryScriptContainsCall, getMarketplaceIndexMemoryCache, governorAddressOnEvmChain, governorWriteAbi, howVoted, isConfiguredAddress, isContinuumDaoCtmOnAssetsChain, isContinuumDaoLockChain, isContinuumDaoSupportedChainId, isContinuumDaoVeCtmOnAssetsChain, isCtmTokenSymbol, isForumIdeaSection, isGovNoOpAction, isLegacyContinuumDaoGovernor, isLineaHomeNetwork, isLiveAuctionStatus, isOpenOrder, isRemoteC3Action, isVotingEscrowContinuumName, keyGenOwnsVeCtm, listContinuumDaoDefaultAssets, listingCandidate, loadMarketplacePlanSnapshot, looksLikeProposalCatalogId, looksLikeUnixSeconds, marketplacePublicClient, marketplaceVeCtmReceivedBy, maxLockDurationSeconds, monthsOfFees, normalizeGovConfiguration, normalizeNodeInfo, orderStatusName, parseCommitteeAddressesFromConstitution, pickFeeAlternativeExample, planMarketplaceSteps, preflightAttachVeCtm, preflightCreateLock, preflightDelegate, preflightIncreaseAmount, preflightIncreaseUnlockTime, preflightLiquidate, preflightMerge, preflightRequestDetach, preflightSplit, preflightTransfer, preflightUndelegate, preflightWithdraw, proposalCatalogCanonical, proposalCatalogDocument, proposalDescriptionHash, publicClient, quoteContinuumDaoMarketplaceFeeAlternative, rankMarketplaceSearchHits, readCtmBalanceWei, readMarketplaceConfigFromChain, readMarketplaceFeePreviewFromChain, readMinimumLockWei, readVeCtmLockState, requireGovernor, resetContinuumDaoCommitteeCache, resolveAttachGroupId, resolveGovernorProposalRef, resolveProposalCatalogRange, scanMarketplaceLogs, searchContinuumDaoMarketplace, setMarketplaceIndexMemoryCache, stampLineaCatalogActions, summarizeLiveProposals, summarizeProposalVotes, throwIfProposalSimulationFailed, validateAbiParameter, votingEscrowAddressOnEvmChain, votingEscrowMarketplaceAddressOnEvmChain, votingPowerAboveUntil, votingPowerRefuse, votingPowerWarning };
|
|
5601
|
+
export { ATTACH_VECTM_SIGNATURE, AUCTION_STATUS, type AbiParam, BRAVO_SUPPORT_LABELS, CONTINUUM_DAO_APPROVE_FALLBACK, CONTINUUM_DAO_ATTACH_FALLBACK, CONTINUUM_DAO_CANCEL_FALLBACK, CONTINUUM_DAO_CREATE_LOCK_FALLBACK, CONTINUUM_DAO_DELEGATE_FALLBACK, CONTINUUM_DAO_DEPLOYMENTS, CONTINUUM_DAO_DETACH_FALLBACK, CONTINUUM_DAO_ETHEREUM_CHAIN_ID, CONTINUUM_DAO_EVM_TYPES, CONTINUUM_DAO_EXECUTE_FALLBACK, CONTINUUM_DAO_GOVERNANCE_API, CONTINUUM_DAO_GOV_EVM_TYPES, CONTINUUM_DAO_INCREASE_AMOUNT_FALLBACK, CONTINUUM_DAO_INCREASE_UNLOCK_FALLBACK, CONTINUUM_DAO_LINEA_CATALOG_NETWORK, CONTINUUM_DAO_LINEA_CHAIN_ID, CONTINUUM_DAO_LINEA_GOVERNOR_ADDRESS, CONTINUUM_DAO_LINEA_GOVERNOR_LEGACY_ADDRESS, CONTINUUM_DAO_LINEA_SEPOLIA_CHAIN_ID, CONTINUUM_DAO_LIQUIDATE_FALLBACK, CONTINUUM_DAO_MARKETPLACE_API, CONTINUUM_DAO_MARKETPLACE_PROTOCOL_ID, CONTINUUM_DAO_MERGE_FALLBACK, CONTINUUM_DAO_PROPOSE_FALLBACK, CONTINUUM_DAO_PROTOCOL_ID, CONTINUUM_DAO_SPLIT_FALLBACK, CONTINUUM_DAO_TRANSFER_FALLBACK, CONTINUUM_DAO_VOTE_FALLBACK, CONTINUUM_DAO_WITHDRAW_FALLBACK, CTM_FEE_RATE_SCALE, CTM_TOKEN_ADDRESS, CTM_TOKEN_DECIMALS, CTM_TOKEN_NAME, CTM_TOKEN_SYMBOL, type ComposeDraftRow, type ComposeEncodedAction, type ComposeFunctionMatch, type ComposeParamCheck, type ContinuumDaoCommonArgs, type ContinuumDaoComposeProposalActionArgs, type ContinuumDaoComposeProposalActionResult, type ContinuumDaoDefaultAsset, type ContinuumDaoDeployment, type ContinuumDaoExplainProposalResult, type ContinuumDaoFetchProposalVotesInput, type ContinuumDaoFetchProposalVotesResult, type ContinuumDaoGovConfiguration, type ContinuumDaoLiveProposalsResult, type ContinuumDaoMcpPurposeAction, type ContinuumDaoNodeInfo, type ContinuumDaoNodeInfoTuple, type ContinuumDaoProposalCatalog, type ContinuumDaoProposalVotesDeps, type ContinuumDaoRegisterProposalPayload, type ContinuumDaoSimulateProposalResult, type ExplainedAction, type ExplainedOption, FEE_TIER_NAMES, FORUM_GOVERNANCE_SECTIONS, FORUM_IDEA_SECTION, FORUM_LOGIN_DELIVERY_KIND, FOUNDRY_PROPOSAL_REQUIRED_SERVERS, type FeeAlternativeCandidate, type FeeAlternativeExample, type FeeAlternativePayment, type FeeAlternativeQuote, type FoldedMarketplaceBook, type ForumGovernanceSection, type ForumSignInEligible, type FoundryGovBatch, type FoundryGovLeg, type FoundryProposalScriptFile, type FoundryProposalSimulatePlan, GOVERNOR_STATE, GOVERNOR_STATE_LABELS, type GovActionInput, type GovOptionInput, INCREASE_UNLOCK_TIME_SIGNATURE, type LiveProposalBucket, type LiveProposalRow, MARKETPLACE_APPROVE_FALLBACK, MARKETPLACE_AUCTION_CREATE_FALLBACK, MARKETPLACE_BID_FALLBACK, MARKETPLACE_FULFILL_FALLBACK, MARKETPLACE_LISTING_FALLBACK, MARKETPLACE_OFFERING_FALLBACK, MARKETPLACE_SETTLE_FALLBACK, MARKETPLACE_USDC_LINEA_ADDRESS, MARKETPLACE_WETH_LINEA_ADDRESS, MARKET_ORDER_STATUS, MAXTIME_SECONDS, MULTISIGN_AGENT_WALLET_LINEA_ADDRESS, type MarketplaceAction, type MarketplaceActivity, type MarketplaceAuction, type MarketplaceAuctionStatus, type MarketplaceAuctionTuple, type MarketplaceBid, type MarketplaceCatalogSource, type MarketplaceConfig, type MarketplaceFeePreview, type MarketplaceFeeTier, type MarketplaceFoldEvent, type MarketplaceIndexCache, type MarketplaceListResult, type MarketplaceOrder, type MarketplaceOrderKind, type MarketplaceOrderStatus, type MarketplaceOrderTuple, type MarketplacePaymentToken, type MarketplacePlanInput, type MarketplacePlanSnapshot, type MarketplaceQuery, type MarketplaceSearchCandidate, type MarketplaceSearchHit, type MarketplaceSearchKind, type MarketplaceSearchQuery, type MarketplaceSearchResult, type MarketplaceSearchSort, type MarketplaceTokenPayload, PROPOSAL_TYPE_LABELS, PROPOSAL_TYPE_TO_FORUM_SECTION, type PlannedMarketplaceStep, type ProposalActionSimResult, type ProposalBatchSimResult, type ProposalCatalogAction, type ProposalCatalogAuth, type ProposalCatalogBuild, type ProposalCatalogDocument, type ProposalVoteLogLike, type ProposalVoteRow, type ResolvedGovernorProposalRef, type SimulatedGovBatch, type SimulatedGovLeg, VECTM_DEFAULT_MINIMUM_LOCK_WEI, VECTM_LIQ_MIN_LOCKED_WEI, VECTM_LIQ_PENALTY_DEN, VECTM_LIQ_PENALTY_NUM, VECTM_MAX_LOCK_WEEKS, VECTM_NODE_INFO_TUPLE, VECTM_TOKEN_NAME, VECTM_TOKEN_SYMBOL, VOTE_CAST_EVENT, VOTE_CAST_WITH_PARAMS_EVENT, VOTING_ESCROW_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_START_BLOCK, type VeCtmLockState, type VoterNodeAttachment, WEEK_SECONDS, addressInCommitteeList, applyDerivedStatuses, applyForumSectionCheck, applyMarketplaceEvent, applyNodeAttachments, assertContinuumDaoForumDeleteInput, assertContinuumDaoForumMarkReadInput, assertContinuumDaoForumRecentInput, assertContinuumDaoForumSearchInput, assertContinuumDaoForumTopicKey, assertContinuumDaoProposalSimulation, assertCreateLockAmount, assertCtmAmountAtLeastMinimum, assertDelegatee, assertExecutorOwnsLock, assertIncreaseAmount, assertIncreaseUnlockTime, assertLiquidate, assertLockDurationSeconds, assertMerge, assertProposalCatalogConstants, assertSplitExtracted, assertTransfer, assertUndelegateNotAlreadySelf, assertWithdraw, auctionCandidate, auctionStatusName, bravoSupportLabel, bucketGovernorState, buildBravoProposalArgs, buildContinuumDaoMcpPurpose, buildDeltaProposalArgs, buildEvmMultisignBodyContinuumDaoAttachVeCtm, buildEvmMultisignBodyContinuumDaoAttachVeCtmFromMcp, buildEvmMultisignBodyContinuumDaoCancel, buildEvmMultisignBodyContinuumDaoCastVoteBravo, buildEvmMultisignBodyContinuumDaoCastVoteBravoFromMcp, buildEvmMultisignBodyContinuumDaoCastVoteDelta, buildEvmMultisignBodyContinuumDaoCreateLock, buildEvmMultisignBodyContinuumDaoDelegate, buildEvmMultisignBodyContinuumDaoExecute, buildEvmMultisignBodyContinuumDaoForumSignIn, buildEvmMultisignBodyContinuumDaoIncreaseAmount, buildEvmMultisignBodyContinuumDaoIncreaseUnlockTime, buildEvmMultisignBodyContinuumDaoLiquidate, buildEvmMultisignBodyContinuumDaoMarketplaceAuctionBid, buildEvmMultisignBodyContinuumDaoMarketplaceCancelAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateListing, buildEvmMultisignBodyContinuumDaoMarketplaceCreateOffering, buildEvmMultisignBodyContinuumDaoMarketplaceDelist, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillListing, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillOffering, buildEvmMultisignBodyContinuumDaoMarketplaceRescind, buildEvmMultisignBodyContinuumDaoMarketplaceSettleAuction, buildEvmMultisignBodyContinuumDaoMerge, buildEvmMultisignBodyContinuumDaoProposeBravo, buildEvmMultisignBodyContinuumDaoProposeDelta, buildEvmMultisignBodyContinuumDaoProposeDeltaFromMcp, buildEvmMultisignBodyContinuumDaoRequestDetach, buildEvmMultisignBodyContinuumDaoSplit, buildEvmMultisignBodyContinuumDaoTransfer, buildEvmMultisignBodyContinuumDaoUndelegate, buildEvmMultisignBodyContinuumDaoWithdraw, buildFeeAlternativeSummary, buildFoundryProposalSimulatePlan, calculateMarketplaceFee, collectVotesFromLogs, computeLiquidationAmounts, continuumDaoComposeProposalAction, continuumDaoDeployment, continuumDaoExplainProposal, continuumDaoFetchDelegates, continuumDaoFetchLiveProposals, continuumDaoFetchProposal, continuumDaoFetchProposalCount, continuumDaoFetchProposalState, continuumDaoFetchProposalVoteEligibility, continuumDaoFetchProposalVotes, continuumDaoFetchProposals, continuumDaoFetchVotingPower, continuumDaoForumCreateIdea, continuumDaoForumCreateTopic, continuumDaoForumDelete, continuumDaoForumFetchPost, continuumDaoForumFetchThread, continuumDaoForumMarkRead, continuumDaoForumMarkUnread, continuumDaoForumMe, continuumDaoForumReact, continuumDaoForumRecent, continuumDaoForumReply, continuumDaoForumReplyCount, continuumDaoForumResolve, continuumDaoForumSearch, continuumDaoForumSections, continuumDaoForumSignInEligible, continuumDaoForumSignInNonce, continuumDaoForumSignOut, continuumDaoForumUnread, continuumDaoForumUrl, continuumDaoForumUserPostIds, continuumDaoHashProposal, continuumDaoMarketplaceProtocolModule, continuumDaoMpaFlag, continuumDaoMpaListing, continuumDaoMpaMailboxList, continuumDaoMpaMailboxOpen, continuumDaoMpaMailboxSend, continuumDaoMpaRetract, continuumDaoProtocolModule, continuumDaoRegisterProposal, continuumDaoSignatureText, continuumDaoSimulateProposal, continuumDaoTechnocoreBind, ctmTokenAddressOnEvmChain, decodeDeltaVoteParams, deriveAuctionStatus, emptyMarketplaceIndexCache, encodeContinuumDaoNodeInfo, encodeDeltaMetadata, encodeDeltaVoteParams, encodeGovActionCalldata, estimateBlockAtTimestamp, executableGovBatches, expectedForumSectionForProposalType, explainGovAction, explainProposalRecord, explorerBase, fetchContinuumDaoCommitteeAddresses, fetchContinuumDaoMarketplaceActivity, fetchContinuumDaoMarketplaceAuctions, fetchContinuumDaoMarketplaceConfig, fetchContinuumDaoMarketplaceFeePreview, fetchContinuumDaoMarketplaceListings, fetchContinuumDaoMarketplaceOfferings, fetchContinuumDaoMarketplaceToken, floorUnlockTimeSeconds, foldMarketplaceEvents, formatProposalSimulationFailure, foundryPlanHasSequentialExecute, foundryScriptContainsCall, getMarketplaceIndexMemoryCache, governorAddressOnEvmChain, governorWriteAbi, howVoted, isConfiguredAddress, isContinuumDaoCtmOnAssetsChain, isContinuumDaoLockChain, isContinuumDaoSupportedChainId, isContinuumDaoVeCtmOnAssetsChain, isCtmTokenSymbol, isForumIdeaSection, isGovNoOpAction, isLegacyContinuumDaoGovernor, isLineaHomeNetwork, isLiveAuctionStatus, isOpenOrder, isRemoteC3Action, isVotingEscrowContinuumName, keyGenOwnsVeCtm, listContinuumDaoDefaultAssets, listingCandidate, loadMarketplacePlanSnapshot, looksLikeProposalCatalogId, looksLikeUnixSeconds, marketplacePublicClient, marketplaceVeCtmReceivedBy, maxLockDurationSeconds, monthsOfFees, normalizeGovConfiguration, normalizeNodeInfo, orderStatusName, parseCommitteeAddressesFromConstitution, pickFeeAlternativeExample, planMarketplaceSteps, preflightAttachVeCtm, preflightCreateLock, preflightDelegate, preflightIncreaseAmount, preflightIncreaseUnlockTime, preflightLiquidate, preflightMerge, preflightRequestDetach, preflightSplit, preflightTransfer, preflightUndelegate, preflightWithdraw, preprocessContinuumDaoPurpose, proposalCatalogCanonical, proposalCatalogDocument, proposalDescriptionHash, publicClient, quoteContinuumDaoMarketplaceFeeAlternative, rankMarketplaceSearchHits, readCtmBalanceWei, readMarketplaceConfigFromChain, readMarketplaceFeePreviewFromChain, readMinimumLockWei, readVeCtmLockState, requireGovernor, resetContinuumDaoCommitteeCache, resolveAttachGroupId, resolveGovernorProposalRef, resolveProposalCatalogRange, scanMarketplaceLogs, searchContinuumDaoMarketplace, setMarketplaceIndexMemoryCache, stampLineaCatalogActions, summarizeLiveProposals, summarizeProposalVotes, throwIfProposalSimulationFailed, validateAbiParameter, votingEscrowAddressOnEvmChain, votingEscrowMarketplaceAddressOnEvmChain, votingPowerAboveUntil, votingPowerRefuse, votingPowerWarning };
|
|
@@ -189,10 +189,10 @@ function docsBaseUrl() {
|
|
|
189
189
|
return raw.replace(/\/+$/, "");
|
|
190
190
|
}
|
|
191
191
|
function parseCommitteeAddressesFromConstitution(markdown) {
|
|
192
|
-
const
|
|
193
|
-
const start =
|
|
192
|
+
const text2 = String(markdown || "");
|
|
193
|
+
const start = text2.search(/^### Committee List\s*$/m);
|
|
194
194
|
if (start < 0) return [];
|
|
195
|
-
const lines =
|
|
195
|
+
const lines = text2.slice(start).split("\n");
|
|
196
196
|
const addresses = [];
|
|
197
197
|
for (let i = 1; i < lines.length; i += 1) {
|
|
198
198
|
const line = lines[i] ?? "";
|
|
@@ -350,11 +350,11 @@ var init_defiEvmClient = __esm({
|
|
|
350
350
|
// src/core/purpose.ts
|
|
351
351
|
function mergePurposeText(purposeText, purposeSuffix) {
|
|
352
352
|
const t = (purposeText ?? "").trim();
|
|
353
|
-
const
|
|
354
|
-
if (!
|
|
353
|
+
const suffix2 = (purposeSuffix ?? "").trim();
|
|
354
|
+
if (!suffix2) return t;
|
|
355
355
|
return t ? `${t}
|
|
356
356
|
|
|
357
|
-
${
|
|
357
|
+
${suffix2}` : suffix2;
|
|
358
358
|
}
|
|
359
359
|
var init_purpose = __esm({
|
|
360
360
|
"src/core/purpose.ts"() {
|
|
@@ -928,8 +928,8 @@ async function continuumDaoForumUnread(args) {
|
|
|
928
928
|
if (args.filter?.trim()) qs2.set("filter", args.filter.trim());
|
|
929
929
|
if (args.start != null) qs2.set("start", String(args.start));
|
|
930
930
|
if (args.limit != null) qs2.set("limit", String(args.limit));
|
|
931
|
-
const
|
|
932
|
-
return forumFetch(`/api/continuum/forum/unread${
|
|
931
|
+
const suffix2 = qs2.toString() ? `?${qs2}` : "";
|
|
932
|
+
return forumFetch(`/api/continuum/forum/unread${suffix2}`, {
|
|
933
933
|
forumUrl: args.forumUrl,
|
|
934
934
|
ticket: args.ticket
|
|
935
935
|
});
|
|
@@ -1452,8 +1452,8 @@ function buildFoundryProposalSimulatePlan(args) {
|
|
|
1452
1452
|
)
|
|
1453
1453
|
});
|
|
1454
1454
|
args.batches.forEach((batch, bi) => {
|
|
1455
|
-
const
|
|
1456
|
-
const contractName = `ContinuumDaoSimulateExecute${
|
|
1455
|
+
const suffix2 = batch.label != null ? solIdent(batch.label, `Option${(batch.optionIndex ?? bi) + 1}`) : "Bravo";
|
|
1456
|
+
const contractName = `ContinuumDaoSimulateExecute${suffix2}`;
|
|
1457
1457
|
const path = `script/${contractName}.s.sol`;
|
|
1458
1458
|
const body = [
|
|
1459
1459
|
" function run() external {",
|
|
@@ -2689,7 +2689,7 @@ async function continuumDaoRegisterProposal(payload) {
|
|
|
2689
2689
|
headers: { "Content-Type": "application/json" },
|
|
2690
2690
|
body
|
|
2691
2691
|
});
|
|
2692
|
-
const
|
|
2692
|
+
const text2 = await res.text();
|
|
2693
2693
|
if (res.status === 409) {
|
|
2694
2694
|
const repair = await fetch(`${CONTINUUM_DAO_GOVERNANCE_API}/proposals/repair`, {
|
|
2695
2695
|
method: "POST",
|
|
@@ -2700,8 +2700,8 @@ async function continuumDaoRegisterProposal(payload) {
|
|
|
2700
2700
|
if (!repair.ok) throw new Error(`proposals/repair: ${repair.status} ${repairText}`);
|
|
2701
2701
|
return { ok: true, result: JSON.parse(repairText) };
|
|
2702
2702
|
}
|
|
2703
|
-
if (!res.ok) throw new Error(`proposals/create: ${res.status} ${
|
|
2704
|
-
return { ok: true, result: JSON.parse(
|
|
2703
|
+
if (!res.ok) throw new Error(`proposals/create: ${res.status} ${text2}`);
|
|
2704
|
+
return { ok: true, result: JSON.parse(text2) };
|
|
2705
2705
|
}
|
|
2706
2706
|
var CONTINUUM_DAO_PROPOSE_FALLBACK, CONTINUUM_DAO_VOTE_FALLBACK, CONTINUUM_DAO_EXECUTE_FALLBACK, CONTINUUM_DAO_CANCEL_FALLBACK, CONTINUUM_DAO_GOV_EVM_TYPES, governorWriteAbi, governorReadAbi, FORUM_SECTION_TO_PROPOSAL_TYPE, GOVERNOR_STATE, GOVERNOR_STATE_LABELS;
|
|
2707
2707
|
var init_governance = __esm({
|
|
@@ -5297,10 +5297,20 @@ function foldMarketplaceEvents(events, initial) {
|
|
|
5297
5297
|
for (const ev of events) applyMarketplaceEvent(book, ev);
|
|
5298
5298
|
return book;
|
|
5299
5299
|
}
|
|
5300
|
+
function auctionDeadlineUnix(auction) {
|
|
5301
|
+
const unix = Number(auction.deadlineUnix);
|
|
5302
|
+
if (Number.isFinite(unix) && unix > 0) return unix;
|
|
5303
|
+
if (auction.deadlineAt) {
|
|
5304
|
+
const ms = Date.parse(auction.deadlineAt);
|
|
5305
|
+
if (Number.isFinite(ms) && ms > 0) return Math.floor(ms / 1e3);
|
|
5306
|
+
}
|
|
5307
|
+
return unix;
|
|
5308
|
+
}
|
|
5300
5309
|
function deriveAuctionStatus(auction, nowUnix) {
|
|
5301
|
-
const deadline =
|
|
5310
|
+
const deadline = auctionDeadlineUnix(auction);
|
|
5302
5311
|
if (auction.storedStatus === "Pending" && Number.isFinite(deadline) && nowUnix >= deadline) return "Expired";
|
|
5303
5312
|
if (auction.storedStatus === "Active" && Number.isFinite(deadline) && nowUnix >= deadline) return "Complete";
|
|
5313
|
+
if (auction.storedStatus === "Pending") return "Active";
|
|
5304
5314
|
return auction.derivedStatus || auction.storedStatus;
|
|
5305
5315
|
}
|
|
5306
5316
|
function applyDerivedStatuses(book, nowUnix) {
|
|
@@ -5410,7 +5420,11 @@ function keyGenOwnsVeCtm(snap, seller) {
|
|
|
5410
5420
|
return false;
|
|
5411
5421
|
}
|
|
5412
5422
|
function assertNotOwn(snap, seller, tokenId) {
|
|
5413
|
-
|
|
5423
|
+
const listedByKeyGen = seller != null && same2(seller, snap.executor) || snap.listing != null && snap.listing.status === 1 && same2(snap.listing.creator, snap.executor);
|
|
5424
|
+
if (listedByKeyGen && !snap.executorLiveAuction) {
|
|
5425
|
+
throw new Error(`This KeyGen listed veCTM #${tokenId.toString()}. Delist it instead of buying it.`);
|
|
5426
|
+
}
|
|
5427
|
+
if (same2(snap.owner, snap.executor) || snap.executorLiveAuction) {
|
|
5414
5428
|
throw new Error(`This KeyGen already owns veCTM #${tokenId.toString()} and cannot buy or bid on it.`);
|
|
5415
5429
|
}
|
|
5416
5430
|
}
|
|
@@ -5482,6 +5496,7 @@ function planMarketplaceSteps(input, snap) {
|
|
|
5482
5496
|
const m = snap.marketplace;
|
|
5483
5497
|
switch (input.action) {
|
|
5484
5498
|
case "createListing": {
|
|
5499
|
+
assertNotAttached(snap, input.tokenId);
|
|
5485
5500
|
assertPayment(snap);
|
|
5486
5501
|
assertDeadline(snap, input.deadline);
|
|
5487
5502
|
if (!same2(snap.owner, snap.executor)) throw new Error("Only the veCTM owner can create a listing.");
|
|
@@ -5508,7 +5523,9 @@ function planMarketplaceSteps(input, snap) {
|
|
|
5508
5523
|
]);
|
|
5509
5524
|
}
|
|
5510
5525
|
case "delist": {
|
|
5511
|
-
|
|
5526
|
+
const listing = snap.listing;
|
|
5527
|
+
const openForKeyGen = listing != null && listing.status === 1 && same2(listing.creator, snap.executor);
|
|
5528
|
+
if (!openForKeyGen) throw new Error("No open listing for this KeyGen.");
|
|
5512
5529
|
return [
|
|
5513
5530
|
{
|
|
5514
5531
|
to: m,
|
|
@@ -5553,6 +5570,7 @@ function planMarketplaceSteps(input, snap) {
|
|
|
5553
5570
|
]);
|
|
5554
5571
|
}
|
|
5555
5572
|
case "createOffering": {
|
|
5573
|
+
assertNotAttached(snap, input.tokenId);
|
|
5556
5574
|
assertNotOwn(snap, void 0, input.tokenId);
|
|
5557
5575
|
assertPayment(snap);
|
|
5558
5576
|
assertDeadline(snap, input.deadline);
|
|
@@ -6243,8 +6261,8 @@ async function getJson(url) {
|
|
|
6243
6261
|
try {
|
|
6244
6262
|
const res = await fetch(url);
|
|
6245
6263
|
if (!res.ok) {
|
|
6246
|
-
const
|
|
6247
|
-
return { ok: false, status: res.status, error: new Error(`${url}: ${res.status} ${
|
|
6264
|
+
const text2 = await res.text().catch(() => "");
|
|
6265
|
+
return { ok: false, status: res.status, error: new Error(`${url}: ${res.status} ${text2}`.trim()) };
|
|
6248
6266
|
}
|
|
6249
6267
|
return { ok: true, body: await res.json() };
|
|
6250
6268
|
} catch (err) {
|
|
@@ -6284,6 +6302,37 @@ function matchAuction(row, args, includeInactive) {
|
|
|
6284
6302
|
if (args.seller && row.seller.toLowerCase() !== args.seller.toLowerCase()) return false;
|
|
6285
6303
|
return true;
|
|
6286
6304
|
}
|
|
6305
|
+
function presentAddress(value) {
|
|
6306
|
+
const text2 = (value ?? "").trim();
|
|
6307
|
+
if (!text2 || /^0x0+$/i.test(text2)) return "";
|
|
6308
|
+
return text2;
|
|
6309
|
+
}
|
|
6310
|
+
function sameAddress(a, b) {
|
|
6311
|
+
const left = (a ?? "").trim();
|
|
6312
|
+
const right = (b ?? "").trim();
|
|
6313
|
+
return Boolean(left && right && left.toLowerCase() === right.toLowerCase());
|
|
6314
|
+
}
|
|
6315
|
+
function annotateListingViewer(items, viewer) {
|
|
6316
|
+
const who = presentAddress(viewer);
|
|
6317
|
+
if (!who) return items;
|
|
6318
|
+
return items.map((row) => {
|
|
6319
|
+
const seller = presentAddress(row.seller) || presentAddress(row.creator) || presentAddress(row.currentOwner);
|
|
6320
|
+
const closed = row.storedStatus === "Fulfilled" || row.storedStatus === "Delisted" || row.storedStatus === "DelistedOrRescinded";
|
|
6321
|
+
const open = !closed && (row.storedStatus === "Open" || row.protocolStatus === "Open");
|
|
6322
|
+
const mine = sameAddress(seller, who);
|
|
6323
|
+
return { ...row, viewerAction: mine && open ? "delist" : mine ? "none" : open ? "buy" : "none" };
|
|
6324
|
+
});
|
|
6325
|
+
}
|
|
6326
|
+
function presentAuction(row, nowUnix = Math.floor(Date.now() / 1e3)) {
|
|
6327
|
+
const derivedStatus = deriveAuctionStatus({ ...row, bids: row.bids ?? [] }, nowUnix);
|
|
6328
|
+
const closed = derivedStatus === "Complete" || derivedStatus === "Expired";
|
|
6329
|
+
return {
|
|
6330
|
+
...row,
|
|
6331
|
+
bids: row.bids ?? [],
|
|
6332
|
+
derivedStatus,
|
|
6333
|
+
needsSettle: closed ? true : row.needsSettle
|
|
6334
|
+
};
|
|
6335
|
+
}
|
|
6287
6336
|
function listFrom(items, source) {
|
|
6288
6337
|
return { items, nextCursor: null, source };
|
|
6289
6338
|
}
|
|
@@ -6313,11 +6362,18 @@ async function fetchContinuumDaoMarketplaceListings(args = {}) {
|
|
|
6313
6362
|
const res = await getJson(url);
|
|
6314
6363
|
if (res.ok) {
|
|
6315
6364
|
const body = res.body;
|
|
6316
|
-
return {
|
|
6365
|
+
return {
|
|
6366
|
+
items: annotateListingViewer(body.items ?? [], args.viewer),
|
|
6367
|
+
nextCursor: body.nextCursor ?? null,
|
|
6368
|
+
source: "api"
|
|
6369
|
+
};
|
|
6317
6370
|
}
|
|
6318
6371
|
if (args.cursor || !isOffline(res.status)) throw res.error;
|
|
6319
6372
|
const book = await logsBook(args);
|
|
6320
|
-
return listFrom(
|
|
6373
|
+
return listFrom(
|
|
6374
|
+
annotateListingViewer(book.listings.filter((row) => matchOrder(row, args, includeInactive)), args.viewer),
|
|
6375
|
+
"logs"
|
|
6376
|
+
);
|
|
6321
6377
|
}
|
|
6322
6378
|
async function fetchContinuumDaoMarketplaceOfferings(args = {}) {
|
|
6323
6379
|
const includeInactive = Boolean(args.includeInactive);
|
|
@@ -6354,20 +6410,30 @@ async function fetchContinuumDaoMarketplaceAuctions(args = {}) {
|
|
|
6354
6410
|
if (res.ok) {
|
|
6355
6411
|
const body = res.body;
|
|
6356
6412
|
return {
|
|
6357
|
-
items: (body.items ?? []).map((row) => (
|
|
6413
|
+
items: (body.items ?? []).map((row) => presentAuction(row)).filter((row) => includeInactive || isLiveAuctionStatus(row.derivedStatus)),
|
|
6358
6414
|
nextCursor: body.nextCursor ?? null,
|
|
6359
6415
|
source: "api"
|
|
6360
6416
|
};
|
|
6361
6417
|
}
|
|
6362
6418
|
if (args.cursor || !isOffline(res.status)) throw res.error;
|
|
6363
6419
|
const book = await logsBook(args);
|
|
6364
|
-
return listFrom(book.auctions.filter((row) => matchAuction(row, args, includeInactive)), "logs");
|
|
6420
|
+
return listFrom(book.auctions.filter((row) => matchAuction(row, args, includeInactive)).map((row) => presentAuction(row)), "logs");
|
|
6365
6421
|
}
|
|
6366
6422
|
async function fetchContinuumDaoMarketplaceToken(args) {
|
|
6367
6423
|
const url = `${apiBase(args)}/marketplace/tokens/${encodeURIComponent(args.tokenId)}${qs({ viewer: args.viewer })}`;
|
|
6368
6424
|
const res = await getJson(url);
|
|
6369
6425
|
if (res.ok && res.body && typeof res.body === "object") {
|
|
6370
|
-
|
|
6426
|
+
const body = res.body;
|
|
6427
|
+
return {
|
|
6428
|
+
...body,
|
|
6429
|
+
auction: body.auction ? presentAuction(body.auction) : null,
|
|
6430
|
+
history: {
|
|
6431
|
+
listings: body.history?.listings ?? [],
|
|
6432
|
+
offerings: body.history?.offerings ?? [],
|
|
6433
|
+
auctions: (body.history?.auctions ?? []).map((row) => presentAuction(row))
|
|
6434
|
+
},
|
|
6435
|
+
source: "api"
|
|
6436
|
+
};
|
|
6371
6437
|
}
|
|
6372
6438
|
if (!res.ok && !isOffline(res.status)) throw res.error;
|
|
6373
6439
|
const book = await logsBook(args);
|
|
@@ -6378,11 +6444,14 @@ async function fetchContinuumDaoMarketplaceToken(args) {
|
|
|
6378
6444
|
token: { tokenId: args.tokenId },
|
|
6379
6445
|
listing: listings.find((row) => isOpenOrder(row)) ?? null,
|
|
6380
6446
|
offerings: offerings.filter((row) => isOpenOrder(row)),
|
|
6381
|
-
auction:
|
|
6447
|
+
auction: (() => {
|
|
6448
|
+
const live = auctions.find((row) => isLiveAuctionStatus(row.derivedStatus));
|
|
6449
|
+
return live ? presentAuction(live) : null;
|
|
6450
|
+
})(),
|
|
6382
6451
|
history: {
|
|
6383
6452
|
listings: listings.filter((row) => !isOpenOrder(row)),
|
|
6384
6453
|
offerings: offerings.filter((row) => !isOpenOrder(row)),
|
|
6385
|
-
auctions: auctions.filter((row) => !isLiveAuctionStatus(row.derivedStatus))
|
|
6454
|
+
auctions: auctions.filter((row) => !isLiveAuctionStatus(row.derivedStatus)).map((row) => presentAuction(row))
|
|
6386
6455
|
},
|
|
6387
6456
|
source: "logs"
|
|
6388
6457
|
};
|
|
@@ -6409,7 +6478,7 @@ async function fetchContinuumDaoMarketplaceActivity(args) {
|
|
|
6409
6478
|
return {
|
|
6410
6479
|
address: args.address,
|
|
6411
6480
|
orders: body.orders ?? [],
|
|
6412
|
-
auctions: (body.auctions ?? []).map((row) => (
|
|
6481
|
+
auctions: (body.auctions ?? []).map((row) => presentAuction(row)),
|
|
6413
6482
|
source: "api"
|
|
6414
6483
|
};
|
|
6415
6484
|
}
|
|
@@ -6422,7 +6491,7 @@ async function fetchContinuumDaoMarketplaceActivity(args) {
|
|
|
6422
6491
|
const auctions = book.auctions.filter((row) => {
|
|
6423
6492
|
return row.seller.toLowerCase() === address || (row.buyer ?? "").toLowerCase() === address || (row.highestBidder ?? "").toLowerCase() === address || row.bids.some((bid) => bid.bidder.toLowerCase() === address);
|
|
6424
6493
|
});
|
|
6425
|
-
return { address: args.address, orders, auctions, source: "logs" };
|
|
6494
|
+
return { address: args.address, orders, auctions: auctions.map((row) => presentAuction(row)), source: "logs" };
|
|
6426
6495
|
}
|
|
6427
6496
|
|
|
6428
6497
|
// src/protocols/evm/continuum-dao/marketplaceSearch.ts
|
|
@@ -6494,6 +6563,13 @@ function positive(value) {
|
|
|
6494
6563
|
const trimmed = (value ?? "").trim();
|
|
6495
6564
|
return trimmed && trimmed !== "0" ? trimmed : "";
|
|
6496
6565
|
}
|
|
6566
|
+
function party(...values) {
|
|
6567
|
+
for (const value of values) {
|
|
6568
|
+
const text2 = (value ?? "").trim();
|
|
6569
|
+
if (text2 && !/^0x0+$/i.test(text2)) return text2;
|
|
6570
|
+
}
|
|
6571
|
+
return "";
|
|
6572
|
+
}
|
|
6497
6573
|
function unlockUnixFrom(row) {
|
|
6498
6574
|
const iso2 = positive(row.unlockTimeAt);
|
|
6499
6575
|
if (iso2) {
|
|
@@ -6513,7 +6589,7 @@ function listingCandidate(row) {
|
|
|
6513
6589
|
kind: "listing",
|
|
6514
6590
|
tokenId: row.tokenId,
|
|
6515
6591
|
onchainIndex: row.onchainIndex,
|
|
6516
|
-
seller: row.seller
|
|
6592
|
+
seller: party(row.seller, row.creator, row.currentOwner),
|
|
6517
6593
|
paymentToken: row.paymentToken,
|
|
6518
6594
|
price: asBig(row.price),
|
|
6519
6595
|
priceBasis: "ask",
|
|
@@ -6571,7 +6647,7 @@ function rankMarketplaceSearchHits(rows, query, nowUnix = Math.floor(Date.now()
|
|
|
6571
6647
|
const excludeOwned = query.excludeOwned !== false && Boolean(executor);
|
|
6572
6648
|
let matched = rows.filter((row) => {
|
|
6573
6649
|
if (query.paymentToken && !same3(row.paymentToken, query.paymentToken)) return false;
|
|
6574
|
-
if (excludeOwned && same3(row.seller, executor)) return false;
|
|
6650
|
+
if (excludeOwned && row.kind !== "listing" && same3(row.seller, executor)) return false;
|
|
6575
6651
|
if (minLocked != null && row.locked < minLocked) return false;
|
|
6576
6652
|
if (maxLocked != null && row.locked > maxLocked) return false;
|
|
6577
6653
|
if (unlockAfter != null && row.unlockUnix < unlockAfter) return false;
|
|
@@ -6579,6 +6655,10 @@ function rankMarketplaceSearchHits(rows, query, nowUnix = Math.floor(Date.now()
|
|
|
6579
6655
|
if (monthCap != null && (row.unlockUnix <= nowUnix || row.unlockUnix > monthCap)) return false;
|
|
6580
6656
|
return true;
|
|
6581
6657
|
});
|
|
6658
|
+
matched = matched.map((row) => {
|
|
6659
|
+
const ownListing = Boolean(executor && row.kind === "listing" && same3(row.seller, executor));
|
|
6660
|
+
return ownListing ? { ...row, fillable: false } : row;
|
|
6661
|
+
});
|
|
6582
6662
|
const priceSort = sort === "price" || sort === "pricePerLockedCtm";
|
|
6583
6663
|
if (priceSort && !query.paymentToken) {
|
|
6584
6664
|
const tokens = new Set(matched.map((row) => row.paymentToken.toLowerCase()));
|
|
@@ -6603,9 +6683,16 @@ function rankMarketplaceSearchHits(rows, query, nowUnix = Math.floor(Date.now()
|
|
|
6603
6683
|
return a.tokenId.localeCompare(b.tokenId);
|
|
6604
6684
|
});
|
|
6605
6685
|
const limit = Math.min(MAX_LIMIT, Math.max(1, query.limit ?? DEFAULT_LIMIT));
|
|
6606
|
-
return matched.slice(0, limit).map((row) =>
|
|
6686
|
+
return matched.slice(0, limit).map((row) => {
|
|
6687
|
+
const ownListing = Boolean(executor && row.kind === "listing" && same3(row.seller, executor));
|
|
6688
|
+
return toHit(
|
|
6689
|
+
ownListing ? { ...row, fillable: false } : row,
|
|
6690
|
+
nowUnix,
|
|
6691
|
+
ownListing ? "delist" : row.kind === "auction" ? "bid" : "buy"
|
|
6692
|
+
);
|
|
6693
|
+
});
|
|
6607
6694
|
}
|
|
6608
|
-
function toHit(row, nowUnix) {
|
|
6695
|
+
function toHit(row, nowUnix, action) {
|
|
6609
6696
|
const meta4 = paymentMeta(row.paymentToken);
|
|
6610
6697
|
const perCtm = row.locked > 0n ? row.price * 10n ** 18n / row.locked : 0n;
|
|
6611
6698
|
const months = row.unlockUnix > nowUnix ? ((row.unlockUnix - nowUnix) / MONTH_SECONDS).toFixed(1) : row.unlockUnix > 0 ? "0" : "";
|
|
@@ -6626,7 +6713,8 @@ function toHit(row, nowUnix) {
|
|
|
6626
6713
|
pricePerLockedCtm: row.locked > 0n ? humanAmount(perCtm, meta4.decimals) : "",
|
|
6627
6714
|
deadlineAt: row.deadlineUnix > 0 ? new Date(row.deadlineUnix * 1e3).toISOString() : "",
|
|
6628
6715
|
attached: row.attached,
|
|
6629
|
-
fillable: row.fillable
|
|
6716
|
+
fillable: row.fillable,
|
|
6717
|
+
action
|
|
6630
6718
|
};
|
|
6631
6719
|
}
|
|
6632
6720
|
async function fillMissingLocks(rows, rpcUrl, chainId) {
|
|
@@ -7167,6 +7255,172 @@ function marketplaceVeCtmReceivedBy(detail, executor) {
|
|
|
7167
7255
|
return null;
|
|
7168
7256
|
}
|
|
7169
7257
|
|
|
7258
|
+
// src/protocols/evm/continuum-dao/purpose.ts
|
|
7259
|
+
init_constants();
|
|
7260
|
+
function chainParts(chainId) {
|
|
7261
|
+
const n = typeof chainId === "number" ? chainId : Number.parseInt(String(chainId ?? "").trim(), 10);
|
|
7262
|
+
const id = Number.isFinite(n) ? n : 0;
|
|
7263
|
+
if (id === CONTINUUM_DAO_LINEA_CHAIN_ID) return { name: "Linea Mainnet", id };
|
|
7264
|
+
if (id === CONTINUUM_DAO_LINEA_SEPOLIA_CHAIN_ID) return { name: "Linea Sepolia", id };
|
|
7265
|
+
if (id === CONTINUUM_DAO_ETHEREUM_CHAIN_ID) return { name: "Ethereum Mainnet", id };
|
|
7266
|
+
return { name: "chain", id };
|
|
7267
|
+
}
|
|
7268
|
+
function suffix(chainId) {
|
|
7269
|
+
const { name, id } = chainParts(chainId);
|
|
7270
|
+
return `on ${name} (chainId ${id})`;
|
|
7271
|
+
}
|
|
7272
|
+
function text(value) {
|
|
7273
|
+
return String(value ?? "").trim();
|
|
7274
|
+
}
|
|
7275
|
+
function tokenLabel(value) {
|
|
7276
|
+
const id = text(value);
|
|
7277
|
+
return id ? `#${id}` : "#\u2026";
|
|
7278
|
+
}
|
|
7279
|
+
function shortAddr(value) {
|
|
7280
|
+
const trimmed = text(value);
|
|
7281
|
+
if (!trimmed) return "\u2026";
|
|
7282
|
+
try {
|
|
7283
|
+
if (!isAddress(trimmed)) return trimmed;
|
|
7284
|
+
const addr2 = getAddress(trimmed);
|
|
7285
|
+
return `${addr2.slice(0, 6)}\u2026${addr2.slice(-4)}`;
|
|
7286
|
+
} catch {
|
|
7287
|
+
return trimmed;
|
|
7288
|
+
}
|
|
7289
|
+
}
|
|
7290
|
+
function weeksLabel(seconds) {
|
|
7291
|
+
const n = Number(text(seconds));
|
|
7292
|
+
if (!Number.isFinite(n) || n <= 0) return "\u2026 weeks";
|
|
7293
|
+
const weeks = Math.max(1, Math.round(n / WEEK_SECONDS));
|
|
7294
|
+
return `${weeks} week${weeks === 1 ? "" : "s"}`;
|
|
7295
|
+
}
|
|
7296
|
+
function paymentMeta3(address) {
|
|
7297
|
+
const lower = text(address).toLowerCase();
|
|
7298
|
+
if (lower === MARKETPLACE_USDC_LINEA_ADDRESS.toLowerCase()) return { symbol: "USDC", decimals: 6 };
|
|
7299
|
+
if (lower === MARKETPLACE_WETH_LINEA_ADDRESS.toLowerCase()) return { symbol: "WETH", decimals: 18 };
|
|
7300
|
+
if (lower === CTM_TOKEN_ADDRESS.toLowerCase()) return { symbol: "CTM", decimals: 18 };
|
|
7301
|
+
return { symbol: "token", decimals: 18 };
|
|
7302
|
+
}
|
|
7303
|
+
function moneyFromWei(wei, paymentToken) {
|
|
7304
|
+
const raw = text(wei);
|
|
7305
|
+
if (!raw) return "\u2026 token";
|
|
7306
|
+
try {
|
|
7307
|
+
const meta4 = paymentMeta3(paymentToken);
|
|
7308
|
+
const human2 = formatUnits(BigInt(raw), meta4.decimals).replace(/(\.\d*?[1-9])0+$/, "$1").replace(/\.0+$/, "");
|
|
7309
|
+
return `${human2} ${meta4.symbol}`;
|
|
7310
|
+
} catch {
|
|
7311
|
+
return raw;
|
|
7312
|
+
}
|
|
7313
|
+
}
|
|
7314
|
+
function deadlineLabel(value) {
|
|
7315
|
+
const n = Number(text(value));
|
|
7316
|
+
if (!Number.isFinite(n) || n <= 0) return "\u2026";
|
|
7317
|
+
const date = new Date(n * 1e3);
|
|
7318
|
+
if (Number.isNaN(date.getTime())) return "\u2026";
|
|
7319
|
+
return `${date.toISOString().slice(0, 16).replace("T", " ")} UTC`;
|
|
7320
|
+
}
|
|
7321
|
+
function bravoLabel(support) {
|
|
7322
|
+
const raw = text(support).toLowerCase();
|
|
7323
|
+
if (raw === "0" || raw === "against") return "Against";
|
|
7324
|
+
if (raw === "1" || raw === "for") return "For";
|
|
7325
|
+
if (raw === "2" || raw === "abstain") return "Abstain";
|
|
7326
|
+
return null;
|
|
7327
|
+
}
|
|
7328
|
+
function proposalLabel(input) {
|
|
7329
|
+
const title = text(input.title || input.proposalTitle);
|
|
7330
|
+
if (title) return title;
|
|
7331
|
+
const id = text(input.proposalId);
|
|
7332
|
+
return id ? `proposal ${id}` : "proposal";
|
|
7333
|
+
}
|
|
7334
|
+
function buildContinuumDaoMcpPurpose(action, input) {
|
|
7335
|
+
const end = suffix(input.chainId);
|
|
7336
|
+
const id = tokenLabel(input.tokenId);
|
|
7337
|
+
switch (action) {
|
|
7338
|
+
case "createLock":
|
|
7339
|
+
return `ContinuumDAO: create lock ${text(input.amountHuman) || "\u2026"} CTM for ${weeksLabel(input.lockDurationSeconds)} ${end}`;
|
|
7340
|
+
case "increaseAmount":
|
|
7341
|
+
return `ContinuumDAO: increase lock ${id} by ${text(input.amountHuman) || "\u2026"} CTM ${end}`;
|
|
7342
|
+
case "increaseUnlockTime":
|
|
7343
|
+
return `ContinuumDAO: extend lock ${id} by ${weeksLabel(input.lockDurationSeconds)} ${end}`;
|
|
7344
|
+
case "split":
|
|
7345
|
+
return `ContinuumDAO: split lock ${id}, extract ${text(input.extractedHuman) || "\u2026"} CTM ${end}`;
|
|
7346
|
+
case "merge": {
|
|
7347
|
+
const from = tokenLabel(input.fromTokenId);
|
|
7348
|
+
const into = text(input.toTokenId);
|
|
7349
|
+
return into ? `ContinuumDAO: merge lock ${from} into #${into} ${end}` : `ContinuumDAO: merge lock ${from} into \u2026 ${end}`;
|
|
7350
|
+
}
|
|
7351
|
+
case "withdraw":
|
|
7352
|
+
return `ContinuumDAO: withdraw expired lock ${id} ${end}`;
|
|
7353
|
+
case "liquidate":
|
|
7354
|
+
return `ContinuumDAO: liquidate lock ${id} ${end}`;
|
|
7355
|
+
case "delegate":
|
|
7356
|
+
return text(input.delegatee) ? `ContinuumDAO: delegate voting power to ${shortAddr(input.delegatee)} ${end}` : `ContinuumDAO: delegate voting power ${end}`;
|
|
7357
|
+
case "undelegate":
|
|
7358
|
+
return `ContinuumDAO: undelegate (return voting power to this KeyGen) ${end}`;
|
|
7359
|
+
case "transfer":
|
|
7360
|
+
return text(input.to) ? `ContinuumDAO: transfer veCTM ${id} to ${shortAddr(input.to)} ${end}` : `ContinuumDAO: transfer veCTM ${id} ${end}`;
|
|
7361
|
+
case "attach":
|
|
7362
|
+
return text(input.tokenId) ? `ContinuumDAO: attach veCTM ${id} to this node ${end}` : `ContinuumDAO: attach veCTM to this node ${end}`;
|
|
7363
|
+
case "requestDetach":
|
|
7364
|
+
return `ContinuumDAO: request detach veCTM ${id} ${end}`;
|
|
7365
|
+
case "proposeBravo": {
|
|
7366
|
+
const title = text(input.title);
|
|
7367
|
+
return title ? `ContinuumDAO: propose "${title}" (Bravo) ${end}` : `ContinuumDAO: propose governance proposal (Bravo) ${end}`;
|
|
7368
|
+
}
|
|
7369
|
+
case "proposeDelta": {
|
|
7370
|
+
const title = text(input.title);
|
|
7371
|
+
return title ? `ContinuumDAO: propose "${title}" (Delta) ${end}` : `ContinuumDAO: propose governance proposal (Delta) ${end}`;
|
|
7372
|
+
}
|
|
7373
|
+
case "castVoteBravo": {
|
|
7374
|
+
const label = proposalLabel(input);
|
|
7375
|
+
const support = bravoLabel(input.support);
|
|
7376
|
+
return support ? `ContinuumDAO: vote ${support} on "${label}" ${end}` : `ContinuumDAO: vote on "${label}" ${end}`;
|
|
7377
|
+
}
|
|
7378
|
+
case "castVoteDelta":
|
|
7379
|
+
return `ContinuumDAO: vote on "${proposalLabel(input)}" (Delta) ${end}`;
|
|
7380
|
+
case "execute":
|
|
7381
|
+
return `ContinuumDAO: execute "${proposalLabel(input)}" ${end}`;
|
|
7382
|
+
case "cancel":
|
|
7383
|
+
return `ContinuumDAO: cancel "${proposalLabel(input)}" ${end}`;
|
|
7384
|
+
case "forumSignIn": {
|
|
7385
|
+
const who = text(input.username);
|
|
7386
|
+
return who ? `ContinuumDAO: sign in to the forum as ${who} ${end}` : `ContinuumDAO: sign in to the forum ${end}`;
|
|
7387
|
+
}
|
|
7388
|
+
case "marketplaceCreateListing":
|
|
7389
|
+
return `ContinuumDAO: list veCTM ${id} for ${moneyFromWei(input.askWei, input.paymentToken)} until ${deadlineLabel(input.deadline)} ${end}`;
|
|
7390
|
+
case "marketplaceDelist":
|
|
7391
|
+
return `ContinuumDAO: delist veCTM ${id} ${end}`;
|
|
7392
|
+
case "marketplaceFulfillListing":
|
|
7393
|
+
return `ContinuumDAO: buy veCTM ${id} for ${moneyFromWei(input.priceWei, input.paymentToken)} ${end}`;
|
|
7394
|
+
case "marketplaceCreateOffering":
|
|
7395
|
+
return `ContinuumDAO: offer ${moneyFromWei(input.bidWei, input.paymentToken)} for veCTM ${id} until ${deadlineLabel(input.deadline)} ${end}`;
|
|
7396
|
+
case "marketplaceRescind":
|
|
7397
|
+
return `ContinuumDAO: rescind offer on veCTM ${id} ${end}`;
|
|
7398
|
+
case "marketplaceFulfillOffering":
|
|
7399
|
+
return `ContinuumDAO: accept offer of ${moneyFromWei(input.priceWei, input.paymentToken)} on veCTM ${id} ${end}`;
|
|
7400
|
+
case "marketplaceCreateAuction":
|
|
7401
|
+
return `ContinuumDAO: auction veCTM ${id} reserve ${moneyFromWei(input.reserveWei, input.paymentToken)}, minimum increment ${moneyFromWei(input.minIncrementWei, input.paymentToken)}, until ${deadlineLabel(input.deadline)} ${end}`;
|
|
7402
|
+
case "marketplaceCancelAuction":
|
|
7403
|
+
return `ContinuumDAO: cancel auction for veCTM ${id} ${end}`;
|
|
7404
|
+
case "marketplaceAuctionBid":
|
|
7405
|
+
return `ContinuumDAO: bid ${moneyFromWei(input.priceWei, input.paymentToken)} on veCTM ${id} ${end}`;
|
|
7406
|
+
case "marketplaceSettleAuction":
|
|
7407
|
+
return `ContinuumDAO: settle auction for veCTM ${id} ${end}`;
|
|
7408
|
+
default:
|
|
7409
|
+
return `ContinuumDAO: ${end}`;
|
|
7410
|
+
}
|
|
7411
|
+
}
|
|
7412
|
+
function preprocessContinuumDaoPurpose(action, raw) {
|
|
7413
|
+
if (!raw || typeof raw !== "object" || Array.isArray(raw)) return raw;
|
|
7414
|
+
const o = { ...raw };
|
|
7415
|
+
const supplied = text(o.purposeText ?? o.purpose);
|
|
7416
|
+
if (supplied) {
|
|
7417
|
+
o.purposeText = supplied;
|
|
7418
|
+
return o;
|
|
7419
|
+
}
|
|
7420
|
+
o.purposeText = buildContinuumDaoMcpPurpose(action, o);
|
|
7421
|
+
return o;
|
|
7422
|
+
}
|
|
7423
|
+
|
|
7170
7424
|
// src/protocols/evm/continuum-dao/index.ts
|
|
7171
7425
|
registerProtocolModule(continuumDaoMarketplaceProtocolModule);
|
|
7172
7426
|
var continuumDaoProtocolModule = {
|
|
@@ -7220,6 +7474,6 @@ var continuumDaoProtocolModule = {
|
|
|
7220
7474
|
};
|
|
7221
7475
|
registerProtocolModule(continuumDaoProtocolModule);
|
|
7222
7476
|
|
|
7223
|
-
export { ATTACH_VECTM_SIGNATURE, AUCTION_STATUS, BRAVO_SUPPORT_LABELS, CONTINUUM_DAO_APPROVE_FALLBACK, CONTINUUM_DAO_ATTACH_FALLBACK, CONTINUUM_DAO_CANCEL_FALLBACK, CONTINUUM_DAO_CREATE_LOCK_FALLBACK, CONTINUUM_DAO_DELEGATE_FALLBACK, CONTINUUM_DAO_DEPLOYMENTS, CONTINUUM_DAO_DETACH_FALLBACK, CONTINUUM_DAO_ETHEREUM_CHAIN_ID, CONTINUUM_DAO_EVM_TYPES, CONTINUUM_DAO_EXECUTE_FALLBACK, CONTINUUM_DAO_GOVERNANCE_API, CONTINUUM_DAO_GOV_EVM_TYPES, CONTINUUM_DAO_INCREASE_AMOUNT_FALLBACK, CONTINUUM_DAO_INCREASE_UNLOCK_FALLBACK, CONTINUUM_DAO_LINEA_CATALOG_NETWORK, CONTINUUM_DAO_LINEA_CHAIN_ID, CONTINUUM_DAO_LINEA_GOVERNOR_ADDRESS, CONTINUUM_DAO_LINEA_GOVERNOR_LEGACY_ADDRESS, CONTINUUM_DAO_LINEA_SEPOLIA_CHAIN_ID, CONTINUUM_DAO_LIQUIDATE_FALLBACK, CONTINUUM_DAO_MARKETPLACE_API, CONTINUUM_DAO_MARKETPLACE_PROTOCOL_ID, CONTINUUM_DAO_MERGE_FALLBACK, CONTINUUM_DAO_PROPOSE_FALLBACK, CONTINUUM_DAO_PROTOCOL_ID, CONTINUUM_DAO_SPLIT_FALLBACK, CONTINUUM_DAO_TRANSFER_FALLBACK, CONTINUUM_DAO_VOTE_FALLBACK, CONTINUUM_DAO_WITHDRAW_FALLBACK, CTM_FEE_RATE_SCALE, CTM_TOKEN_ADDRESS, CTM_TOKEN_DECIMALS, CTM_TOKEN_NAME, CTM_TOKEN_SYMBOL, FEE_TIER_NAMES, FORUM_GOVERNANCE_SECTIONS, FORUM_IDEA_SECTION, FORUM_LOGIN_DELIVERY_KIND, FOUNDRY_PROPOSAL_REQUIRED_SERVERS, GOVERNOR_STATE, GOVERNOR_STATE_LABELS, INCREASE_UNLOCK_TIME_SIGNATURE, MARKETPLACE_APPROVE_FALLBACK, MARKETPLACE_AUCTION_CREATE_FALLBACK, MARKETPLACE_BID_FALLBACK, MARKETPLACE_FULFILL_FALLBACK, MARKETPLACE_LISTING_FALLBACK, MARKETPLACE_OFFERING_FALLBACK, MARKETPLACE_SETTLE_FALLBACK, MARKETPLACE_USDC_LINEA_ADDRESS, MARKETPLACE_WETH_LINEA_ADDRESS, MARKET_ORDER_STATUS, MAXTIME_SECONDS, MULTISIGN_AGENT_WALLET_LINEA_ADDRESS, PROPOSAL_TYPE_LABELS, PROPOSAL_TYPE_TO_FORUM_SECTION, VECTM_DEFAULT_MINIMUM_LOCK_WEI, VECTM_LIQ_MIN_LOCKED_WEI, VECTM_LIQ_PENALTY_DEN, VECTM_LIQ_PENALTY_NUM, VECTM_MAX_LOCK_WEEKS, VECTM_NODE_INFO_TUPLE, VECTM_TOKEN_NAME, VECTM_TOKEN_SYMBOL, VOTE_CAST_EVENT, VOTE_CAST_WITH_PARAMS_EVENT, VOTING_ESCROW_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_START_BLOCK, WEEK_SECONDS, addressInCommitteeList, applyDerivedStatuses, applyForumSectionCheck, applyMarketplaceEvent, applyNodeAttachments, assertContinuumDaoForumDeleteInput, assertContinuumDaoForumMarkReadInput, assertContinuumDaoForumRecentInput, assertContinuumDaoForumSearchInput, assertContinuumDaoForumTopicKey, assertContinuumDaoProposalSimulation, assertCreateLockAmount, assertCtmAmountAtLeastMinimum, assertDelegatee, assertExecutorOwnsLock, assertIncreaseAmount, assertIncreaseUnlockTime, assertLiquidate, assertLockDurationSeconds, assertMerge, assertProposalCatalogConstants, assertSplitExtracted, assertTransfer, assertUndelegateNotAlreadySelf, assertWithdraw, auctionCandidate, auctionStatusName, bravoSupportLabel, bucketGovernorState, buildBravoProposalArgs, buildDeltaProposalArgs, buildEvmMultisignBodyContinuumDaoAttachVeCtm, buildEvmMultisignBodyContinuumDaoAttachVeCtmFromMcp, buildEvmMultisignBodyContinuumDaoCancel, buildEvmMultisignBodyContinuumDaoCastVoteBravo, buildEvmMultisignBodyContinuumDaoCastVoteBravoFromMcp, buildEvmMultisignBodyContinuumDaoCastVoteDelta, buildEvmMultisignBodyContinuumDaoCreateLock, buildEvmMultisignBodyContinuumDaoDelegate, buildEvmMultisignBodyContinuumDaoExecute, buildEvmMultisignBodyContinuumDaoForumSignIn, buildEvmMultisignBodyContinuumDaoIncreaseAmount, buildEvmMultisignBodyContinuumDaoIncreaseUnlockTime, buildEvmMultisignBodyContinuumDaoLiquidate, buildEvmMultisignBodyContinuumDaoMarketplaceAuctionBid, buildEvmMultisignBodyContinuumDaoMarketplaceCancelAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateListing, buildEvmMultisignBodyContinuumDaoMarketplaceCreateOffering, buildEvmMultisignBodyContinuumDaoMarketplaceDelist, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillListing, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillOffering, buildEvmMultisignBodyContinuumDaoMarketplaceRescind, buildEvmMultisignBodyContinuumDaoMarketplaceSettleAuction, buildEvmMultisignBodyContinuumDaoMerge, buildEvmMultisignBodyContinuumDaoProposeBravo, buildEvmMultisignBodyContinuumDaoProposeDelta, buildEvmMultisignBodyContinuumDaoProposeDeltaFromMcp, buildEvmMultisignBodyContinuumDaoRequestDetach, buildEvmMultisignBodyContinuumDaoSplit, buildEvmMultisignBodyContinuumDaoTransfer, buildEvmMultisignBodyContinuumDaoUndelegate, buildEvmMultisignBodyContinuumDaoWithdraw, buildFeeAlternativeSummary, buildFoundryProposalSimulatePlan, calculateMarketplaceFee, collectVotesFromLogs, computeLiquidationAmounts, continuumDaoComposeProposalAction, continuumDaoDeployment, continuumDaoExplainProposal, continuumDaoFetchDelegates, continuumDaoFetchLiveProposals, continuumDaoFetchProposal, continuumDaoFetchProposalCount, continuumDaoFetchProposalState, continuumDaoFetchProposalVoteEligibility, continuumDaoFetchProposalVotes, continuumDaoFetchProposals, continuumDaoFetchVotingPower, continuumDaoForumCreateIdea, continuumDaoForumCreateTopic, continuumDaoForumDelete, continuumDaoForumFetchPost, continuumDaoForumFetchThread, continuumDaoForumMarkRead, continuumDaoForumMarkUnread, continuumDaoForumMe, continuumDaoForumReact, continuumDaoForumRecent, continuumDaoForumReply, continuumDaoForumReplyCount, continuumDaoForumResolve, continuumDaoForumSearch, continuumDaoForumSections, continuumDaoForumSignInEligible, continuumDaoForumSignInNonce, continuumDaoForumSignOut, continuumDaoForumUnread, continuumDaoForumUrl, continuumDaoForumUserPostIds, continuumDaoHashProposal, continuumDaoMarketplaceProtocolModule, continuumDaoMpaFlag, continuumDaoMpaListing, continuumDaoMpaMailboxList, continuumDaoMpaMailboxOpen, continuumDaoMpaMailboxSend, continuumDaoMpaRetract, continuumDaoProtocolModule, continuumDaoRegisterProposal, continuumDaoSignatureText, continuumDaoSimulateProposal, continuumDaoTechnocoreBind, ctmTokenAddressOnEvmChain, decodeDeltaVoteParams, deriveAuctionStatus, emptyMarketplaceIndexCache, encodeContinuumDaoNodeInfo, encodeDeltaMetadata, encodeDeltaVoteParams, encodeGovActionCalldata, estimateBlockAtTimestamp, executableGovBatches, expectedForumSectionForProposalType, explainGovAction, explainProposalRecord, explorerBase, fetchContinuumDaoCommitteeAddresses, fetchContinuumDaoMarketplaceActivity, fetchContinuumDaoMarketplaceAuctions, fetchContinuumDaoMarketplaceConfig, fetchContinuumDaoMarketplaceFeePreview, fetchContinuumDaoMarketplaceListings, fetchContinuumDaoMarketplaceOfferings, fetchContinuumDaoMarketplaceToken, floorUnlockTimeSeconds, foldMarketplaceEvents, formatProposalSimulationFailure, foundryPlanHasSequentialExecute, foundryScriptContainsCall, getMarketplaceIndexMemoryCache, governorAddressOnEvmChain, governorWriteAbi, howVoted, isConfiguredAddress, isContinuumDaoCtmOnAssetsChain, isContinuumDaoLockChain, isContinuumDaoSupportedChainId, isContinuumDaoVeCtmOnAssetsChain, isCtmTokenSymbol, isForumIdeaSection, isGovNoOpAction, isLegacyContinuumDaoGovernor, isLineaHomeNetwork, isLiveAuctionStatus, isOpenOrder, isRemoteC3Action, isVotingEscrowContinuumName, keyGenOwnsVeCtm, listContinuumDaoDefaultAssets, listingCandidate, loadMarketplacePlanSnapshot, looksLikeProposalCatalogId, looksLikeUnixSeconds, marketplacePublicClient, marketplaceVeCtmReceivedBy, maxLockDurationSeconds, monthsOfFees, normalizeGovConfiguration, normalizeNodeInfo, orderStatusName, parseCommitteeAddressesFromConstitution, pickFeeAlternativeExample, planMarketplaceSteps, preflightAttachVeCtm, preflightCreateLock, preflightDelegate, preflightIncreaseAmount, preflightIncreaseUnlockTime, preflightLiquidate, preflightMerge, preflightRequestDetach, preflightSplit, preflightTransfer, preflightUndelegate, preflightWithdraw, proposalCatalogCanonical, proposalCatalogDocument, proposalDescriptionHash, publicClient2 as publicClient, quoteContinuumDaoMarketplaceFeeAlternative, rankMarketplaceSearchHits, readCtmBalanceWei, readMarketplaceConfigFromChain, readMarketplaceFeePreviewFromChain, readMinimumLockWei, readVeCtmLockState, requireGovernor, resetContinuumDaoCommitteeCache, resolveAttachGroupId, resolveGovernorProposalRef, resolveProposalCatalogRange, scanMarketplaceLogs, searchContinuumDaoMarketplace, setMarketplaceIndexMemoryCache, stampLineaCatalogActions, summarizeLiveProposals, summarizeProposalVotes, throwIfProposalSimulationFailed, validateAbiParameter, votingEscrowAddressOnEvmChain, votingEscrowMarketplaceAddressOnEvmChain, votingPowerAboveUntil, votingPowerRefuse, votingPowerWarning };
|
|
7477
|
+
export { ATTACH_VECTM_SIGNATURE, AUCTION_STATUS, BRAVO_SUPPORT_LABELS, CONTINUUM_DAO_APPROVE_FALLBACK, CONTINUUM_DAO_ATTACH_FALLBACK, CONTINUUM_DAO_CANCEL_FALLBACK, CONTINUUM_DAO_CREATE_LOCK_FALLBACK, CONTINUUM_DAO_DELEGATE_FALLBACK, CONTINUUM_DAO_DEPLOYMENTS, CONTINUUM_DAO_DETACH_FALLBACK, CONTINUUM_DAO_ETHEREUM_CHAIN_ID, CONTINUUM_DAO_EVM_TYPES, CONTINUUM_DAO_EXECUTE_FALLBACK, CONTINUUM_DAO_GOVERNANCE_API, CONTINUUM_DAO_GOV_EVM_TYPES, CONTINUUM_DAO_INCREASE_AMOUNT_FALLBACK, CONTINUUM_DAO_INCREASE_UNLOCK_FALLBACK, CONTINUUM_DAO_LINEA_CATALOG_NETWORK, CONTINUUM_DAO_LINEA_CHAIN_ID, CONTINUUM_DAO_LINEA_GOVERNOR_ADDRESS, CONTINUUM_DAO_LINEA_GOVERNOR_LEGACY_ADDRESS, CONTINUUM_DAO_LINEA_SEPOLIA_CHAIN_ID, CONTINUUM_DAO_LIQUIDATE_FALLBACK, CONTINUUM_DAO_MARKETPLACE_API, CONTINUUM_DAO_MARKETPLACE_PROTOCOL_ID, CONTINUUM_DAO_MERGE_FALLBACK, CONTINUUM_DAO_PROPOSE_FALLBACK, CONTINUUM_DAO_PROTOCOL_ID, CONTINUUM_DAO_SPLIT_FALLBACK, CONTINUUM_DAO_TRANSFER_FALLBACK, CONTINUUM_DAO_VOTE_FALLBACK, CONTINUUM_DAO_WITHDRAW_FALLBACK, CTM_FEE_RATE_SCALE, CTM_TOKEN_ADDRESS, CTM_TOKEN_DECIMALS, CTM_TOKEN_NAME, CTM_TOKEN_SYMBOL, FEE_TIER_NAMES, FORUM_GOVERNANCE_SECTIONS, FORUM_IDEA_SECTION, FORUM_LOGIN_DELIVERY_KIND, FOUNDRY_PROPOSAL_REQUIRED_SERVERS, GOVERNOR_STATE, GOVERNOR_STATE_LABELS, INCREASE_UNLOCK_TIME_SIGNATURE, MARKETPLACE_APPROVE_FALLBACK, MARKETPLACE_AUCTION_CREATE_FALLBACK, MARKETPLACE_BID_FALLBACK, MARKETPLACE_FULFILL_FALLBACK, MARKETPLACE_LISTING_FALLBACK, MARKETPLACE_OFFERING_FALLBACK, MARKETPLACE_SETTLE_FALLBACK, MARKETPLACE_USDC_LINEA_ADDRESS, MARKETPLACE_WETH_LINEA_ADDRESS, MARKET_ORDER_STATUS, MAXTIME_SECONDS, MULTISIGN_AGENT_WALLET_LINEA_ADDRESS, PROPOSAL_TYPE_LABELS, PROPOSAL_TYPE_TO_FORUM_SECTION, VECTM_DEFAULT_MINIMUM_LOCK_WEI, VECTM_LIQ_MIN_LOCKED_WEI, VECTM_LIQ_PENALTY_DEN, VECTM_LIQ_PENALTY_NUM, VECTM_MAX_LOCK_WEEKS, VECTM_NODE_INFO_TUPLE, VECTM_TOKEN_NAME, VECTM_TOKEN_SYMBOL, VOTE_CAST_EVENT, VOTE_CAST_WITH_PARAMS_EVENT, VOTING_ESCROW_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_LINEA_ADDRESS, VOTING_ESCROW_MARKETPLACE_START_BLOCK, WEEK_SECONDS, addressInCommitteeList, applyDerivedStatuses, applyForumSectionCheck, applyMarketplaceEvent, applyNodeAttachments, assertContinuumDaoForumDeleteInput, assertContinuumDaoForumMarkReadInput, assertContinuumDaoForumRecentInput, assertContinuumDaoForumSearchInput, assertContinuumDaoForumTopicKey, assertContinuumDaoProposalSimulation, assertCreateLockAmount, assertCtmAmountAtLeastMinimum, assertDelegatee, assertExecutorOwnsLock, assertIncreaseAmount, assertIncreaseUnlockTime, assertLiquidate, assertLockDurationSeconds, assertMerge, assertProposalCatalogConstants, assertSplitExtracted, assertTransfer, assertUndelegateNotAlreadySelf, assertWithdraw, auctionCandidate, auctionStatusName, bravoSupportLabel, bucketGovernorState, buildBravoProposalArgs, buildContinuumDaoMcpPurpose, buildDeltaProposalArgs, buildEvmMultisignBodyContinuumDaoAttachVeCtm, buildEvmMultisignBodyContinuumDaoAttachVeCtmFromMcp, buildEvmMultisignBodyContinuumDaoCancel, buildEvmMultisignBodyContinuumDaoCastVoteBravo, buildEvmMultisignBodyContinuumDaoCastVoteBravoFromMcp, buildEvmMultisignBodyContinuumDaoCastVoteDelta, buildEvmMultisignBodyContinuumDaoCreateLock, buildEvmMultisignBodyContinuumDaoDelegate, buildEvmMultisignBodyContinuumDaoExecute, buildEvmMultisignBodyContinuumDaoForumSignIn, buildEvmMultisignBodyContinuumDaoIncreaseAmount, buildEvmMultisignBodyContinuumDaoIncreaseUnlockTime, buildEvmMultisignBodyContinuumDaoLiquidate, buildEvmMultisignBodyContinuumDaoMarketplaceAuctionBid, buildEvmMultisignBodyContinuumDaoMarketplaceCancelAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateAuction, buildEvmMultisignBodyContinuumDaoMarketplaceCreateListing, buildEvmMultisignBodyContinuumDaoMarketplaceCreateOffering, buildEvmMultisignBodyContinuumDaoMarketplaceDelist, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillListing, buildEvmMultisignBodyContinuumDaoMarketplaceFulfillOffering, buildEvmMultisignBodyContinuumDaoMarketplaceRescind, buildEvmMultisignBodyContinuumDaoMarketplaceSettleAuction, buildEvmMultisignBodyContinuumDaoMerge, buildEvmMultisignBodyContinuumDaoProposeBravo, buildEvmMultisignBodyContinuumDaoProposeDelta, buildEvmMultisignBodyContinuumDaoProposeDeltaFromMcp, buildEvmMultisignBodyContinuumDaoRequestDetach, buildEvmMultisignBodyContinuumDaoSplit, buildEvmMultisignBodyContinuumDaoTransfer, buildEvmMultisignBodyContinuumDaoUndelegate, buildEvmMultisignBodyContinuumDaoWithdraw, buildFeeAlternativeSummary, buildFoundryProposalSimulatePlan, calculateMarketplaceFee, collectVotesFromLogs, computeLiquidationAmounts, continuumDaoComposeProposalAction, continuumDaoDeployment, continuumDaoExplainProposal, continuumDaoFetchDelegates, continuumDaoFetchLiveProposals, continuumDaoFetchProposal, continuumDaoFetchProposalCount, continuumDaoFetchProposalState, continuumDaoFetchProposalVoteEligibility, continuumDaoFetchProposalVotes, continuumDaoFetchProposals, continuumDaoFetchVotingPower, continuumDaoForumCreateIdea, continuumDaoForumCreateTopic, continuumDaoForumDelete, continuumDaoForumFetchPost, continuumDaoForumFetchThread, continuumDaoForumMarkRead, continuumDaoForumMarkUnread, continuumDaoForumMe, continuumDaoForumReact, continuumDaoForumRecent, continuumDaoForumReply, continuumDaoForumReplyCount, continuumDaoForumResolve, continuumDaoForumSearch, continuumDaoForumSections, continuumDaoForumSignInEligible, continuumDaoForumSignInNonce, continuumDaoForumSignOut, continuumDaoForumUnread, continuumDaoForumUrl, continuumDaoForumUserPostIds, continuumDaoHashProposal, continuumDaoMarketplaceProtocolModule, continuumDaoMpaFlag, continuumDaoMpaListing, continuumDaoMpaMailboxList, continuumDaoMpaMailboxOpen, continuumDaoMpaMailboxSend, continuumDaoMpaRetract, continuumDaoProtocolModule, continuumDaoRegisterProposal, continuumDaoSignatureText, continuumDaoSimulateProposal, continuumDaoTechnocoreBind, ctmTokenAddressOnEvmChain, decodeDeltaVoteParams, deriveAuctionStatus, emptyMarketplaceIndexCache, encodeContinuumDaoNodeInfo, encodeDeltaMetadata, encodeDeltaVoteParams, encodeGovActionCalldata, estimateBlockAtTimestamp, executableGovBatches, expectedForumSectionForProposalType, explainGovAction, explainProposalRecord, explorerBase, fetchContinuumDaoCommitteeAddresses, fetchContinuumDaoMarketplaceActivity, fetchContinuumDaoMarketplaceAuctions, fetchContinuumDaoMarketplaceConfig, fetchContinuumDaoMarketplaceFeePreview, fetchContinuumDaoMarketplaceListings, fetchContinuumDaoMarketplaceOfferings, fetchContinuumDaoMarketplaceToken, floorUnlockTimeSeconds, foldMarketplaceEvents, formatProposalSimulationFailure, foundryPlanHasSequentialExecute, foundryScriptContainsCall, getMarketplaceIndexMemoryCache, governorAddressOnEvmChain, governorWriteAbi, howVoted, isConfiguredAddress, isContinuumDaoCtmOnAssetsChain, isContinuumDaoLockChain, isContinuumDaoSupportedChainId, isContinuumDaoVeCtmOnAssetsChain, isCtmTokenSymbol, isForumIdeaSection, isGovNoOpAction, isLegacyContinuumDaoGovernor, isLineaHomeNetwork, isLiveAuctionStatus, isOpenOrder, isRemoteC3Action, isVotingEscrowContinuumName, keyGenOwnsVeCtm, listContinuumDaoDefaultAssets, listingCandidate, loadMarketplacePlanSnapshot, looksLikeProposalCatalogId, looksLikeUnixSeconds, marketplacePublicClient, marketplaceVeCtmReceivedBy, maxLockDurationSeconds, monthsOfFees, normalizeGovConfiguration, normalizeNodeInfo, orderStatusName, parseCommitteeAddressesFromConstitution, pickFeeAlternativeExample, planMarketplaceSteps, preflightAttachVeCtm, preflightCreateLock, preflightDelegate, preflightIncreaseAmount, preflightIncreaseUnlockTime, preflightLiquidate, preflightMerge, preflightRequestDetach, preflightSplit, preflightTransfer, preflightUndelegate, preflightWithdraw, preprocessContinuumDaoPurpose, proposalCatalogCanonical, proposalCatalogDocument, proposalDescriptionHash, publicClient2 as publicClient, quoteContinuumDaoMarketplaceFeeAlternative, rankMarketplaceSearchHits, readCtmBalanceWei, readMarketplaceConfigFromChain, readMarketplaceFeePreviewFromChain, readMinimumLockWei, readVeCtmLockState, requireGovernor, resetContinuumDaoCommitteeCache, resolveAttachGroupId, resolveGovernorProposalRef, resolveProposalCatalogRange, scanMarketplaceLogs, searchContinuumDaoMarketplace, setMarketplaceIndexMemoryCache, stampLineaCatalogActions, summarizeLiveProposals, summarizeProposalVotes, throwIfProposalSimulationFailed, validateAbiParameter, votingEscrowAddressOnEvmChain, votingEscrowMarketplaceAddressOnEvmChain, votingPowerAboveUntil, votingPowerRefuse, votingPowerWarning };
|
|
7224
7478
|
//# sourceMappingURL=index.js.map
|
|
7225
7479
|
//# sourceMappingURL=index.js.map
|