@andrewkimjoseph/celina-sdk 0.9.8 → 0.9.9
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/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 +101 -0
- package/build/src/a2a/skills.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 +28 -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 +17 -0
- package/build/src/clients/celo-client.js +28 -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 +4 -0
- package/build/src/config/celina-tag.js +13 -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 +33 -0
- package/build/src/config/sdk-config.js +31 -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 +90 -0
- package/build/src/index.js +65 -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 +58 -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/blockchain.service.d.ts +107 -0
- package/build/src/services/blockchain.service.js +151 -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 +183 -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 +80 -0
- package/build/src/services/mento-fx.service.js +319 -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 +68 -0
- package/build/src/services/transaction.service.js +198 -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 +82 -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/blockchain.d.ts +2 -0
- package/build/src/tools/domains/blockchain.js +86 -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 +31 -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 +165 -0
- package/build/src/tools/website-sync.js.map +1 -0
- package/build/src/types/prepared.d.ts +28 -0
- package/build/src/types/prepared.js +12 -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 +11 -0
- package/build/tests/helpers/env.js +28 -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 +5 -9
- package/tests/README.md +0 -78
- package/tests/catalog/domains/blockchain.ts +0 -133
- package/tests/catalog/domains/chain-ext.ts +0 -219
- package/tests/catalog/domains/defi.ts +0 -647
- package/tests/catalog/domains/self.ts +0 -220
- package/tests/catalog/domains/token.ts +0 -74
- package/tests/catalog/domains/transaction.ts +0 -111
- package/tests/catalog/index.ts +0 -7
- package/tests/catalog/operations.ts +0 -53
- package/tests/catalog/types.ts +0 -27
- package/tests/fixtures/mainnet.ts +0 -93
- package/tests/helpers/assert.ts +0 -30
- package/tests/helpers/env.ts +0 -38
- package/tests/helpers/gating.ts +0 -36
- package/tests/testing-entry.ts +0 -27
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export const v4QuoterAbi = [
|
|
2
|
+
{
|
|
3
|
+
name: "quoteExactInputSingle",
|
|
4
|
+
type: "function",
|
|
5
|
+
stateMutability: "nonpayable",
|
|
6
|
+
inputs: [
|
|
7
|
+
{
|
|
8
|
+
name: "params",
|
|
9
|
+
type: "tuple",
|
|
10
|
+
components: [
|
|
11
|
+
{
|
|
12
|
+
name: "poolKey",
|
|
13
|
+
type: "tuple",
|
|
14
|
+
components: [
|
|
15
|
+
{ name: "currency0", type: "address" },
|
|
16
|
+
{ name: "currency1", type: "address" },
|
|
17
|
+
{ name: "fee", type: "uint24" },
|
|
18
|
+
{ name: "tickSpacing", type: "int24" },
|
|
19
|
+
{ name: "hooks", type: "address" },
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
{ name: "zeroForOne", type: "bool" },
|
|
23
|
+
{ name: "exactAmount", type: "uint128" },
|
|
24
|
+
{ name: "hookData", type: "bytes" },
|
|
25
|
+
],
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
outputs: [
|
|
29
|
+
{ name: "amountOut", type: "uint256" },
|
|
30
|
+
{ name: "gasEstimate", type: "uint256" },
|
|
31
|
+
],
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: "quoteExactInput",
|
|
35
|
+
type: "function",
|
|
36
|
+
stateMutability: "nonpayable",
|
|
37
|
+
inputs: [
|
|
38
|
+
{
|
|
39
|
+
name: "params",
|
|
40
|
+
type: "tuple",
|
|
41
|
+
components: [
|
|
42
|
+
{ name: "exactCurrency", type: "address" },
|
|
43
|
+
{
|
|
44
|
+
name: "path",
|
|
45
|
+
type: "tuple[]",
|
|
46
|
+
components: [
|
|
47
|
+
{ name: "intermediateCurrency", type: "address" },
|
|
48
|
+
{ name: "fee", type: "uint24" },
|
|
49
|
+
{ name: "tickSpacing", type: "int24" },
|
|
50
|
+
{ name: "hooks", type: "address" },
|
|
51
|
+
{ name: "hookData", type: "bytes" },
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
{ name: "exactAmount", type: "uint128" },
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
outputs: [
|
|
59
|
+
{ name: "amountOut", type: "uint256" },
|
|
60
|
+
{ name: "gasEstimate", type: "uint256" },
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
//# sourceMappingURL=uniswap-v4-quoter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uniswap-v4-quoter.js","sourceRoot":"","sources":["../../../src/abis/uniswap-v4-quoter.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB;QACE,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,OAAO;wBACb,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;4BACtC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;4BACtC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC/B,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE;4BACtC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;yBACnC;qBACF;oBACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE;oBACpC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;oBACxC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;iBACpC;aACF;SACF;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;SACzC;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC1C;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE;4BACjD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC/B,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE;4BACtC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;4BAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;yBACpC;qBACF;oBACD,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;iBACzC;aACF;SACF;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;SACzC;KACF;CACO,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const universalRouterAbi: readonly [{
|
|
2
|
+
readonly name: "execute";
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly stateMutability: "payable";
|
|
5
|
+
readonly inputs: readonly [{
|
|
6
|
+
readonly name: "commands";
|
|
7
|
+
readonly type: "bytes";
|
|
8
|
+
}, {
|
|
9
|
+
readonly name: "inputs";
|
|
10
|
+
readonly type: "bytes[]";
|
|
11
|
+
}, {
|
|
12
|
+
readonly name: "deadline";
|
|
13
|
+
readonly type: "uint256";
|
|
14
|
+
}];
|
|
15
|
+
readonly outputs: readonly [];
|
|
16
|
+
}];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const universalRouterAbi = [
|
|
2
|
+
{
|
|
3
|
+
name: "execute",
|
|
4
|
+
type: "function",
|
|
5
|
+
stateMutability: "payable",
|
|
6
|
+
inputs: [
|
|
7
|
+
{ name: "commands", type: "bytes" },
|
|
8
|
+
{ name: "inputs", type: "bytes[]" },
|
|
9
|
+
{ name: "deadline", type: "uint256" },
|
|
10
|
+
],
|
|
11
|
+
outputs: [],
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
//# sourceMappingURL=universal-router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"universal-router.js","sourceRoot":"","sources":["../../../src/abis/universal-router.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;YACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;SACtC;QACD,OAAO,EAAE,EAAE;KACZ;CACO,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/** Minimal Validators ABI for group and member reads (full ABI in validators.json). */
|
|
2
|
+
export declare const validatorsMinimalAbi: readonly [{
|
|
3
|
+
readonly type: "function";
|
|
4
|
+
readonly name: "getRegisteredValidators";
|
|
5
|
+
readonly inputs: readonly [];
|
|
6
|
+
readonly outputs: readonly [{
|
|
7
|
+
readonly name: "";
|
|
8
|
+
readonly type: "address[]";
|
|
9
|
+
}];
|
|
10
|
+
readonly stateMutability: "view";
|
|
11
|
+
}, {
|
|
12
|
+
readonly type: "function";
|
|
13
|
+
readonly name: "getValidator";
|
|
14
|
+
readonly inputs: readonly [{
|
|
15
|
+
readonly name: "validator";
|
|
16
|
+
readonly type: "address";
|
|
17
|
+
}];
|
|
18
|
+
readonly outputs: readonly [{
|
|
19
|
+
readonly name: "ecdsaPublicKey";
|
|
20
|
+
readonly type: "bytes";
|
|
21
|
+
}, {
|
|
22
|
+
readonly name: "blsPublicKey";
|
|
23
|
+
readonly type: "bytes";
|
|
24
|
+
}, {
|
|
25
|
+
readonly name: "affiliation";
|
|
26
|
+
readonly type: "address";
|
|
27
|
+
}, {
|
|
28
|
+
readonly name: "score";
|
|
29
|
+
readonly type: "uint256";
|
|
30
|
+
}, {
|
|
31
|
+
readonly name: "signer";
|
|
32
|
+
readonly type: "address";
|
|
33
|
+
}];
|
|
34
|
+
readonly stateMutability: "view";
|
|
35
|
+
}, {
|
|
36
|
+
readonly type: "function";
|
|
37
|
+
readonly name: "getValidatorGroup";
|
|
38
|
+
readonly inputs: readonly [{
|
|
39
|
+
readonly name: "group";
|
|
40
|
+
readonly type: "address";
|
|
41
|
+
}];
|
|
42
|
+
readonly outputs: readonly [{
|
|
43
|
+
readonly name: "members";
|
|
44
|
+
readonly type: "address[]";
|
|
45
|
+
}, {
|
|
46
|
+
readonly name: "commission";
|
|
47
|
+
readonly type: "uint256";
|
|
48
|
+
}, {
|
|
49
|
+
readonly name: "lastSlashed";
|
|
50
|
+
readonly type: "uint256";
|
|
51
|
+
}, {
|
|
52
|
+
readonly name: "name";
|
|
53
|
+
readonly type: "string";
|
|
54
|
+
}, {
|
|
55
|
+
readonly name: "membersHistory";
|
|
56
|
+
readonly type: "uint256[]";
|
|
57
|
+
}, {
|
|
58
|
+
readonly name: "membersHistoryLength";
|
|
59
|
+
readonly type: "uint256";
|
|
60
|
+
}, {
|
|
61
|
+
readonly name: "slashingMultiplier";
|
|
62
|
+
readonly type: "uint256";
|
|
63
|
+
}];
|
|
64
|
+
readonly stateMutability: "view";
|
|
65
|
+
}];
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/** Minimal Validators ABI for group and member reads (full ABI in validators.json). */
|
|
2
|
+
export const validatorsMinimalAbi = [
|
|
3
|
+
{
|
|
4
|
+
type: "function",
|
|
5
|
+
name: "getRegisteredValidators",
|
|
6
|
+
inputs: [],
|
|
7
|
+
outputs: [{ name: "", type: "address[]" }],
|
|
8
|
+
stateMutability: "view",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
type: "function",
|
|
12
|
+
name: "getValidator",
|
|
13
|
+
inputs: [{ name: "validator", type: "address" }],
|
|
14
|
+
outputs: [
|
|
15
|
+
{ name: "ecdsaPublicKey", type: "bytes" },
|
|
16
|
+
{ name: "blsPublicKey", type: "bytes" },
|
|
17
|
+
{ name: "affiliation", type: "address" },
|
|
18
|
+
{ name: "score", type: "uint256" },
|
|
19
|
+
{ name: "signer", type: "address" },
|
|
20
|
+
],
|
|
21
|
+
stateMutability: "view",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
type: "function",
|
|
25
|
+
name: "getValidatorGroup",
|
|
26
|
+
inputs: [{ name: "group", type: "address" }],
|
|
27
|
+
outputs: [
|
|
28
|
+
{ name: "members", type: "address[]" },
|
|
29
|
+
{ name: "commission", type: "uint256" },
|
|
30
|
+
{ name: "lastSlashed", type: "uint256" },
|
|
31
|
+
{ name: "name", type: "string" },
|
|
32
|
+
{ name: "membersHistory", type: "uint256[]" },
|
|
33
|
+
{ name: "membersHistoryLength", type: "uint256" },
|
|
34
|
+
{ name: "slashingMultiplier", type: "uint256" },
|
|
35
|
+
],
|
|
36
|
+
stateMutability: "view",
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=validators-minimal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators-minimal.js","sourceRoot":"","sources":["../../../src/abis/validators-minimal.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC1C,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE;YACzC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE;YACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;YACxC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;YACtC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;YACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;YACxC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE;YAC7C,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE;YACjD,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE;SAChD;QACD,eAAe,EAAE,MAAM;KACxB;CACO,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SdkConfig } from "../config/sdk-config.js";
|
|
2
|
+
export type TrackMcpToolContext = {
|
|
3
|
+
methodKey: string;
|
|
4
|
+
args: readonly unknown[];
|
|
5
|
+
};
|
|
6
|
+
/** Test-only hook to assert telemetry without calling Amplitude. */
|
|
7
|
+
export declare function setTrackFnForTests(fn: ((eventName: string, config: SdkConfig, context: TrackMcpToolContext, userId: string | undefined) => void) | null): void;
|
|
8
|
+
/** Fire-and-forget MCP tool name event; never throws to callers. */
|
|
9
|
+
export declare function trackMcpTool(eventName: string, config: SdkConfig, context?: TrackMcpToolContext): void;
|
|
10
|
+
/** Await any queued Amplitude events (e.g. end of a Next.js route via `after()`). */
|
|
11
|
+
export declare function flushCelinaAnalytics(): Promise<void>;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { isAnalyticsEnabled, resolveAmplitudeApiKey, resolveDeviceId, } from "./config.js";
|
|
2
|
+
import { resolveAnalyticsWallet } from "./wallet-context.js";
|
|
3
|
+
let initialized = false;
|
|
4
|
+
let testTrackFn = null;
|
|
5
|
+
/** Test-only hook to assert telemetry without calling Amplitude. */
|
|
6
|
+
export function setTrackFnForTests(fn) {
|
|
7
|
+
testTrackFn = fn;
|
|
8
|
+
initialized = false;
|
|
9
|
+
}
|
|
10
|
+
async function ensureInit(config) {
|
|
11
|
+
const apiKey = resolveAmplitudeApiKey(config);
|
|
12
|
+
if (!apiKey) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
if (initialized) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
const amplitude = await import("@amplitude/analytics-node");
|
|
20
|
+
amplitude.init(apiKey);
|
|
21
|
+
initialized = true;
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/** Fire-and-forget MCP tool name event; never throws to callers. */
|
|
29
|
+
export function trackMcpTool(eventName, config, context) {
|
|
30
|
+
if (!isAnalyticsEnabled(config)) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const userId = context
|
|
34
|
+
? resolveAnalyticsWallet(context.methodKey, context.args, config)
|
|
35
|
+
: undefined;
|
|
36
|
+
if (testTrackFn) {
|
|
37
|
+
try {
|
|
38
|
+
testTrackFn(eventName, config, context ?? { methodKey: "", args: [] }, userId);
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
// ignore test hook failures
|
|
42
|
+
}
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
void (async () => {
|
|
46
|
+
try {
|
|
47
|
+
if (!(await ensureInit(config))) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const amplitude = await import("@amplitude/analytics-node");
|
|
51
|
+
await amplitude.track(eventName, undefined, {
|
|
52
|
+
device_id: resolveDeviceId(config),
|
|
53
|
+
...(userId ? { user_id: userId } : {}),
|
|
54
|
+
}).promise;
|
|
55
|
+
// Serverless (Vercel, Lambda) freezes when the handler returns unless we flush.
|
|
56
|
+
await amplitude.flush().promise;
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// telemetry must not break SDK reads
|
|
60
|
+
}
|
|
61
|
+
})();
|
|
62
|
+
}
|
|
63
|
+
/** Await any queued Amplitude events (e.g. end of a Next.js route via `after()`). */
|
|
64
|
+
export async function flushCelinaAnalytics() {
|
|
65
|
+
if (!initialized) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
const amplitude = await import("@amplitude/analytics-node");
|
|
70
|
+
await amplitude.flush().promise;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
// ignore flush failures
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=amplitude.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"amplitude.js","sourceRoot":"","sources":["../../../src/analytics/amplitude.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAO7D,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,IAAI,WAAW,GAOJ,IAAI,CAAC;AAEhB,oEAAoE;AACpE,MAAM,UAAU,kBAAkB,CAChC,EAOQ;IAER,WAAW,GAAG,EAAE,CAAC;IACjB,WAAW,GAAG,KAAK,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAiB;IACzC,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC5D,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,WAAW,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,YAAY,CAC1B,SAAiB,EACjB,MAAiB,EACjB,OAA6B;IAE7B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;QACjE,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QACjF,CAAC;QAAC,MAAM,CAAC;YACP,4BAA4B;QAC9B,CAAC;QACD,OAAO;IACT,CAAC;IAED,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChC,OAAO;YACT,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YAC5D,MAAM,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE;gBAC1C,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC;gBAClC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvC,CAAC,CAAC,OAAO,CAAC;YACX,gFAAgF;YAChF,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;AACP,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SdkConfig } from "../config/sdk-config.js";
|
|
2
|
+
/** Public Amplitude project ingestion key (bundled for default telemetry on Node installs). */
|
|
3
|
+
export declare const DEFAULT_AMPLITUDE_API_KEY = "f36f9a7fdc253ed864072edc627b2a55";
|
|
4
|
+
/** Whether Amplitude read telemetry is active for this process. */
|
|
5
|
+
export declare function isAnalyticsEnabled(config: SdkConfig): boolean;
|
|
6
|
+
export declare function resolveAmplitudeApiKey(config: SdkConfig): string | undefined;
|
|
7
|
+
export declare function resolveDeviceId(config: SdkConfig): string;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** Public Amplitude project ingestion key (bundled for default telemetry on Node installs). */
|
|
2
|
+
export const DEFAULT_AMPLITUDE_API_KEY = "f36f9a7fdc253ed864072edc627b2a55";
|
|
3
|
+
const DEFAULT_DEVICE_ID = "celina-sdk";
|
|
4
|
+
/** Whether Amplitude read telemetry is active for this process. */
|
|
5
|
+
export function isAnalyticsEnabled(config) {
|
|
6
|
+
if (typeof process === "undefined") {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
if (process.env.CELINA_ANALYTICS_DISABLED === "1") {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
if (config.analyticsEnabled === false) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
export function resolveAmplitudeApiKey(config) {
|
|
18
|
+
if (!isAnalyticsEnabled(config)) {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
return (config.amplitudeApiKey ??
|
|
22
|
+
process.env.AMPLITUDE_API_KEY ??
|
|
23
|
+
DEFAULT_AMPLITUDE_API_KEY);
|
|
24
|
+
}
|
|
25
|
+
export function resolveDeviceId(config) {
|
|
26
|
+
return config.analyticsDeviceId ?? DEFAULT_DEVICE_ID;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/analytics/config.ts"],"names":[],"mappings":"AAEA,+FAA+F;AAC/F,MAAM,CAAC,MAAM,yBAAyB,GAAG,kCAAkC,CAAC;AAE5E,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAEvC,mEAAmE;AACnE,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,GAAG,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,MAAM,CAAC,gBAAgB,KAAK,KAAK,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,CACL,MAAM,CAAC,eAAe;QACtB,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC7B,yBAAyB,CAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,OAAO,MAAM,CAAC,iBAAiB,IAAI,iBAAiB,CAAC;AACvD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Amplitude-safe id from npm `package.json` `name` (strip `@`, `/` and `-` → `_`). */
|
|
2
|
+
export declare function sanitizePackageDeviceId(name: string): string;
|
|
3
|
+
/**
|
|
4
|
+
* npm package name of the app that called `createCelinaClient()`, sanitized for Amplitude.
|
|
5
|
+
* Returns `undefined` when detection fails or the consumer is the SDK itself.
|
|
6
|
+
*/
|
|
7
|
+
export declare function detectConsumerPackageName(stack?: string): string | undefined;
|
|
8
|
+
/** Test-only: clear cached consumer detection between cases. */
|
|
9
|
+
export declare function resetConsumerPackageDetectionForTests(): void;
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
+
import { dirname, join, resolve, sep } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
const SDK_PACKAGE_NAME = "@andrewkimjoseph/celina-sdk";
|
|
5
|
+
const SDK_DEVICE_IDS = new Set(["andrewkimjoseph_celina_sdk", "celina-sdk"]);
|
|
6
|
+
let detectionCached = false;
|
|
7
|
+
let detectedDeviceId;
|
|
8
|
+
/** Amplitude-safe id from npm `package.json` `name` (strip `@`, `/` and `-` → `_`). */
|
|
9
|
+
export function sanitizePackageDeviceId(name) {
|
|
10
|
+
const stripped = name.startsWith("@") ? name.slice(1) : name;
|
|
11
|
+
return stripped.replace(/\//g, "_").replace(/-/g, "_");
|
|
12
|
+
}
|
|
13
|
+
function getSdkPackageRoot() {
|
|
14
|
+
let dir = dirname(fileURLToPath(import.meta.url));
|
|
15
|
+
for (let i = 0; i < 24; i++) {
|
|
16
|
+
const pkgPath = join(dir, "package.json");
|
|
17
|
+
if (existsSync(pkgPath)) {
|
|
18
|
+
try {
|
|
19
|
+
const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
|
|
20
|
+
if (pkg.name === SDK_PACKAGE_NAME) {
|
|
21
|
+
return dir;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
// ignore malformed package.json
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
const parent = dirname(dir);
|
|
29
|
+
if (parent === dir) {
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
dir = parent;
|
|
33
|
+
}
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
function isSdkFramePath(filePath, sdkRoot) {
|
|
37
|
+
const normalized = resolve(filePath);
|
|
38
|
+
if (sdkRoot) {
|
|
39
|
+
const root = resolve(sdkRoot);
|
|
40
|
+
if (normalized === root || normalized.startsWith(root + sep)) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return normalized.includes(`${sep}node_modules${sep}@andrewkimjoseph${sep}celina-sdk${sep}`);
|
|
45
|
+
}
|
|
46
|
+
function readPackageNameFromFile(filePath) {
|
|
47
|
+
let dir = dirname(resolve(filePath));
|
|
48
|
+
for (let i = 0; i < 24; i++) {
|
|
49
|
+
const pkgPath = join(dir, "package.json");
|
|
50
|
+
if (existsSync(pkgPath)) {
|
|
51
|
+
try {
|
|
52
|
+
const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
|
|
53
|
+
if (typeof pkg.name === "string" && pkg.name.length > 0) {
|
|
54
|
+
return pkg.name;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
const parent = dirname(dir);
|
|
62
|
+
if (parent === dir) {
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
dir = parent;
|
|
66
|
+
}
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
function parseStackFramePaths(stack) {
|
|
70
|
+
const paths = [];
|
|
71
|
+
for (const line of stack.split("\n")) {
|
|
72
|
+
const trimmed = line.trim();
|
|
73
|
+
if (!trimmed.startsWith("at ")) {
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
const parenMatch = /\(([^)]+)\)/.exec(trimmed);
|
|
77
|
+
let loc = parenMatch?.[1];
|
|
78
|
+
if (!loc) {
|
|
79
|
+
const bare = /^at (?:async )?(?:.+ )?(.+)$/.exec(trimmed);
|
|
80
|
+
loc = bare?.[1];
|
|
81
|
+
}
|
|
82
|
+
if (!loc) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
let filePath = loc.trim();
|
|
86
|
+
if (filePath.startsWith("file://")) {
|
|
87
|
+
try {
|
|
88
|
+
filePath = fileURLToPath(filePath);
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
filePath = filePath.replace(/:\d+:\d+$/, "").replace(/:\d+$/, "");
|
|
95
|
+
if (filePath) {
|
|
96
|
+
paths.push(filePath);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return paths;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* npm package name of the app that called `createCelinaClient()`, sanitized for Amplitude.
|
|
103
|
+
* Returns `undefined` when detection fails or the consumer is the SDK itself.
|
|
104
|
+
*/
|
|
105
|
+
export function detectConsumerPackageName(stack) {
|
|
106
|
+
if (detectionCached) {
|
|
107
|
+
return detectedDeviceId;
|
|
108
|
+
}
|
|
109
|
+
detectionCached = true;
|
|
110
|
+
detectedDeviceId = undefined;
|
|
111
|
+
if (typeof process === "undefined") {
|
|
112
|
+
return detectedDeviceId;
|
|
113
|
+
}
|
|
114
|
+
try {
|
|
115
|
+
const stackTrace = stack ?? new Error().stack ?? "";
|
|
116
|
+
const sdkRoot = getSdkPackageRoot();
|
|
117
|
+
for (const framePath of parseStackFramePaths(stackTrace)) {
|
|
118
|
+
if (isSdkFramePath(framePath, sdkRoot)) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const rawName = readPackageNameFromFile(framePath);
|
|
122
|
+
if (!rawName) {
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
const deviceId = sanitizePackageDeviceId(rawName);
|
|
126
|
+
if (SDK_DEVICE_IDS.has(deviceId)) {
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
detectedDeviceId = deviceId;
|
|
130
|
+
return detectedDeviceId;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
detectedDeviceId = undefined;
|
|
135
|
+
}
|
|
136
|
+
return detectedDeviceId;
|
|
137
|
+
}
|
|
138
|
+
/** Test-only: clear cached consumer detection between cases. */
|
|
139
|
+
export function resetConsumerPackageDetectionForTests() {
|
|
140
|
+
detectionCached = false;
|
|
141
|
+
detectedDeviceId = undefined;
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=consumer-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer-package.js","sourceRoot":"","sources":["../../../src/analytics/consumer-package.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated by scripts/generate-mcp-analytics-map.mjs — do not edit by hand.
|
|
3
|
+
* Maps SDK method keys (catalog OperationSpec.id) to MCP tool event names.
|
|
4
|
+
*/
|
|
5
|
+
export const MCP_TOOL_EVENT_BY_SDK_METHOD = {
|
|
6
|
+
"aave.getBalances": "get_aave_balances",
|
|
7
|
+
"account.getAccount": "get_account",
|
|
8
|
+
"account.getWalletAddress": "get_wallet_address",
|
|
9
|
+
"blockchain.getBlock": "get_block",
|
|
10
|
+
"blockchain.getBlockWithTransactions": "get_block",
|
|
11
|
+
"blockchain.getLatestBlocks": "get_latest_blocks",
|
|
12
|
+
"blockchain.getNetworkStatus": "get_network_status",
|
|
13
|
+
"blockchain.getTransaction": "get_transaction",
|
|
14
|
+
"contract.callFunction": "call_contract_function",
|
|
15
|
+
"contract.estimateGas": "estimate_contract_gas",
|
|
16
|
+
"ens.resolveEns": "resolve_ens",
|
|
17
|
+
"gooddollar.estimateReserveSwap.sell": "estimate_gooddollar_reserve_swap",
|
|
18
|
+
"gooddollar.getIdentityLink": "get_gooddollar_identity_link",
|
|
19
|
+
"gooddollar.getReserveQuote.buy": "get_gooddollar_reserve_quote",
|
|
20
|
+
"gooddollar.getReserveQuote.buy.exactOut": "get_gooddollar_reserve_quote",
|
|
21
|
+
"gooddollar.getReserveQuote.sell": "get_gooddollar_reserve_quote",
|
|
22
|
+
"gooddollar.getReserveQuote.sell.exactOut": "get_gooddollar_reserve_quote",
|
|
23
|
+
"gooddollar.getUbiClaimEligibility": "get_gooddollar_ubi_entitlement",
|
|
24
|
+
"gooddollar.getWhitelistingInfo": "get_gooddollar_whitelisting_info",
|
|
25
|
+
"governance.getGovernanceProposals": "get_governance_proposals",
|
|
26
|
+
"governance.getProposalDetails": "get_proposal_details",
|
|
27
|
+
"mentoFx.estimateFx": "estimate_mento_fx",
|
|
28
|
+
"mentoFx.getFxQuote": "get_mento_fx_quote",
|
|
29
|
+
"nft.getNftBalance": "get_nft_balance",
|
|
30
|
+
"nft.getNftInfo": "get_nft_info",
|
|
31
|
+
"self.authenticatedSelfFetch": "authenticated_self_fetch",
|
|
32
|
+
"self.checkSelfRegistration": "check_self_registration",
|
|
33
|
+
"self.getSelfIdentity": "get_self_identity",
|
|
34
|
+
"self.lookupSelfAgent": "lookup_self_agent",
|
|
35
|
+
"self.signSelfRequest": "sign_self_request",
|
|
36
|
+
"self.verifySelfAgent": "verify_self_agent",
|
|
37
|
+
"self.verifySelfRequest": "verify_self_request",
|
|
38
|
+
"staking.getActivatableStakes": "get_activatable_stakes",
|
|
39
|
+
"staking.getStakingBalances": "get_staking_balances",
|
|
40
|
+
"staking.getTotalStakingInfo": "get_total_staking_info",
|
|
41
|
+
"staking.getValidatorGroupDetails": "get_validator_group_details",
|
|
42
|
+
"staking.getValidatorGroups": "get_validator_groups",
|
|
43
|
+
"token.getBalances": "get_celo_balances",
|
|
44
|
+
"token.getStablecoinBalances": "get_stablecoin_balances",
|
|
45
|
+
"token.getTokenBalance": "get_token_balance",
|
|
46
|
+
"token.getTokenInfo": "get_token_info",
|
|
47
|
+
"transaction.estimateSend": "estimate_send",
|
|
48
|
+
"transaction.estimateTransaction": "estimate_transaction",
|
|
49
|
+
"transaction.getGasFeeData": "get_gas_fee_data",
|
|
50
|
+
"uniswap.estimateSwap": "estimate_uniswap_swap",
|
|
51
|
+
"uniswap.getSwapQuote": "get_uniswap_quote",
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=mcp-tool-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tool-events.js","sourceRoot":"","sources":["../../../src/analytics/mcp-tool-events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAqC;IAC5E,kBAAkB,EAAE,mBAAmB;IACvC,oBAAoB,EAAE,aAAa;IACnC,0BAA0B,EAAE,oBAAoB;IAChD,qBAAqB,EAAE,WAAW;IAClC,qCAAqC,EAAE,WAAW;IAClD,4BAA4B,EAAE,mBAAmB;IACjD,6BAA6B,EAAE,oBAAoB;IACnD,2BAA2B,EAAE,iBAAiB;IAC9C,uBAAuB,EAAE,wBAAwB;IACjD,sBAAsB,EAAE,uBAAuB;IAC/C,gBAAgB,EAAE,aAAa;IAC/B,qCAAqC,EAAE,kCAAkC;IACzE,4BAA4B,EAAE,8BAA8B;IAC5D,gCAAgC,EAAE,8BAA8B;IAChE,yCAAyC,EAAE,8BAA8B;IACzE,iCAAiC,EAAE,8BAA8B;IACjE,0CAA0C,EAAE,8BAA8B;IAC1E,mCAAmC,EAAE,gCAAgC;IACrE,gCAAgC,EAAE,kCAAkC;IACpE,mCAAmC,EAAE,0BAA0B;IAC/D,+BAA+B,EAAE,sBAAsB;IACvD,oBAAoB,EAAE,mBAAmB;IACzC,oBAAoB,EAAE,oBAAoB;IAC1C,mBAAmB,EAAE,iBAAiB;IACtC,gBAAgB,EAAE,cAAc;IAChC,6BAA6B,EAAE,0BAA0B;IACzD,4BAA4B,EAAE,yBAAyB;IACvD,sBAAsB,EAAE,mBAAmB;IAC3C,sBAAsB,EAAE,mBAAmB;IAC3C,sBAAsB,EAAE,mBAAmB;IAC3C,sBAAsB,EAAE,mBAAmB;IAC3C,wBAAwB,EAAE,qBAAqB;IAC/C,8BAA8B,EAAE,wBAAwB;IACxD,4BAA4B,EAAE,sBAAsB;IACpD,6BAA6B,EAAE,wBAAwB;IACvD,kCAAkC,EAAE,6BAA6B;IACjE,4BAA4B,EAAE,sBAAsB;IACpD,mBAAmB,EAAE,mBAAmB;IACxC,6BAA6B,EAAE,yBAAyB;IACxD,uBAAuB,EAAE,mBAAmB;IAC5C,oBAAoB,EAAE,gBAAgB;IACtC,0BAA0B,EAAE,eAAe;IAC3C,iCAAiC,EAAE,sBAAsB;IACzD,2BAA2B,EAAE,kBAAkB;IAC/C,sBAAsB,EAAE,uBAAuB;IAC/C,sBAAsB,EAAE,mBAAmB;CACnC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SdkConfig } from "../config/sdk-config.js";
|
|
2
|
+
/** Validate and normalize a Celo address for telemetry `user_id`. */
|
|
3
|
+
export declare function normalizeWalletAddress(value: unknown): string | undefined;
|
|
4
|
+
/** Extract wallet from read args using catalog-generated rules. */
|
|
5
|
+
export declare function extractWalletFromReadArgs(methodKey: string, args: readonly unknown[]): string | undefined;
|
|
6
|
+
/** Run async/sync work with a request-scoped analytics wallet (singleton SDK clients). */
|
|
7
|
+
export declare function runWithAnalyticsWallet<T>(address: string | undefined, fn: () => T): T;
|
|
8
|
+
/** Resolve wallet for telemetry: read args → ALS → config default. */
|
|
9
|
+
export declare function resolveAnalyticsWallet(methodKey: string, args: readonly unknown[], config: SdkConfig): string | undefined;
|
|
10
|
+
/** Test-only: clear ALS between cases. */
|
|
11
|
+
export declare function resetAnalyticsWalletStorageForTests(): void;
|