@andrewkimjoseph/celina-sdk 0.15.1 → 0.15.2
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/build/config/celina-tag.d.ts +5 -0
- package/build/config/celina-tag.js +67 -3
- package/build/config/celina-tag.js.map +1 -1
- package/build/index.d.ts +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/src/a2a/agent-card.d.ts +37 -0
- package/build/src/a2a/agent-card.js +46 -0
- package/build/src/a2a/agent-card.js.map +1 -0
- package/build/src/a2a/index.d.ts +2 -0
- package/build/src/a2a/index.js +3 -0
- package/build/src/a2a/index.js.map +1 -0
- package/build/src/a2a/skills.d.ts +18 -0
- package/build/src/a2a/skills.js +106 -0
- package/build/src/a2a/skills.js.map +1 -0
- package/build/src/aa/create-aa-client.d.ts +44 -0
- package/build/src/aa/create-aa-client.js +115 -0
- package/build/src/aa/create-aa-client.js.map +1 -0
- package/build/src/aa/gas-sponsorship.d.ts +27 -0
- package/build/src/aa/gas-sponsorship.js +65 -0
- package/build/src/aa/gas-sponsorship.js.map +1 -0
- package/build/src/aa/index.d.ts +4 -0
- package/build/src/aa/index.js +4 -0
- package/build/src/aa/index.js.map +1 -0
- package/build/src/aa/prepared-calls.d.ts +8 -0
- package/build/src/aa/prepared-calls.js +27 -0
- package/build/src/aa/prepared-calls.js.map +1 -0
- package/build/src/aa/types.d.ts +61 -0
- package/build/src/aa/types.js +2 -0
- package/build/src/aa/types.js.map +1 -0
- package/build/src/abis/aave-pool.d.ts +37 -0
- package/build/src/abis/aave-pool.js +26 -0
- package/build/src/abis/aave-pool.js.map +1 -0
- package/build/src/abis/accounts.d.ts +13 -0
- package/build/src/abis/accounts.js +10 -0
- package/build/src/abis/accounts.js.map +1 -0
- package/build/src/abis/election.d.ts +124 -0
- package/build/src/abis/election.js +88 -0
- package/build/src/abis/election.js.map +1 -0
- package/build/src/abis/gooddollar-broker.d.ts +77 -0
- package/build/src/abis/gooddollar-broker.js +44 -0
- package/build/src/abis/gooddollar-broker.js.map +1 -0
- package/build/src/abis/gooddollar-identity.d.ts +85 -0
- package/build/src/abis/gooddollar-identity.js +52 -0
- package/build/src/abis/gooddollar-identity.js.map +1 -0
- package/build/src/abis/governance.d.ts +86 -0
- package/build/src/abis/governance.js +68 -0
- package/build/src/abis/governance.js.map +1 -0
- package/build/src/abis/locked-gold.d.ts +10 -0
- package/build/src/abis/locked-gold.js +10 -0
- package/build/src/abis/locked-gold.js.map +1 -0
- package/build/src/abis/nft.d.ts +107 -0
- package/build/src/abis/nft.js +75 -0
- package/build/src/abis/nft.js.map +1 -0
- package/build/src/abis/permit2.d.ts +43 -0
- package/build/src/abis/permit2.js +30 -0
- package/build/src/abis/permit2.js.map +1 -0
- package/build/src/abis/self-registry.d.ts +194 -0
- package/build/src/abis/self-registry.js +120 -0
- package/build/src/abis/self-registry.js.map +1 -0
- package/build/src/abis/ubi-scheme.d.ts +91 -0
- package/build/src/abis/ubi-scheme.js +66 -0
- package/build/src/abis/ubi-scheme.js.map +1 -0
- package/build/src/abis/uniswap-state-view.d.ts +34 -0
- package/build/src/abis/uniswap-state-view.js +22 -0
- package/build/src/abis/uniswap-state-view.js.map +1 -0
- package/build/src/abis/uniswap-v4-quoter.d.ts +86 -0
- package/build/src/abis/uniswap-v4-quoter.js +64 -0
- package/build/src/abis/uniswap-v4-quoter.js.map +1 -0
- package/build/src/abis/universal-router.d.ts +16 -0
- package/build/src/abis/universal-router.js +14 -0
- package/build/src/abis/universal-router.js.map +1 -0
- package/build/src/abis/validators-minimal.d.ts +65 -0
- package/build/src/abis/validators-minimal.js +39 -0
- package/build/src/abis/validators-minimal.js.map +1 -0
- package/build/src/analytics/amplitude.d.ts +11 -0
- package/build/src/analytics/amplitude.js +76 -0
- package/build/src/analytics/amplitude.js.map +1 -0
- package/build/src/analytics/config.d.ts +7 -0
- package/build/src/analytics/config.js +25 -0
- package/build/src/analytics/config.js.map +1 -0
- package/build/src/analytics/consumer-package.d.ts +9 -0
- package/build/src/analytics/consumer-package.js +143 -0
- package/build/src/analytics/consumer-package.js.map +1 -0
- package/build/src/analytics/mcp-tool-events.d.ts +5 -0
- package/build/src/analytics/mcp-tool-events.js +53 -0
- package/build/src/analytics/mcp-tool-events.js.map +1 -0
- package/build/src/analytics/wallet-context.d.ts +11 -0
- package/build/src/analytics/wallet-context.js +81 -0
- package/build/src/analytics/wallet-context.js.map +1 -0
- package/build/src/analytics/wallet-extract.d.ts +9 -0
- package/build/src/analytics/wallet-extract.js +21 -0
- package/build/src/analytics/wallet-extract.js.map +1 -0
- package/build/src/analytics/wrap-service.d.ts +5 -0
- package/build/src/analytics/wrap-service.js +38 -0
- package/build/src/analytics/wrap-service.js.map +1 -0
- package/build/src/clients/celo-client.d.ts +19 -0
- package/build/src/clients/celo-client.js +32 -0
- package/build/src/clients/celo-client.js.map +1 -0
- package/build/src/clients/ens-client.d.ts +17 -0
- package/build/src/clients/ens-client.js +30 -0
- package/build/src/clients/ens-client.js.map +1 -0
- package/build/src/clients/mento-sdk.d.ts +2 -0
- package/build/src/clients/mento-sdk.js +9 -0
- package/build/src/clients/mento-sdk.js.map +1 -0
- package/build/src/clients/self-api.d.ts +82 -0
- package/build/src/clients/self-api.js +242 -0
- package/build/src/clients/self-api.js.map +1 -0
- package/build/src/clients/uniswap-sdk.d.ts +4 -0
- package/build/src/clients/uniswap-sdk.js +13 -0
- package/build/src/clients/uniswap-sdk.js.map +1 -0
- package/build/src/config/aave.d.ts +17 -0
- package/build/src/config/aave.js +77 -0
- package/build/src/config/aave.js.map +1 -0
- package/build/src/config/celina-tag.d.ts +55 -0
- package/build/src/config/celina-tag.js +234 -0
- package/build/src/config/celina-tag.js.map +1 -0
- package/build/src/config/celo-core-contracts.d.ts +8 -0
- package/build/src/config/celo-core-contracts.js +9 -0
- package/build/src/config/celo-core-contracts.js.map +1 -0
- package/build/src/config/chains.d.ts +937 -0
- package/build/src/config/chains.js +319 -0
- package/build/src/config/chains.js.map +1 -0
- package/build/src/config/gooddollar.d.ts +16 -0
- package/build/src/config/gooddollar.js +24 -0
- package/build/src/config/gooddollar.js.map +1 -0
- package/build/src/config/sdk-config.d.ts +44 -0
- package/build/src/config/sdk-config.js +28 -0
- package/build/src/config/sdk-config.js.map +1 -0
- package/build/src/config/self.d.ts +22 -0
- package/build/src/config/self.js +27 -0
- package/build/src/config/self.js.map +1 -0
- package/build/src/config/uniswap.d.ts +42 -0
- package/build/src/config/uniswap.js +76 -0
- package/build/src/config/uniswap.js.map +1 -0
- package/build/src/index.d.ts +127 -0
- package/build/src/index.js +72 -0
- package/build/src/index.js.map +1 -0
- package/build/src/oasf/index.d.ts +2 -0
- package/build/src/oasf/index.js +3 -0
- package/build/src/oasf/index.js.map +1 -0
- package/build/src/oasf/record.d.ts +39 -0
- package/build/src/oasf/record.js +35 -0
- package/build/src/oasf/record.js.map +1 -0
- package/build/src/oasf/taxonomy.d.ts +19 -0
- package/build/src/oasf/taxonomy.js +46 -0
- package/build/src/oasf/taxonomy.js.map +1 -0
- package/build/src/services/aave.service.d.ts +59 -0
- package/build/src/services/aave.service.js +210 -0
- package/build/src/services/aave.service.js.map +1 -0
- package/build/src/services/account.service.d.ts +22 -0
- package/build/src/services/account.service.js +29 -0
- package/build/src/services/account.service.js.map +1 -0
- package/build/src/services/agentkarma.service.d.ts +89 -0
- package/build/src/services/agentkarma.service.js +102 -0
- package/build/src/services/agentkarma.service.js.map +1 -0
- package/build/src/services/blockchain.service.d.ts +126 -0
- package/build/src/services/blockchain.service.js +188 -0
- package/build/src/services/blockchain.service.js.map +1 -0
- package/build/src/services/contract.service.d.ts +78 -0
- package/build/src/services/contract.service.js +117 -0
- package/build/src/services/contract.service.js.map +1 -0
- package/build/src/services/ens.service.d.ts +44 -0
- package/build/src/services/ens.service.js +92 -0
- package/build/src/services/ens.service.js.map +1 -0
- package/build/src/services/gooddollar.service.d.ts +184 -0
- package/build/src/services/gooddollar.service.js +675 -0
- package/build/src/services/gooddollar.service.js.map +1 -0
- package/build/src/services/governance.service.d.ts +96 -0
- package/build/src/services/governance.service.js +255 -0
- package/build/src/services/governance.service.js.map +1 -0
- package/build/src/services/mento-fx.service.d.ts +81 -0
- package/build/src/services/mento-fx.service.js +318 -0
- package/build/src/services/mento-fx.service.js.map +1 -0
- package/build/src/services/nft.service.d.ts +58 -0
- package/build/src/services/nft.service.js +222 -0
- package/build/src/services/nft.service.js.map +1 -0
- package/build/src/services/self-session-store.d.ts +19 -0
- package/build/src/services/self-session-store.js +28 -0
- package/build/src/services/self-session-store.js.map +1 -0
- package/build/src/services/self.service.d.ts +241 -0
- package/build/src/services/self.service.js +699 -0
- package/build/src/services/self.service.js.map +1 -0
- package/build/src/services/staking.service.d.ts +140 -0
- package/build/src/services/staking.service.js +444 -0
- package/build/src/services/staking.service.js.map +1 -0
- package/build/src/services/token.service.d.ts +110 -0
- package/build/src/services/token.service.js +189 -0
- package/build/src/services/token.service.js.map +1 -0
- package/build/src/services/transaction.service.d.ts +69 -0
- package/build/src/services/transaction.service.js +197 -0
- package/build/src/services/transaction.service.js.map +1 -0
- package/build/src/services/uniswap-path-router.d.ts +40 -0
- package/build/src/services/uniswap-path-router.js +168 -0
- package/build/src/services/uniswap-path-router.js.map +1 -0
- package/build/src/services/uniswap-pool-discovery.d.ts +55 -0
- package/build/src/services/uniswap-pool-discovery.js +198 -0
- package/build/src/services/uniswap-pool-discovery.js.map +1 -0
- package/build/src/services/uniswap.service.d.ts +83 -0
- package/build/src/services/uniswap.service.js +352 -0
- package/build/src/services/uniswap.service.js.map +1 -0
- package/build/src/simulation/index.d.ts +5 -0
- package/build/src/simulation/index.js +2 -0
- package/build/src/simulation/index.js.map +1 -0
- package/build/src/simulation/simulate-prepared-step.d.ts +17 -0
- package/build/src/simulation/simulate-prepared-step.js +42 -0
- package/build/src/simulation/simulate-prepared-step.js.map +1 -0
- package/build/src/tools/catalog.d.ts +11 -0
- package/build/src/tools/catalog.js +43 -0
- package/build/src/tools/catalog.js.map +1 -0
- package/build/src/tools/domains/aave.d.ts +2 -0
- package/build/src/tools/domains/aave.js +115 -0
- package/build/src/tools/domains/aave.js.map +1 -0
- package/build/src/tools/domains/agentkarma.d.ts +2 -0
- package/build/src/tools/domains/agentkarma.js +92 -0
- package/build/src/tools/domains/agentkarma.js.map +1 -0
- package/build/src/tools/domains/blockchain.d.ts +2 -0
- package/build/src/tools/domains/blockchain.js +122 -0
- package/build/src/tools/domains/blockchain.js.map +1 -0
- package/build/src/tools/domains/browser.d.ts +2 -0
- package/build/src/tools/domains/browser.js +45 -0
- package/build/src/tools/domains/browser.js.map +1 -0
- package/build/src/tools/domains/contract.d.ts +2 -0
- package/build/src/tools/domains/contract.js +67 -0
- package/build/src/tools/domains/contract.js.map +1 -0
- package/build/src/tools/domains/ens.d.ts +2 -0
- package/build/src/tools/domains/ens.js +16 -0
- package/build/src/tools/domains/ens.js.map +1 -0
- package/build/src/tools/domains/gooddollar.d.ts +2 -0
- package/build/src/tools/domains/gooddollar.js +171 -0
- package/build/src/tools/domains/gooddollar.js.map +1 -0
- package/build/src/tools/domains/governance.d.ts +2 -0
- package/build/src/tools/domains/governance.js +41 -0
- package/build/src/tools/domains/governance.js.map +1 -0
- package/build/src/tools/domains/index.d.ts +1 -0
- package/build/src/tools/domains/index.js +33 -0
- package/build/src/tools/domains/index.js.map +1 -0
- package/build/src/tools/domains/mento-fx.d.ts +2 -0
- package/build/src/tools/domains/mento-fx.js +67 -0
- package/build/src/tools/domains/mento-fx.js.map +1 -0
- package/build/src/tools/domains/nft.d.ts +2 -0
- package/build/src/tools/domains/nft.js +38 -0
- package/build/src/tools/domains/nft.js.map +1 -0
- package/build/src/tools/domains/self.d.ts +2 -0
- package/build/src/tools/domains/self.js +187 -0
- package/build/src/tools/domains/self.js.map +1 -0
- package/build/src/tools/domains/staking.d.ts +2 -0
- package/build/src/tools/domains/staking.js +74 -0
- package/build/src/tools/domains/staking.js.map +1 -0
- package/build/src/tools/domains/token.d.ts +2 -0
- package/build/src/tools/domains/token.js +74 -0
- package/build/src/tools/domains/token.js.map +1 -0
- package/build/src/tools/domains/transaction.d.ts +2 -0
- package/build/src/tools/domains/transaction.js +120 -0
- package/build/src/tools/domains/transaction.js.map +1 -0
- package/build/src/tools/domains/uniswap.d.ts +2 -0
- package/build/src/tools/domains/uniswap.js +67 -0
- package/build/src/tools/domains/uniswap.js.map +1 -0
- package/build/src/tools/filter.d.ts +2 -0
- package/build/src/tools/filter.js +50 -0
- package/build/src/tools/filter.js.map +1 -0
- package/build/src/tools/index.d.ts +7 -0
- package/build/src/tools/index.js +7 -0
- package/build/src/tools/index.js.map +1 -0
- package/build/src/tools/schemas/common.d.ts +165 -0
- package/build/src/tools/schemas/common.js +207 -0
- package/build/src/tools/schemas/common.js.map +1 -0
- package/build/src/tools/schemas/wallet-params.d.ts +9 -0
- package/build/src/tools/schemas/wallet-params.js +52 -0
- package/build/src/tools/schemas/wallet-params.js.map +1 -0
- package/build/src/tools/swap-routing.d.ts +25 -0
- package/build/src/tools/swap-routing.js +174 -0
- package/build/src/tools/swap-routing.js.map +1 -0
- package/build/src/tools/types.d.ts +124 -0
- package/build/src/tools/types.js +2 -0
- package/build/src/tools/types.js.map +1 -0
- package/build/src/tools/utils/normalize-token.d.ts +2 -0
- package/build/src/tools/utils/normalize-token.js +12 -0
- package/build/src/tools/utils/normalize-token.js.map +1 -0
- package/build/src/tools/utils/wallet.d.ts +4 -0
- package/build/src/tools/utils/wallet.js +8 -0
- package/build/src/tools/utils/wallet.js.map +1 -0
- package/build/src/tools/website-sync.d.ts +28 -0
- package/build/src/tools/website-sync.js +198 -0
- package/build/src/tools/website-sync.js.map +1 -0
- package/build/src/types/prepared.d.ts +43 -0
- package/build/src/types/prepared.js +15 -0
- package/build/src/types/prepared.js.map +1 -0
- package/build/src/utils/celo-format.d.ts +6 -0
- package/build/src/utils/celo-format.js +17 -0
- package/build/src/utils/celo-format.js.map +1 -0
- package/build/src/utils/erc20-allowance-storage.d.ts +20 -0
- package/build/src/utils/erc20-allowance-storage.js +64 -0
- package/build/src/utils/erc20-allowance-storage.js.map +1 -0
- package/build/src/utils/format-date.d.ts +2 -0
- package/build/src/utils/format-date.js +13 -0
- package/build/src/utils/format-date.js.map +1 -0
- package/build/src/utils/format-duration.d.ts +2 -0
- package/build/src/utils/format-duration.js +17 -0
- package/build/src/utils/format-duration.js.map +1 -0
- package/build/src/utils/format-unix-datetime.d.ts +4 -0
- package/build/src/utils/format-unix-datetime.js +18 -0
- package/build/src/utils/format-unix-datetime.js.map +1 -0
- package/build/src/utils/gooddollar-ubi-period.d.ts +23 -0
- package/build/src/utils/gooddollar-ubi-period.js +23 -0
- package/build/src/utils/gooddollar-ubi-period.js.map +1 -0
- package/build/src/utils/normalize-address.d.ts +7 -0
- package/build/src/utils/normalize-address.js +16 -0
- package/build/src/utils/normalize-address.js.map +1 -0
- package/build/src/utils/self-format.d.ts +28 -0
- package/build/src/utils/self-format.js +79 -0
- package/build/src/utils/self-format.js.map +1 -0
- package/build/src/utils/self-signing.d.ts +4 -0
- package/build/src/utils/self-signing.js +38 -0
- package/build/src/utils/self-signing.js.map +1 -0
- package/build/src/utils/transaction-errors.d.ts +3 -0
- package/build/src/utils/transaction-errors.js +17 -0
- package/build/src/utils/transaction-errors.js.map +1 -0
- package/build/tests/catalog/domains/blockchain.d.ts +2 -0
- package/build/tests/catalog/domains/blockchain.js +127 -0
- package/build/tests/catalog/domains/blockchain.js.map +1 -0
- package/build/tests/catalog/domains/chain-ext.d.ts +5 -0
- package/build/tests/catalog/domains/chain-ext.js +207 -0
- package/build/tests/catalog/domains/chain-ext.js.map +1 -0
- package/build/tests/catalog/domains/defi.d.ts +6 -0
- package/build/tests/catalog/domains/defi.js +581 -0
- package/build/tests/catalog/domains/defi.js.map +1 -0
- package/build/tests/catalog/domains/self.d.ts +2 -0
- package/build/tests/catalog/domains/self.js +208 -0
- package/build/tests/catalog/domains/self.js.map +1 -0
- package/build/tests/catalog/domains/token.d.ts +2 -0
- package/build/tests/catalog/domains/token.js +70 -0
- package/build/tests/catalog/domains/token.js.map +1 -0
- package/build/tests/catalog/domains/transaction.d.ts +2 -0
- package/build/tests/catalog/domains/transaction.js +96 -0
- package/build/tests/catalog/domains/transaction.js.map +1 -0
- package/build/tests/catalog/index.d.ts +2 -0
- package/build/tests/catalog/index.js +2 -0
- package/build/tests/catalog/index.js.map +1 -0
- package/build/tests/catalog/operations.d.ts +12 -0
- package/build/tests/catalog/operations.js +29 -0
- package/build/tests/catalog/operations.js.map +1 -0
- package/build/tests/catalog/types.d.ts +24 -0
- package/build/tests/catalog/types.js +2 -0
- package/build/tests/catalog/types.js.map +1 -0
- package/build/tests/fixtures/mainnet.d.ts +54 -0
- package/build/tests/fixtures/mainnet.js +53 -0
- package/build/tests/fixtures/mainnet.js.map +1 -0
- package/build/tests/helpers/assert.d.ts +4 -0
- package/build/tests/helpers/assert.js +24 -0
- package/build/tests/helpers/assert.js.map +1 -0
- package/build/tests/helpers/env.d.ts +12 -0
- package/build/tests/helpers/env.js +29 -0
- package/build/tests/helpers/env.js.map +1 -0
- package/build/tests/helpers/gating.d.ts +3 -0
- package/build/tests/helpers/gating.js +23 -0
- package/build/tests/helpers/gating.js.map +1 -0
- package/build/tests/testing-entry.d.ts +6 -0
- package/build/tests/testing-entry.js +6 -0
- package/build/tests/testing-entry.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import { ALL_TOOL_DEFINITIONS, getToolInputSchemaShape } from "./catalog.js";
|
|
2
|
+
import { filterToolDefinitions } from "./filter.js";
|
|
3
|
+
export const HOSTED_MCP_FILTER = {
|
|
4
|
+
surface: "mcp",
|
|
5
|
+
serverKeyToolsEnabled: false,
|
|
6
|
+
selfSessionToolsEnabled: false,
|
|
7
|
+
estimateToolsEnabled: false,
|
|
8
|
+
};
|
|
9
|
+
const STDIO_ONLY_TOOLS = new Set([
|
|
10
|
+
"send_token",
|
|
11
|
+
"execute_mento_fx",
|
|
12
|
+
"execute_uniswap_swap",
|
|
13
|
+
"supply_aave",
|
|
14
|
+
"withdraw_aave",
|
|
15
|
+
"claim_daily_gooddollar_ubi",
|
|
16
|
+
"execute_gooddollar_reserve_swap",
|
|
17
|
+
"get_wallet_address",
|
|
18
|
+
"get_self_identity",
|
|
19
|
+
"sign_self_request",
|
|
20
|
+
"authenticated_self_fetch",
|
|
21
|
+
"refresh_self_proof",
|
|
22
|
+
"deregister_self_agent",
|
|
23
|
+
"register_self_agent",
|
|
24
|
+
"check_self_registration",
|
|
25
|
+
]);
|
|
26
|
+
export const TOOL_CATEGORY_BY_NAME = {
|
|
27
|
+
get_network_status: "Blockchain",
|
|
28
|
+
get_block: "Blockchain",
|
|
29
|
+
get_latest_blocks: "Blockchain",
|
|
30
|
+
get_transaction: "Blockchain",
|
|
31
|
+
verify_attribution_tag: "Blockchain",
|
|
32
|
+
check_attribution_tag: "Blockchain",
|
|
33
|
+
get_account: "Account",
|
|
34
|
+
get_wallet_address: "Wallet",
|
|
35
|
+
get_celo_balances: "Token",
|
|
36
|
+
get_stablecoin_balances: "Token",
|
|
37
|
+
get_token_info: "Token",
|
|
38
|
+
get_token_balance: "Token",
|
|
39
|
+
estimate_send: "Transaction",
|
|
40
|
+
send_token: "Transaction",
|
|
41
|
+
get_mento_fx_quote: "Mento FX",
|
|
42
|
+
estimate_mento_fx: "Mento FX",
|
|
43
|
+
execute_mento_fx: "Mento FX",
|
|
44
|
+
prepare_mento_fx: "Mento FX",
|
|
45
|
+
get_uniswap_quote: "Uniswap",
|
|
46
|
+
estimate_uniswap_swap: "Uniswap",
|
|
47
|
+
execute_uniswap_swap: "Uniswap",
|
|
48
|
+
prepare_uniswap_swap: "Uniswap",
|
|
49
|
+
get_swap_quote: "Uniswap",
|
|
50
|
+
prepare_swap: "Uniswap",
|
|
51
|
+
get_aave_balances: "Aave",
|
|
52
|
+
supply_aave: "Aave",
|
|
53
|
+
withdraw_aave: "Aave",
|
|
54
|
+
resolve_ens: "Wallet",
|
|
55
|
+
get_gooddollar_whitelisting_info: "GoodDollar",
|
|
56
|
+
get_gooddollar_identity_link: "GoodDollar",
|
|
57
|
+
get_gooddollar_ubi_entitlement: "GoodDollar",
|
|
58
|
+
claim_daily_gooddollar_ubi: "GoodDollar",
|
|
59
|
+
prepare_claim_daily_gooddollar_ubi: "GoodDollar",
|
|
60
|
+
get_gooddollar_reserve_quote: "GoodDollar",
|
|
61
|
+
estimate_gooddollar_reserve_swap: "GoodDollar",
|
|
62
|
+
execute_gooddollar_reserve_swap: "GoodDollar",
|
|
63
|
+
prepare_gooddollar_reserve_swap: "GoodDollar",
|
|
64
|
+
get_governance_proposals: "Governance",
|
|
65
|
+
get_proposal_details: "Governance",
|
|
66
|
+
get_staking_balances: "Staking",
|
|
67
|
+
get_validator_groups: "Staking",
|
|
68
|
+
get_validator_group_details: "Staking",
|
|
69
|
+
get_activatable_stakes: "Staking",
|
|
70
|
+
get_total_staking_info: "Staking",
|
|
71
|
+
get_nft_info: "NFT",
|
|
72
|
+
get_nft_balance: "NFT",
|
|
73
|
+
call_contract_function: "Contract",
|
|
74
|
+
estimate_contract_gas: "Contract",
|
|
75
|
+
verify_self_agent: "Self",
|
|
76
|
+
lookup_self_agent: "Self",
|
|
77
|
+
verify_self_request: "Self",
|
|
78
|
+
register_self_agent: "Self",
|
|
79
|
+
check_self_registration: "Self",
|
|
80
|
+
get_self_identity: "Self",
|
|
81
|
+
refresh_self_proof: "Self",
|
|
82
|
+
deregister_self_agent: "Self",
|
|
83
|
+
sign_self_request: "Self",
|
|
84
|
+
authenticated_self_fetch: "Self",
|
|
85
|
+
get_agentkarma_reputation: "AgentKarma",
|
|
86
|
+
get_agentkarma_celo_agent: "AgentKarma",
|
|
87
|
+
check_agentkarma_counterparty: "AgentKarma",
|
|
88
|
+
};
|
|
89
|
+
function toolNameToSlug(name) {
|
|
90
|
+
return name.replace(/_/g, "-");
|
|
91
|
+
}
|
|
92
|
+
function familyToKind(families) {
|
|
93
|
+
return families.includes("execute") ? "write" : "read";
|
|
94
|
+
}
|
|
95
|
+
function firstSentence(text) {
|
|
96
|
+
const match = text.match(/^[^.!?]+[.!?]?/);
|
|
97
|
+
return match ? match[0].trim() : text.slice(0, 120);
|
|
98
|
+
}
|
|
99
|
+
function unwrapZodSchema(schema) {
|
|
100
|
+
if (!schema || typeof schema !== "object") {
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
return schema;
|
|
104
|
+
}
|
|
105
|
+
function isZodOptional(schema) {
|
|
106
|
+
const zod = unwrapZodSchema(schema);
|
|
107
|
+
const typeName = zod?._def?.typeName;
|
|
108
|
+
return typeName === "ZodOptional" || typeName === "ZodDefault";
|
|
109
|
+
}
|
|
110
|
+
function zodInnerSchema(schema) {
|
|
111
|
+
const zod = unwrapZodSchema(schema);
|
|
112
|
+
if (!zod?._def)
|
|
113
|
+
return schema;
|
|
114
|
+
if (isZodOptional(schema)) {
|
|
115
|
+
return zod._def.innerType;
|
|
116
|
+
}
|
|
117
|
+
return schema;
|
|
118
|
+
}
|
|
119
|
+
function zodFieldType(schema) {
|
|
120
|
+
const inner = zodInnerSchema(schema);
|
|
121
|
+
const zod = unwrapZodSchema(inner);
|
|
122
|
+
if (!zod?._def?.typeName) {
|
|
123
|
+
return "string";
|
|
124
|
+
}
|
|
125
|
+
const typeName = zod._def.typeName;
|
|
126
|
+
if (typeName === "ZodBoolean")
|
|
127
|
+
return "boolean";
|
|
128
|
+
if (typeName === "ZodNumber")
|
|
129
|
+
return "number";
|
|
130
|
+
if (typeName === "ZodArray")
|
|
131
|
+
return "array";
|
|
132
|
+
return "string";
|
|
133
|
+
}
|
|
134
|
+
function zodFieldDescription(schema, fallback) {
|
|
135
|
+
const zod = unwrapZodSchema(schema);
|
|
136
|
+
if (zod?._def?.description) {
|
|
137
|
+
return zod._def.description;
|
|
138
|
+
}
|
|
139
|
+
if (isZodOptional(schema)) {
|
|
140
|
+
return zodFieldDescription(zod?._def?.innerType, fallback);
|
|
141
|
+
}
|
|
142
|
+
return fallback;
|
|
143
|
+
}
|
|
144
|
+
function inputsFromSchema(definition) {
|
|
145
|
+
const shape = getToolInputSchemaShape(definition);
|
|
146
|
+
if (!shape)
|
|
147
|
+
return [];
|
|
148
|
+
return Object.entries(shape).map(([name, schema]) => ({
|
|
149
|
+
name,
|
|
150
|
+
type: zodFieldType(schema),
|
|
151
|
+
required: !isZodOptional(schema),
|
|
152
|
+
description: zodFieldDescription(schema, name.replace(/_/g, " ")),
|
|
153
|
+
}));
|
|
154
|
+
}
|
|
155
|
+
function categoryForTool(definition) {
|
|
156
|
+
return TOOL_CATEGORY_BY_NAME[definition.name] ?? "Blockchain";
|
|
157
|
+
}
|
|
158
|
+
export function toWebsiteToolBaseline(definition) {
|
|
159
|
+
return {
|
|
160
|
+
name: definition.name,
|
|
161
|
+
slug: toolNameToSlug(definition.name),
|
|
162
|
+
title: definition.mcp?.title ?? definition.name.replace(/_/g, " "),
|
|
163
|
+
summary: firstSentence(definition.description),
|
|
164
|
+
description: definition.description,
|
|
165
|
+
kind: familyToKind(definition.families),
|
|
166
|
+
category: categoryForTool(definition),
|
|
167
|
+
inputs: inputsFromSchema(definition),
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
export function deriveToolAvailability(definition) {
|
|
171
|
+
if (definition.name.startsWith("estimate_")) {
|
|
172
|
+
return "stdio";
|
|
173
|
+
}
|
|
174
|
+
if (STDIO_ONLY_TOOLS.has(definition.name)) {
|
|
175
|
+
return "stdio";
|
|
176
|
+
}
|
|
177
|
+
const surfaces = definition.surfaces ?? ["mcp", "browser"];
|
|
178
|
+
if (surfaces.length === 1 && surfaces[0] === "browser") {
|
|
179
|
+
return "stdio";
|
|
180
|
+
}
|
|
181
|
+
return "both";
|
|
182
|
+
}
|
|
183
|
+
export function getHostedMcpToolDefinitions() {
|
|
184
|
+
return filterToolDefinitions(ALL_TOOL_DEFINITIONS, HOSTED_MCP_FILTER);
|
|
185
|
+
}
|
|
186
|
+
export function getHostedMcpToolNames() {
|
|
187
|
+
return getHostedMcpToolDefinitions().map((d) => d.name);
|
|
188
|
+
}
|
|
189
|
+
export function getHostedMcpToolCount() {
|
|
190
|
+
return getHostedMcpToolDefinitions().length;
|
|
191
|
+
}
|
|
192
|
+
export function getWebsiteToolBaselines() {
|
|
193
|
+
return filterToolDefinitions(ALL_TOOL_DEFINITIONS, { surface: "mcp" }).map(toWebsiteToolBaseline);
|
|
194
|
+
}
|
|
195
|
+
export function getMcpToolNameSet() {
|
|
196
|
+
return new Set(filterToolDefinitions(ALL_TOOL_DEFINITIONS, { surface: "mcp" }).map((d) => d.name));
|
|
197
|
+
}
|
|
198
|
+
//# sourceMappingURL=website-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website-sync.js","sourceRoot":"","sources":["../../../src/tools/website-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { CHAIN } from "../config/chains.js";
|
|
2
|
+
export type PreparedTxKind = "native" | "erc20" | "contract";
|
|
3
|
+
/**
|
|
4
|
+
* One unsigned transaction in a prepared list (`steps`).
|
|
5
|
+
* Calldata may already include Celina dual attribution suffixes from `prepare*`.
|
|
6
|
+
*/
|
|
7
|
+
export interface PreparedTx {
|
|
8
|
+
/** Step category for UI and wallet routing. */
|
|
9
|
+
kind: PreparedTxKind;
|
|
10
|
+
to: `0x${string}`;
|
|
11
|
+
data?: `0x${string}`;
|
|
12
|
+
/** Wei amount as decimal string for JSON serialization */
|
|
13
|
+
value?: string;
|
|
14
|
+
description: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Prepared flow = ordered unsigned transactions ready to sign (wagmi/EOA) or
|
|
18
|
+
* submit as UserOps (`createAAClient.sendPreparedFlow`) — not a runtime workflow engine.
|
|
19
|
+
* The primary payload is `steps`.
|
|
20
|
+
*/
|
|
21
|
+
export interface PreparedFlow {
|
|
22
|
+
steps: PreparedTx[];
|
|
23
|
+
summary: string;
|
|
24
|
+
/** Celo chain id (`celo.id` / {@link CHAIN}.id); always `42220` for Celina today. */
|
|
25
|
+
chainId: typeof CHAIN.id;
|
|
26
|
+
from: `0x${string}`;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Prepared flow = ordered unsigned transactions ready to sign or submit as UserOps —
|
|
30
|
+
* not a runtime workflow engine. JSON-safe form returned by `prepare*` tools and chat APIs.
|
|
31
|
+
* Primary payload is `steps`. Consumers simulate each step (see `@andrewkimjoseph/celina-sdk/simulation`),
|
|
32
|
+
* then call `sendTransactionAsync` (wagmi), `walletClient.sendTransaction` (viem), or
|
|
33
|
+
* `createAAClient().sendPreparedFlow` for sponsored UserOps.
|
|
34
|
+
*/
|
|
35
|
+
export interface SerializedPreparedFlow extends Omit<PreparedFlow, "steps"> {
|
|
36
|
+
steps: PreparedTx[];
|
|
37
|
+
preparedFlow: true;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Marks an ordered prepared-transaction list as JSON-safe for API and chat tool responses.
|
|
41
|
+
* @param flow - In-memory prepared transactions (`PreparedFlow`) to serialize
|
|
42
|
+
*/
|
|
43
|
+
export declare function serializePreparedFlow(flow: PreparedFlow): SerializedPreparedFlow;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marks an ordered prepared-transaction list as JSON-safe for API and chat tool responses.
|
|
3
|
+
* @param flow - In-memory prepared transactions (`PreparedFlow`) to serialize
|
|
4
|
+
*/
|
|
5
|
+
export function serializePreparedFlow(flow) {
|
|
6
|
+
return {
|
|
7
|
+
...flow,
|
|
8
|
+
preparedFlow: true,
|
|
9
|
+
steps: flow.steps.map((step) => ({
|
|
10
|
+
...step,
|
|
11
|
+
value: step.value?.toString(),
|
|
12
|
+
})),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=prepared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepared.js","sourceRoot":"","sources":["../../../src/types/prepared.ts"],"names":[],"mappings":"AA2CA;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAkB;IACtD,OAAO;QACL,GAAG,IAAI;QACP,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI;YACP,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE;SAC9B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Human-readable CELO amount from wei (18 decimals). */
|
|
2
|
+
export declare function formatCeloAmount(wei: bigint): string;
|
|
3
|
+
/** Shorten a hex address for display (`0x1234…abcd`). */
|
|
4
|
+
export declare function formatAddress(address: string): string;
|
|
5
|
+
/** Format validator score basis points as a percentage string. */
|
|
6
|
+
export declare function formatScorePercentage(score: bigint | number): string;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { formatUnits } from "viem";
|
|
2
|
+
/** Human-readable CELO amount from wei (18 decimals). */
|
|
3
|
+
export function formatCeloAmount(wei) {
|
|
4
|
+
return `${formatUnits(wei, 18)} CELO`;
|
|
5
|
+
}
|
|
6
|
+
/** Shorten a hex address for display (`0x1234…abcd`). */
|
|
7
|
+
export function formatAddress(address) {
|
|
8
|
+
if (address.length < 10)
|
|
9
|
+
return address;
|
|
10
|
+
return `${address.slice(0, 6)}...${address.slice(-4)}`;
|
|
11
|
+
}
|
|
12
|
+
/** Format validator score basis points as a percentage string. */
|
|
13
|
+
export function formatScorePercentage(score) {
|
|
14
|
+
const value = typeof score === "bigint" ? Number(score) : score;
|
|
15
|
+
return `${(value / 100).toFixed(2)}%`;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=celo-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"celo-format.js","sourceRoot":"","sources":["../../../src/utils/celo-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,yDAAyD;AACzD,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC;AACxC,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,OAAO,CAAC;IACxC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,qBAAqB,CAAC,KAAsB;IAC1D,MAAM,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChE,OAAO,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ERC-20 allowance storage slot helpers for gas simulation with state overrides.
|
|
3
|
+
* Used when estimating swap/send gas before on-chain approval is confirmed.
|
|
4
|
+
*/
|
|
5
|
+
import { type Address, type Hex, type StateOverride } from "viem";
|
|
6
|
+
/** Common base slots for ERC-20 allowance mappings (Mento stablecoins use 7). */
|
|
7
|
+
declare const ALLOWANCE_MAPPING_SLOTS: readonly [7n, 1n, 0n, 2n, 3n, 4n, 5n, 6n, 8n, 9n, 10n, 11n, 12n, 13n, 14n, 15n, 16n, 17n, 18n, 19n, 20n, 51n];
|
|
8
|
+
/**
|
|
9
|
+
* Compute the storage slot for `allowance(owner, spender)` given the mapping base slot.
|
|
10
|
+
*/
|
|
11
|
+
export declare function erc20AllowanceStorageSlot(owner: Address, spender: Address, mappingSlot: bigint): Hex;
|
|
12
|
+
/**
|
|
13
|
+
* viem `stateOverride` that sets ERC-20 allowance for gas estimation.
|
|
14
|
+
* @param mappingSlot - Allowance mapping slot in the token contract (try `ALLOWANCE_MAPPING_SLOTS`)
|
|
15
|
+
*/
|
|
16
|
+
export declare function erc20AllowanceStateOverride(token: Address, owner: Address, spender: Address, amount: bigint, mappingSlot: bigint): StateOverride;
|
|
17
|
+
/** True when an estimateGas error likely means allowance/transfer would revert. */
|
|
18
|
+
export declare function isLikelyTransferFailed(error: unknown): boolean;
|
|
19
|
+
/** Mapping base slots to probe when simulating ERC-20 allowance (exported for tests). */
|
|
20
|
+
export { ALLOWANCE_MAPPING_SLOTS };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ERC-20 allowance storage slot helpers for gas simulation with state overrides.
|
|
3
|
+
* Used when estimating swap/send gas before on-chain approval is confirmed.
|
|
4
|
+
*/
|
|
5
|
+
import { encodeAbiParameters, keccak256, pad, parseAbiParameters, toHex, } from "viem";
|
|
6
|
+
/** Common base slots for ERC-20 allowance mappings (Mento stablecoins use 7). */
|
|
7
|
+
const ALLOWANCE_MAPPING_SLOTS = [
|
|
8
|
+
7n,
|
|
9
|
+
1n,
|
|
10
|
+
0n,
|
|
11
|
+
2n,
|
|
12
|
+
3n,
|
|
13
|
+
4n,
|
|
14
|
+
5n,
|
|
15
|
+
6n,
|
|
16
|
+
8n,
|
|
17
|
+
9n,
|
|
18
|
+
10n,
|
|
19
|
+
11n,
|
|
20
|
+
12n,
|
|
21
|
+
13n,
|
|
22
|
+
14n,
|
|
23
|
+
15n,
|
|
24
|
+
16n,
|
|
25
|
+
17n,
|
|
26
|
+
18n,
|
|
27
|
+
19n,
|
|
28
|
+
20n,
|
|
29
|
+
51n,
|
|
30
|
+
];
|
|
31
|
+
/**
|
|
32
|
+
* Compute the storage slot for `allowance(owner, spender)` given the mapping base slot.
|
|
33
|
+
*/
|
|
34
|
+
export function erc20AllowanceStorageSlot(owner, spender, mappingSlot) {
|
|
35
|
+
const ownerSlot = keccak256(encodeAbiParameters(parseAbiParameters("address, uint256"), [owner, mappingSlot]));
|
|
36
|
+
return keccak256(encodeAbiParameters(parseAbiParameters("address, bytes32"), [spender, ownerSlot]));
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* viem `stateOverride` that sets ERC-20 allowance for gas estimation.
|
|
40
|
+
* @param mappingSlot - Allowance mapping slot in the token contract (try `ALLOWANCE_MAPPING_SLOTS`)
|
|
41
|
+
*/
|
|
42
|
+
export function erc20AllowanceStateOverride(token, owner, spender, amount, mappingSlot) {
|
|
43
|
+
return [
|
|
44
|
+
{
|
|
45
|
+
address: token,
|
|
46
|
+
stateDiff: [
|
|
47
|
+
{
|
|
48
|
+
slot: erc20AllowanceStorageSlot(owner, spender, mappingSlot),
|
|
49
|
+
value: pad(toHex(amount)),
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
},
|
|
53
|
+
];
|
|
54
|
+
}
|
|
55
|
+
/** True when an estimateGas error likely means allowance/transfer would revert. */
|
|
56
|
+
export function isLikelyTransferFailed(error) {
|
|
57
|
+
const message = error instanceof Error
|
|
58
|
+
? `${error.message} ${error.cause instanceof Error ? error.cause.message : ""}`
|
|
59
|
+
: String(error);
|
|
60
|
+
return /transfer failed/i.test(message);
|
|
61
|
+
}
|
|
62
|
+
/** Mapping base slots to probe when simulating ERC-20 allowance (exported for tests). */
|
|
63
|
+
export { ALLOWANCE_MAPPING_SLOTS };
|
|
64
|
+
//# sourceMappingURL=erc20-allowance-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erc20-allowance-storage.js","sourceRoot":"","sources":["../../../src/utils/erc20-allowance-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,GAAG,EACH,kBAAkB,EAClB,KAAK,GAIN,MAAM,MAAM,CAAC;AAEd,iFAAiF;AACjF,MAAM,uBAAuB,GAAG;IAC9B,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACK,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,OAAgB,EAChB,WAAmB;IAEnB,MAAM,SAAS,GAAG,SAAS,CACzB,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAClF,CAAC;IACF,OAAO,SAAS,CACd,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAc,EACd,KAAc,EACd,OAAgB,EAChB,MAAc,EACd,WAAmB;IAEnB,OAAO;QACL;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;oBAC5D,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC1B;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,MAAM,OAAO,GACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpB,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,yFAAyF;AACzF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Format a Unix timestamp (seconds) as a UTC long date string. */
|
|
2
|
+
export function formatUnixDate(unixSeconds) {
|
|
3
|
+
const date = new Date(Number(unixSeconds) * 1000);
|
|
4
|
+
return new Intl.DateTimeFormat("en-US", {
|
|
5
|
+
month: "long",
|
|
6
|
+
day: "numeric",
|
|
7
|
+
year: "numeric",
|
|
8
|
+
timeZone: "UTC",
|
|
9
|
+
})
|
|
10
|
+
.format(date)
|
|
11
|
+
.replace(",", "");
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=format-date.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-date.js","sourceRoot":"","sources":["../../../src/utils/format-date.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,UAAU,cAAc,CAAC,WAA4B;IACzD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC;SACC,MAAM,CAAC,IAAI,CAAC;SACZ,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Format a duration in seconds as a short human-readable string (hours and minutes). */
|
|
2
|
+
export function formatDuration(seconds) {
|
|
3
|
+
const total = Number(seconds);
|
|
4
|
+
if (total <= 0)
|
|
5
|
+
return "0 minutes";
|
|
6
|
+
const hours = Math.floor(total / 3600);
|
|
7
|
+
const minutes = Math.floor((total % 3600) / 60);
|
|
8
|
+
const parts = [];
|
|
9
|
+
if (hours > 0) {
|
|
10
|
+
parts.push(`${hours} hour${hours === 1 ? "" : "s"}`);
|
|
11
|
+
}
|
|
12
|
+
if (minutes > 0 || hours === 0) {
|
|
13
|
+
parts.push(`${minutes} minute${minutes === 1 ? "" : "s"}`);
|
|
14
|
+
}
|
|
15
|
+
return parts.join(" ");
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=format-duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-duration.js","sourceRoot":"","sources":["../../../src/utils/format-duration.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,MAAM,UAAU,cAAc,CAAC,OAAwB;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,WAAW,CAAC;IAEnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** Format a Unix timestamp (seconds) as an ISO 8601 UTC string. */
|
|
2
|
+
export declare function formatUnixIso(unixSeconds: number | bigint): string;
|
|
3
|
+
/** Format a Unix timestamp for display in reason strings (UTC date and time). */
|
|
4
|
+
export declare function formatUnixDateTimeUtc(unixSeconds: number | bigint): string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Format a Unix timestamp (seconds) as an ISO 8601 UTC string. */
|
|
2
|
+
export function formatUnixIso(unixSeconds) {
|
|
3
|
+
return new Date(Number(unixSeconds) * 1000).toISOString();
|
|
4
|
+
}
|
|
5
|
+
/** Format a Unix timestamp for display in reason strings (UTC date and time). */
|
|
6
|
+
export function formatUnixDateTimeUtc(unixSeconds) {
|
|
7
|
+
const date = new Date(Number(unixSeconds) * 1000);
|
|
8
|
+
return new Intl.DateTimeFormat("en-US", {
|
|
9
|
+
month: "long",
|
|
10
|
+
day: "numeric",
|
|
11
|
+
year: "numeric",
|
|
12
|
+
hour: "numeric",
|
|
13
|
+
minute: "2-digit",
|
|
14
|
+
timeZone: "UTC",
|
|
15
|
+
timeZoneName: "short",
|
|
16
|
+
}).format(date);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=format-unix-datetime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-unix-datetime.js","sourceRoot":"","sources":["../../../src/utils/format-unix-datetime.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,WAA4B;IACxD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5D,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,qBAAqB,CAAC,WAA4B;IAChE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Inputs for UBISchemeV2 period/cooldown eligibility (mirrors on-chain claim()). */
|
|
2
|
+
export type UbiPeriodEligibilityInput = {
|
|
3
|
+
contractDay: bigint;
|
|
4
|
+
computedDay: bigint;
|
|
5
|
+
claimedForOnChainDay: boolean;
|
|
6
|
+
hasRoot: boolean;
|
|
7
|
+
schemePaused: boolean;
|
|
8
|
+
schemeStarted: boolean;
|
|
9
|
+
isWhitelisted: boolean;
|
|
10
|
+
claimable: bigint;
|
|
11
|
+
};
|
|
12
|
+
export type UbiPeriodEligibilityState = {
|
|
13
|
+
awaitingContractDayRoll: boolean;
|
|
14
|
+
alreadyClaimedToday: boolean;
|
|
15
|
+
inClaimCooldown: boolean;
|
|
16
|
+
isEligibleToClaim: boolean;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Resolve UBI claim eligibility from period day and on-chain hasClaimed.
|
|
20
|
+
* Between UTC noon and the first claim that calls setDay(), computedDay exceeds
|
|
21
|
+
* contractDay while hasClaimed still reflects the previous on-chain day.
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolveUbiPeriodEligibility(input: UbiPeriodEligibilityInput): UbiPeriodEligibilityState;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve UBI claim eligibility from period day and on-chain hasClaimed.
|
|
3
|
+
* Between UTC noon and the first claim that calls setDay(), computedDay exceeds
|
|
4
|
+
* contractDay while hasClaimed still reflects the previous on-chain day.
|
|
5
|
+
*/
|
|
6
|
+
export function resolveUbiPeriodEligibility(input) {
|
|
7
|
+
const awaitingContractDayRoll = input.computedDay > input.contractDay;
|
|
8
|
+
const alreadyClaimedToday = input.claimedForOnChainDay && !awaitingContractDayRoll;
|
|
9
|
+
const inClaimCooldown = input.hasRoot && alreadyClaimedToday;
|
|
10
|
+
const isEligibleToClaim = input.hasRoot &&
|
|
11
|
+
!input.schemePaused &&
|
|
12
|
+
input.schemeStarted &&
|
|
13
|
+
input.isWhitelisted &&
|
|
14
|
+
!inClaimCooldown &&
|
|
15
|
+
(input.claimable > 0n || awaitingContractDayRoll);
|
|
16
|
+
return {
|
|
17
|
+
awaitingContractDayRoll,
|
|
18
|
+
alreadyClaimedToday,
|
|
19
|
+
inClaimCooldown,
|
|
20
|
+
isEligibleToClaim,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=gooddollar-ubi-period.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gooddollar-ubi-period.js","sourceRoot":"","sources":["../../../src/utils/gooddollar-ubi-period.ts"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAgC;IAEhC,MAAM,uBAAuB,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtE,MAAM,mBAAmB,GACvB,KAAK,CAAC,oBAAoB,IAAI,CAAC,uBAAuB,CAAC;IACzD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAC;IAC7D,MAAM,iBAAiB,GACrB,KAAK,CAAC,OAAO;QACb,CAAC,KAAK,CAAC,YAAY;QACnB,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,aAAa;QACnB,CAAC,eAAe;QAChB,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,IAAI,uBAAuB,CAAC,CAAC;IAEpD,OAAO;QACL,uBAAuB;QACvB,mBAAmB;QACnB,eAAe;QACf,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalize a hex address to EIP-55 checksum form.
|
|
3
|
+
* @param address - Hex address string
|
|
4
|
+
* @param label - Used in error messages when invalid (default `"address"`)
|
|
5
|
+
* @throws When the string is not a valid hex address
|
|
6
|
+
*/
|
|
7
|
+
export declare function normalizeAddress(address: string, label?: string): `0x${string}`;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getAddress } from "viem";
|
|
2
|
+
/**
|
|
3
|
+
* Normalize a hex address to EIP-55 checksum form.
|
|
4
|
+
* @param address - Hex address string
|
|
5
|
+
* @param label - Used in error messages when invalid (default `"address"`)
|
|
6
|
+
* @throws When the string is not a valid hex address
|
|
7
|
+
*/
|
|
8
|
+
export function normalizeAddress(address, label = "address") {
|
|
9
|
+
try {
|
|
10
|
+
return getAddress(address);
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
throw new Error(`Invalid ${label}: ${address}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=normalize-address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalize-address.js","sourceRoot":"","sources":["../../../src/utils/normalize-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,KAAK,GAAG,SAAS;IAEjB,IAAI,CAAC;QACH,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface SelfSessionLinksInput {
|
|
2
|
+
sessionToken: string;
|
|
3
|
+
deepLink: string;
|
|
4
|
+
scanUrl?: string;
|
|
5
|
+
apiBase?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SelfSessionLinks {
|
|
8
|
+
qr_code_url: string;
|
|
9
|
+
deep_link: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function resolveSelfSessionLinks(input: SelfSessionLinksInput): SelfSessionLinks;
|
|
12
|
+
export declare function formatSelfSessionLinksDisplay(links: SelfSessionLinks): string;
|
|
13
|
+
export interface SelfCredentialLike {
|
|
14
|
+
nationality?: string;
|
|
15
|
+
olderThan?: bigint | number;
|
|
16
|
+
ofac?: boolean[];
|
|
17
|
+
}
|
|
18
|
+
export declare function formatCredentialsSummary(credentials?: SelfCredentialLike | null): string;
|
|
19
|
+
export declare function truncateBody(body: string, maxBytes?: number): {
|
|
20
|
+
body: string;
|
|
21
|
+
truncated: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare function formatAgentInfo(info: Record<string, unknown>): Record<string, unknown>;
|
|
24
|
+
export declare function proofExpiryFields(proofExpiresAtRaw: bigint): {
|
|
25
|
+
proof_expires_at: string | null;
|
|
26
|
+
days_until_expiry: number;
|
|
27
|
+
is_expiring_soon: boolean;
|
|
28
|
+
};
|