@echoclaw/echo-0g 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1175 -0
- package/dist/0g-compute/account.d.ts +36 -0
- package/dist/0g-compute/account.d.ts.map +1 -0
- package/dist/0g-compute/account.js +85 -0
- package/dist/0g-compute/account.js.map +1 -0
- package/dist/0g-compute/bridge.d.ts +16 -0
- package/dist/0g-compute/bridge.d.ts.map +1 -0
- package/dist/0g-compute/bridge.js +40 -0
- package/dist/0g-compute/bridge.js.map +1 -0
- package/dist/0g-compute/broker-factory.d.ts +19 -0
- package/dist/0g-compute/broker-factory.d.ts.map +1 -0
- package/dist/0g-compute/broker-factory.js +65 -0
- package/dist/0g-compute/broker-factory.js.map +1 -0
- package/dist/0g-compute/constants.d.ts +10 -0
- package/dist/0g-compute/constants.d.ts.map +1 -0
- package/dist/0g-compute/constants.js +12 -0
- package/dist/0g-compute/constants.js.map +1 -0
- package/dist/0g-compute/monitor.d.ts +43 -0
- package/dist/0g-compute/monitor.d.ts.map +1 -0
- package/dist/0g-compute/monitor.js +302 -0
- package/dist/0g-compute/monitor.js.map +1 -0
- package/dist/0g-compute/pricing.d.ts +43 -0
- package/dist/0g-compute/pricing.d.ts.map +1 -0
- package/dist/0g-compute/pricing.js +53 -0
- package/dist/0g-compute/pricing.js.map +1 -0
- package/dist/0g-compute/sdk-bridge.cjs +17 -0
- package/dist/0g-compute/sdk-bridge.cjs.map +1 -0
- package/dist/0g-compute/sdk-bridge.d.cts +9 -0
- package/dist/0g-compute/sdk-bridge.d.cts.map +1 -0
- package/dist/0g-compute/smoke-test.d.ts +11 -0
- package/dist/0g-compute/smoke-test.d.ts.map +1 -0
- package/dist/0g-compute/smoke-test.js +172 -0
- package/dist/0g-compute/smoke-test.js.map +1 -0
- package/dist/bot/daemon.d.ts +34 -0
- package/dist/bot/daemon.d.ts.map +1 -0
- package/dist/bot/daemon.js +386 -0
- package/dist/bot/daemon.js.map +1 -0
- package/dist/bot/executor.d.ts +14238 -0
- package/dist/bot/executor.d.ts.map +1 -0
- package/dist/bot/executor.js +183 -0
- package/dist/bot/executor.js.map +1 -0
- package/dist/bot/nonce-queue.d.ts +20 -0
- package/dist/bot/nonce-queue.d.ts.map +1 -0
- package/dist/bot/nonce-queue.js +41 -0
- package/dist/bot/nonce-queue.js.map +1 -0
- package/dist/bot/notify.d.ts +15 -0
- package/dist/bot/notify.d.ts.map +1 -0
- package/dist/bot/notify.js +98 -0
- package/dist/bot/notify.js.map +1 -0
- package/dist/bot/orders.d.ts +30 -0
- package/dist/bot/orders.d.ts.map +1 -0
- package/dist/bot/orders.js +172 -0
- package/dist/bot/orders.js.map +1 -0
- package/dist/bot/state.d.ts +14 -0
- package/dist/bot/state.d.ts.map +1 -0
- package/dist/bot/state.js +109 -0
- package/dist/bot/state.js.map +1 -0
- package/dist/bot/stream.d.ts +28 -0
- package/dist/bot/stream.d.ts.map +1 -0
- package/dist/bot/stream.js +96 -0
- package/dist/bot/stream.js.map +1 -0
- package/dist/bot/triggers.d.ts +17 -0
- package/dist/bot/triggers.d.ts.map +1 -0
- package/dist/bot/triggers.js +95 -0
- package/dist/bot/triggers.js.map +1 -0
- package/dist/bot/types.d.ts +199 -0
- package/dist/bot/types.d.ts.map +1 -0
- package/dist/bot/types.js +12 -0
- package/dist/bot/types.js.map +1 -0
- package/dist/chainscan/client.d.ts +28 -0
- package/dist/chainscan/client.d.ts.map +1 -0
- package/dist/chainscan/client.js +361 -0
- package/dist/chainscan/client.js.map +1 -0
- package/dist/chainscan/constants.d.ts +15 -0
- package/dist/chainscan/constants.d.ts.map +1 -0
- package/dist/chainscan/constants.js +15 -0
- package/dist/chainscan/constants.js.map +1 -0
- package/dist/chainscan/types.d.ts +148 -0
- package/dist/chainscan/types.d.ts.map +1 -0
- package/dist/chainscan/types.js +2 -0
- package/dist/chainscan/types.js.map +1 -0
- package/dist/chainscan/validation.d.ts +35 -0
- package/dist/chainscan/validation.d.ts.map +1 -0
- package/dist/chainscan/validation.js +97 -0
- package/dist/chainscan/validation.js.map +1 -0
- package/dist/cli.d.ts +7 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +328 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/0g-compute.d.ts +21 -0
- package/dist/commands/0g-compute.d.ts.map +1 -0
- package/dist/commands/0g-compute.js +850 -0
- package/dist/commands/0g-compute.js.map +1 -0
- package/dist/commands/chainscan.d.ts +17 -0
- package/dist/commands/chainscan.d.ts.map +1 -0
- package/dist/commands/chainscan.js +605 -0
- package/dist/commands/chainscan.js.map +1 -0
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +251 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/echobook.d.ts +17 -0
- package/dist/commands/echobook.d.ts.map +1 -0
- package/dist/commands/echobook.js +905 -0
- package/dist/commands/echobook.js.map +1 -0
- package/dist/commands/jaine-subgraph.d.ts +3 -0
- package/dist/commands/jaine-subgraph.d.ts.map +1 -0
- package/dist/commands/jaine-subgraph.js +565 -0
- package/dist/commands/jaine-subgraph.js.map +1 -0
- package/dist/commands/jaine.d.ts +3 -0
- package/dist/commands/jaine.d.ts.map +1 -0
- package/dist/commands/jaine.js +1415 -0
- package/dist/commands/jaine.js.map +1 -0
- package/dist/commands/marketmaker.d.ts +6 -0
- package/dist/commands/marketmaker.d.ts.map +1 -0
- package/dist/commands/marketmaker.js +451 -0
- package/dist/commands/marketmaker.js.map +1 -0
- package/dist/commands/send.d.ts +3 -0
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +229 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/setup.d.ts +3 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +263 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/slop-app.d.ts +9 -0
- package/dist/commands/slop-app.d.ts.map +1 -0
- package/dist/commands/slop-app.js +708 -0
- package/dist/commands/slop-app.js.map +1 -0
- package/dist/commands/slop-stream.d.ts +9 -0
- package/dist/commands/slop-stream.d.ts.map +1 -0
- package/dist/commands/slop-stream.js +99 -0
- package/dist/commands/slop-stream.js.map +1 -0
- package/dist/commands/slop.d.ts +3 -0
- package/dist/commands/slop.d.ts.map +1 -0
- package/dist/commands/slop.js +1053 -0
- package/dist/commands/slop.js.map +1 -0
- package/dist/commands/wallet.d.ts +13 -0
- package/dist/commands/wallet.d.ts.map +1 -0
- package/dist/commands/wallet.js +748 -0
- package/dist/commands/wallet.js.map +1 -0
- package/dist/config/paths.d.ts +13 -0
- package/dist/config/paths.d.ts.map +1 -0
- package/dist/config/paths.js +33 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/config/store.d.ts +48 -0
- package/dist/config/store.d.ts.map +1 -0
- package/dist/config/store.js +113 -0
- package/dist/config/store.js.map +1 -0
- package/dist/constants/chain.d.ts +57 -0
- package/dist/constants/chain.d.ts.map +1 -0
- package/dist/constants/chain.js +51 -0
- package/dist/constants/chain.js.map +1 -0
- package/dist/echobook/api.d.ts +38 -0
- package/dist/echobook/api.d.ts.map +1 -0
- package/dist/echobook/api.js +86 -0
- package/dist/echobook/api.js.map +1 -0
- package/dist/echobook/auth.d.ts +31 -0
- package/dist/echobook/auth.d.ts.map +1 -0
- package/dist/echobook/auth.js +93 -0
- package/dist/echobook/auth.js.map +1 -0
- package/dist/echobook/comments.d.ts +26 -0
- package/dist/echobook/comments.d.ts.map +1 -0
- package/dist/echobook/comments.js +20 -0
- package/dist/echobook/comments.js.map +1 -0
- package/dist/echobook/follows.d.ts +19 -0
- package/dist/echobook/follows.d.ts.map +1 -0
- package/dist/echobook/follows.js +21 -0
- package/dist/echobook/follows.js.map +1 -0
- package/dist/echobook/jwtCache.d.ts +15 -0
- package/dist/echobook/jwtCache.d.ts.map +1 -0
- package/dist/echobook/jwtCache.js +63 -0
- package/dist/echobook/jwtCache.js.map +1 -0
- package/dist/echobook/notifications.d.ts +30 -0
- package/dist/echobook/notifications.d.ts.map +1 -0
- package/dist/echobook/notifications.js +26 -0
- package/dist/echobook/notifications.js.map +1 -0
- package/dist/echobook/points.d.ts +35 -0
- package/dist/echobook/points.d.ts.map +1 -0
- package/dist/echobook/points.js +20 -0
- package/dist/echobook/points.js.map +1 -0
- package/dist/echobook/posts.d.ts +46 -0
- package/dist/echobook/posts.d.ts.map +1 -0
- package/dist/echobook/posts.js +43 -0
- package/dist/echobook/posts.js.map +1 -0
- package/dist/echobook/profile.d.ts +29 -0
- package/dist/echobook/profile.d.ts.map +1 -0
- package/dist/echobook/profile.js +14 -0
- package/dist/echobook/profile.js.map +1 -0
- package/dist/echobook/submolts.d.ts +22 -0
- package/dist/echobook/submolts.d.ts.map +1 -0
- package/dist/echobook/submolts.js +24 -0
- package/dist/echobook/submolts.js.map +1 -0
- package/dist/echobook/tradeProof.d.ts +21 -0
- package/dist/echobook/tradeProof.d.ts.map +1 -0
- package/dist/echobook/tradeProof.js +14 -0
- package/dist/echobook/tradeProof.js.map +1 -0
- package/dist/echobook/votes.d.ts +17 -0
- package/dist/echobook/votes.d.ts.map +1 -0
- package/dist/echobook/votes.js +20 -0
- package/dist/echobook/votes.js.map +1 -0
- package/dist/errors.d.ts +125 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +147 -0
- package/dist/errors.js.map +1 -0
- package/dist/intents/store.d.ts +22 -0
- package/dist/intents/store.d.ts.map +1 -0
- package/dist/intents/store.js +76 -0
- package/dist/intents/store.js.map +1 -0
- package/dist/intents/types.d.ts +21 -0
- package/dist/intents/types.d.ts.map +1 -0
- package/dist/intents/types.js +2 -0
- package/dist/intents/types.js.map +1 -0
- package/dist/jaine/abi/erc20.d.ts +90 -0
- package/dist/jaine/abi/erc20.d.ts.map +1 -0
- package/dist/jaine/abi/erc20.js +65 -0
- package/dist/jaine/abi/erc20.js.map +1 -0
- package/dist/jaine/abi/factory.d.ts +38 -0
- package/dist/jaine/abi/factory.d.ts.map +1 -0
- package/dist/jaine/abi/factory.js +26 -0
- package/dist/jaine/abi/factory.js.map +1 -0
- package/dist/jaine/abi/index.d.ts +11 -0
- package/dist/jaine/abi/index.d.ts.map +1 -0
- package/dist/jaine/abi/index.js +11 -0
- package/dist/jaine/abi/index.js.map +1 -0
- package/dist/jaine/abi/nftManager.d.ts +282 -0
- package/dist/jaine/abi/nftManager.d.ts.map +1 -0
- package/dist/jaine/abi/nftManager.js +182 -0
- package/dist/jaine/abi/nftManager.js.map +1 -0
- package/dist/jaine/abi/pool.d.ts +77 -0
- package/dist/jaine/abi/pool.d.ts.map +1 -0
- package/dist/jaine/abi/pool.js +56 -0
- package/dist/jaine/abi/pool.js.map +1 -0
- package/dist/jaine/abi/quoter.d.ts +84 -0
- package/dist/jaine/abi/quoter.d.ts.map +1 -0
- package/dist/jaine/abi/quoter.js +53 -0
- package/dist/jaine/abi/quoter.js.map +1 -0
- package/dist/jaine/abi/router.d.ts +135 -0
- package/dist/jaine/abi/router.d.ts.map +1 -0
- package/dist/jaine/abi/router.js +88 -0
- package/dist/jaine/abi/router.js.map +1 -0
- package/dist/jaine/abi/w0g.d.ts +41 -0
- package/dist/jaine/abi/w0g.d.ts.map +1 -0
- package/dist/jaine/abi/w0g.js +34 -0
- package/dist/jaine/abi/w0g.js.map +1 -0
- package/dist/jaine/allowance.d.ts +48 -0
- package/dist/jaine/allowance.d.ts.map +1 -0
- package/dist/jaine/allowance.js +192 -0
- package/dist/jaine/allowance.js.map +1 -0
- package/dist/jaine/coreTokens.d.ts +32 -0
- package/dist/jaine/coreTokens.d.ts.map +1 -0
- package/dist/jaine/coreTokens.js +91 -0
- package/dist/jaine/coreTokens.js.map +1 -0
- package/dist/jaine/pathEncoding.d.ts +39 -0
- package/dist/jaine/pathEncoding.d.ts.map +1 -0
- package/dist/jaine/pathEncoding.js +98 -0
- package/dist/jaine/pathEncoding.js.map +1 -0
- package/dist/jaine/paths.d.ts +11 -0
- package/dist/jaine/paths.d.ts.map +1 -0
- package/dist/jaine/paths.js +20 -0
- package/dist/jaine/paths.js.map +1 -0
- package/dist/jaine/poolCache.d.ts +47 -0
- package/dist/jaine/poolCache.d.ts.map +1 -0
- package/dist/jaine/poolCache.js +195 -0
- package/dist/jaine/poolCache.js.map +1 -0
- package/dist/jaine/routing.d.ts +41 -0
- package/dist/jaine/routing.d.ts.map +1 -0
- package/dist/jaine/routing.js +247 -0
- package/dist/jaine/routing.js.map +1 -0
- package/dist/jaine/subgraph/client.d.ts +26 -0
- package/dist/jaine/subgraph/client.d.ts.map +1 -0
- package/dist/jaine/subgraph/client.js +201 -0
- package/dist/jaine/subgraph/client.js.map +1 -0
- package/dist/jaine/subgraph/constants.d.ts +9 -0
- package/dist/jaine/subgraph/constants.d.ts.map +1 -0
- package/dist/jaine/subgraph/constants.js +9 -0
- package/dist/jaine/subgraph/constants.js.map +1 -0
- package/dist/jaine/subgraph/queries.d.ts +21 -0
- package/dist/jaine/subgraph/queries.d.ts.map +1 -0
- package/dist/jaine/subgraph/queries.js +304 -0
- package/dist/jaine/subgraph/queries.js.map +1 -0
- package/dist/jaine/subgraph/types.d.ts +209 -0
- package/dist/jaine/subgraph/types.d.ts.map +1 -0
- package/dist/jaine/subgraph/types.js +7 -0
- package/dist/jaine/subgraph/types.js.map +1 -0
- package/dist/jaine/userTokens.d.ts +27 -0
- package/dist/jaine/userTokens.d.ts.map +1 -0
- package/dist/jaine/userTokens.js +89 -0
- package/dist/jaine/userTokens.js.map +1 -0
- package/dist/openclaw/config.d.ts +43 -0
- package/dist/openclaw/config.d.ts.map +1 -0
- package/dist/openclaw/config.js +231 -0
- package/dist/openclaw/config.js.map +1 -0
- package/dist/openclaw/hooks-client.d.ts +24 -0
- package/dist/openclaw/hooks-client.d.ts.map +1 -0
- package/dist/openclaw/hooks-client.js +119 -0
- package/dist/openclaw/hooks-client.js.map +1 -0
- package/dist/slop/abi/factory.d.ts +128 -0
- package/dist/slop/abi/factory.d.ts.map +1 -0
- package/dist/slop/abi/factory.js +70 -0
- package/dist/slop/abi/factory.js.map +1 -0
- package/dist/slop/abi/feeCollector.d.ts +95 -0
- package/dist/slop/abi/feeCollector.d.ts.map +1 -0
- package/dist/slop/abi/feeCollector.js +71 -0
- package/dist/slop/abi/feeCollector.js.map +1 -0
- package/dist/slop/abi/index.d.ts +5 -0
- package/dist/slop/abi/index.d.ts.map +1 -0
- package/dist/slop/abi/index.js +5 -0
- package/dist/slop/abi/index.js.map +1 -0
- package/dist/slop/abi/registry.d.ts +135 -0
- package/dist/slop/abi/registry.d.ts.map +1 -0
- package/dist/slop/abi/registry.js +90 -0
- package/dist/slop/abi/registry.js.map +1 -0
- package/dist/slop/abi/token.d.ts +320 -0
- package/dist/slop/abi/token.d.ts.map +1 -0
- package/dist/slop/abi/token.js +251 -0
- package/dist/slop/abi/token.js.map +1 -0
- package/dist/slop/auth.d.ts +19 -0
- package/dist/slop/auth.d.ts.map +1 -0
- package/dist/slop/auth.js +92 -0
- package/dist/slop/auth.js.map +1 -0
- package/dist/slop/jwtCache.d.ts +27 -0
- package/dist/slop/jwtCache.d.ts.map +1 -0
- package/dist/slop/jwtCache.js +91 -0
- package/dist/slop/jwtCache.js.map +1 -0
- package/dist/slop/quote.d.ts +80 -0
- package/dist/slop/quote.d.ts.map +1 -0
- package/dist/slop/quote.js +174 -0
- package/dist/slop/quote.js.map +1 -0
- package/dist/utils/canonicalJson.d.ts +8 -0
- package/dist/utils/canonicalJson.d.ts.map +1 -0
- package/dist/utils/canonicalJson.js +20 -0
- package/dist/utils/canonicalJson.js.map +1 -0
- package/dist/utils/env.d.ts +11 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +20 -0
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/http.d.ts +19 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/http.js +61 -0
- package/dist/utils/http.js.map +1 -0
- package/dist/utils/logger.d.ts +4 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +21 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/output.d.ts +29 -0
- package/dist/utils/output.d.ts.map +1 -0
- package/dist/utils/output.js +51 -0
- package/dist/utils/output.js.map +1 -0
- package/dist/utils/rateLimit.d.ts +22 -0
- package/dist/utils/rateLimit.d.ts.map +1 -0
- package/dist/utils/rateLimit.js +58 -0
- package/dist/utils/rateLimit.js.map +1 -0
- package/dist/utils/respond.d.ts +19 -0
- package/dist/utils/respond.d.ts.map +1 -0
- package/dist/utils/respond.js +25 -0
- package/dist/utils/respond.js.map +1 -0
- package/dist/utils/ui.d.ts +38 -0
- package/dist/utils/ui.d.ts.map +1 -0
- package/dist/utils/ui.js +126 -0
- package/dist/utils/ui.js.map +1 -0
- package/dist/wallet/client.d.ts +4 -0
- package/dist/wallet/client.d.ts.map +1 -0
- package/dist/wallet/client.js +53 -0
- package/dist/wallet/client.js.map +1 -0
- package/dist/wallet/keystore.d.ts +22 -0
- package/dist/wallet/keystore.d.ts.map +1 -0
- package/dist/wallet/keystore.js +111 -0
- package/dist/wallet/keystore.js.map +1 -0
- package/package.json +63 -0
- package/skills/echo/SKILL.md +1121 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenClaw webhook notification client.
|
|
3
|
+
*
|
|
4
|
+
* Sends trade events to OpenClaw Gateway (POST /hooks/agent) so the agent
|
|
5
|
+
* can deliver notifications to the user's messenger (WhatsApp, Telegram, etc.).
|
|
6
|
+
*
|
|
7
|
+
* Configuration via ENV vars — disabled when not set.
|
|
8
|
+
* Fire-and-forget: errors are logged but never thrown.
|
|
9
|
+
*/
|
|
10
|
+
import logger from "../utils/logger.js";
|
|
11
|
+
let cachedConfig;
|
|
12
|
+
export function loadHooksConfig() {
|
|
13
|
+
if (cachedConfig !== undefined)
|
|
14
|
+
return cachedConfig;
|
|
15
|
+
const baseUrl = process.env.OPENCLAW_HOOKS_BASE_URL?.replace(/\/+$/, "");
|
|
16
|
+
const token = process.env.OPENCLAW_HOOKS_TOKEN;
|
|
17
|
+
if (!baseUrl || !token) {
|
|
18
|
+
cachedConfig = null;
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
cachedConfig = {
|
|
22
|
+
baseUrl,
|
|
23
|
+
token,
|
|
24
|
+
agentId: process.env.OPENCLAW_HOOKS_AGENT_ID || undefined,
|
|
25
|
+
channel: process.env.OPENCLAW_HOOKS_CHANNEL || undefined,
|
|
26
|
+
to: process.env.OPENCLAW_HOOKS_TO || undefined,
|
|
27
|
+
includeGuardrail: process.env.OPENCLAW_HOOKS_INCLUDE_GUARDRAIL === "1",
|
|
28
|
+
};
|
|
29
|
+
return cachedConfig;
|
|
30
|
+
}
|
|
31
|
+
/** Test-only: resets cached ENV config so next call re-reads process.env. */
|
|
32
|
+
export function _resetConfigCache() {
|
|
33
|
+
cachedConfig = undefined;
|
|
34
|
+
}
|
|
35
|
+
// ── Message formatting ──────────────────────────────────────────────
|
|
36
|
+
const MAX_MESSAGE_LENGTH = 2048;
|
|
37
|
+
export function formatWebhookMessage(notification) {
|
|
38
|
+
let msg;
|
|
39
|
+
switch (notification.type) {
|
|
40
|
+
case "BUY_FILLED":
|
|
41
|
+
msg = `Bought ${notification.amountOg ?? "?"} 0G of ${notification.tokenSymbol ?? notification.token?.slice(0, 10) ?? "?"} | tx: ${notification.explorerUrl ?? notification.txHash ?? "?"}`;
|
|
42
|
+
break;
|
|
43
|
+
case "SELL_FILLED":
|
|
44
|
+
msg = `Sold ${notification.amountTokens ?? "?"} ${notification.tokenSymbol ?? notification.token?.slice(0, 10) ?? "?"} | tx: ${notification.explorerUrl ?? notification.txHash ?? "?"}`;
|
|
45
|
+
break;
|
|
46
|
+
case "TRADE_FAILED":
|
|
47
|
+
msg = `Trade failed: ${notification.failReason?.slice(0, 200) ?? "unknown"}`;
|
|
48
|
+
break;
|
|
49
|
+
case "GUARDRAIL_EXCEEDED":
|
|
50
|
+
msg = `Guardrail exceeded: ${notification.failReason?.slice(0, 200) ?? "unknown"}`;
|
|
51
|
+
break;
|
|
52
|
+
default:
|
|
53
|
+
// BOT_STARTED, BOT_STOPPED — never sent via webhook
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
if (msg.length > MAX_MESSAGE_LENGTH) {
|
|
57
|
+
msg = msg.slice(0, MAX_MESSAGE_LENGTH);
|
|
58
|
+
}
|
|
59
|
+
return msg;
|
|
60
|
+
}
|
|
61
|
+
// ── Webhook delivery ────────────────────────────────────────────────
|
|
62
|
+
export async function postWebhookNotification(notification) {
|
|
63
|
+
const config = loadHooksConfig();
|
|
64
|
+
if (!config)
|
|
65
|
+
return;
|
|
66
|
+
// Filter event types
|
|
67
|
+
if (notification.type === "BOT_STARTED" || notification.type === "BOT_STOPPED")
|
|
68
|
+
return;
|
|
69
|
+
if (notification.type === "GUARDRAIL_EXCEEDED" && !config.includeGuardrail)
|
|
70
|
+
return;
|
|
71
|
+
const message = formatWebhookMessage(notification);
|
|
72
|
+
if (!message)
|
|
73
|
+
return;
|
|
74
|
+
const body = {
|
|
75
|
+
message,
|
|
76
|
+
name: "MarketMaker",
|
|
77
|
+
deliver: true,
|
|
78
|
+
wakeMode: "now",
|
|
79
|
+
};
|
|
80
|
+
if (config.agentId)
|
|
81
|
+
body.agentId = config.agentId;
|
|
82
|
+
if (config.channel)
|
|
83
|
+
body.channel = config.channel;
|
|
84
|
+
if (config.to)
|
|
85
|
+
body.to = config.to;
|
|
86
|
+
const url = `${config.baseUrl}/hooks/agent`;
|
|
87
|
+
const headers = {
|
|
88
|
+
"Content-Type": "application/json",
|
|
89
|
+
Authorization: `Bearer ${config.token}`,
|
|
90
|
+
};
|
|
91
|
+
let lastError;
|
|
92
|
+
for (let attempt = 0; attempt < 2; attempt++) {
|
|
93
|
+
try {
|
|
94
|
+
const res = await fetch(url, {
|
|
95
|
+
method: "POST",
|
|
96
|
+
headers,
|
|
97
|
+
body: JSON.stringify(body),
|
|
98
|
+
signal: AbortSignal.timeout(5000),
|
|
99
|
+
});
|
|
100
|
+
if (res.ok) {
|
|
101
|
+
logger.info(`[OpenClaw] webhook.sent type=${notification.type}`);
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
logger.warn(`[OpenClaw] webhook.failed status=${res.status} type=${notification.type}`);
|
|
105
|
+
}
|
|
106
|
+
// Any HTTP response (success or error) → done, no retry
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
catch (err) {
|
|
110
|
+
lastError = err;
|
|
111
|
+
// Only retry once on network/timeout errors
|
|
112
|
+
if (attempt === 0)
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
// Both attempts failed with network error
|
|
117
|
+
logger.warn(`[OpenClaw] webhook.failed error=${lastError instanceof Error ? lastError.message : String(lastError)} type=${notification.type}`);
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=hooks-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks-client.js","sourceRoot":"","sources":["../../src/openclaw/hooks-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SlopMoneyFactory ABI - minimal subset for token creation and queries
|
|
3
|
+
*/
|
|
4
|
+
export declare const SLOP_FACTORY_ABI: readonly [{
|
|
5
|
+
readonly type: "function";
|
|
6
|
+
readonly name: "createToken";
|
|
7
|
+
readonly stateMutability: "nonpayable";
|
|
8
|
+
readonly inputs: readonly [{
|
|
9
|
+
readonly name: "name";
|
|
10
|
+
readonly type: "string";
|
|
11
|
+
}, {
|
|
12
|
+
readonly name: "symbol";
|
|
13
|
+
readonly type: "string";
|
|
14
|
+
}, {
|
|
15
|
+
readonly name: "description";
|
|
16
|
+
readonly type: "string";
|
|
17
|
+
}, {
|
|
18
|
+
readonly name: "imageUrl";
|
|
19
|
+
readonly type: "string";
|
|
20
|
+
}, {
|
|
21
|
+
readonly name: "twitter";
|
|
22
|
+
readonly type: "string";
|
|
23
|
+
}, {
|
|
24
|
+
readonly name: "telegram";
|
|
25
|
+
readonly type: "string";
|
|
26
|
+
}, {
|
|
27
|
+
readonly name: "website";
|
|
28
|
+
readonly type: "string";
|
|
29
|
+
}, {
|
|
30
|
+
readonly name: "userSalt";
|
|
31
|
+
readonly type: "bytes32";
|
|
32
|
+
}];
|
|
33
|
+
readonly outputs: readonly [{
|
|
34
|
+
readonly name: "tokenAddress";
|
|
35
|
+
readonly type: "address";
|
|
36
|
+
}];
|
|
37
|
+
}, {
|
|
38
|
+
readonly type: "function";
|
|
39
|
+
readonly name: "isOfficialToken";
|
|
40
|
+
readonly stateMutability: "view";
|
|
41
|
+
readonly inputs: readonly [{
|
|
42
|
+
readonly name: "token";
|
|
43
|
+
readonly type: "address";
|
|
44
|
+
}];
|
|
45
|
+
readonly outputs: readonly [{
|
|
46
|
+
readonly name: "";
|
|
47
|
+
readonly type: "bool";
|
|
48
|
+
}];
|
|
49
|
+
}, {
|
|
50
|
+
readonly type: "function";
|
|
51
|
+
readonly name: "tokenCreator";
|
|
52
|
+
readonly stateMutability: "view";
|
|
53
|
+
readonly inputs: readonly [{
|
|
54
|
+
readonly name: "token";
|
|
55
|
+
readonly type: "address";
|
|
56
|
+
}];
|
|
57
|
+
readonly outputs: readonly [{
|
|
58
|
+
readonly name: "";
|
|
59
|
+
readonly type: "address";
|
|
60
|
+
}];
|
|
61
|
+
}, {
|
|
62
|
+
readonly type: "function";
|
|
63
|
+
readonly name: "totalTokensCreated";
|
|
64
|
+
readonly stateMutability: "view";
|
|
65
|
+
readonly inputs: readonly [];
|
|
66
|
+
readonly outputs: readonly [{
|
|
67
|
+
readonly name: "";
|
|
68
|
+
readonly type: "uint256";
|
|
69
|
+
}];
|
|
70
|
+
}, {
|
|
71
|
+
readonly type: "function";
|
|
72
|
+
readonly name: "totalTokensGraduated";
|
|
73
|
+
readonly stateMutability: "view";
|
|
74
|
+
readonly inputs: readonly [];
|
|
75
|
+
readonly outputs: readonly [{
|
|
76
|
+
readonly name: "";
|
|
77
|
+
readonly type: "uint256";
|
|
78
|
+
}];
|
|
79
|
+
}, {
|
|
80
|
+
readonly type: "event";
|
|
81
|
+
readonly name: "TokenCreated";
|
|
82
|
+
readonly inputs: readonly [{
|
|
83
|
+
readonly name: "tokenAddress";
|
|
84
|
+
readonly type: "address";
|
|
85
|
+
readonly indexed: true;
|
|
86
|
+
}, {
|
|
87
|
+
readonly name: "creator";
|
|
88
|
+
readonly type: "address";
|
|
89
|
+
readonly indexed: true;
|
|
90
|
+
}, {
|
|
91
|
+
readonly name: "name";
|
|
92
|
+
readonly type: "string";
|
|
93
|
+
readonly indexed: false;
|
|
94
|
+
}, {
|
|
95
|
+
readonly name: "symbol";
|
|
96
|
+
readonly type: "string";
|
|
97
|
+
readonly indexed: false;
|
|
98
|
+
}, {
|
|
99
|
+
readonly name: "imageUrl";
|
|
100
|
+
readonly type: "string";
|
|
101
|
+
readonly indexed: false;
|
|
102
|
+
}, {
|
|
103
|
+
readonly name: "description";
|
|
104
|
+
readonly type: "string";
|
|
105
|
+
readonly indexed: false;
|
|
106
|
+
}, {
|
|
107
|
+
readonly name: "twitter";
|
|
108
|
+
readonly type: "string";
|
|
109
|
+
readonly indexed: false;
|
|
110
|
+
}, {
|
|
111
|
+
readonly name: "telegram";
|
|
112
|
+
readonly type: "string";
|
|
113
|
+
readonly indexed: false;
|
|
114
|
+
}, {
|
|
115
|
+
readonly name: "website";
|
|
116
|
+
readonly type: "string";
|
|
117
|
+
readonly indexed: false;
|
|
118
|
+
}, {
|
|
119
|
+
readonly name: "tokenId";
|
|
120
|
+
readonly type: "uint256";
|
|
121
|
+
readonly indexed: false;
|
|
122
|
+
}, {
|
|
123
|
+
readonly name: "timestamp";
|
|
124
|
+
readonly type: "uint256";
|
|
125
|
+
readonly indexed: false;
|
|
126
|
+
}];
|
|
127
|
+
}];
|
|
128
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/slop/abi/factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiEnB,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SlopMoneyFactory ABI - minimal subset for token creation and queries
|
|
3
|
+
*/
|
|
4
|
+
export const SLOP_FACTORY_ABI = [
|
|
5
|
+
// Token creation
|
|
6
|
+
{
|
|
7
|
+
type: "function",
|
|
8
|
+
name: "createToken",
|
|
9
|
+
stateMutability: "nonpayable",
|
|
10
|
+
inputs: [
|
|
11
|
+
{ name: "name", type: "string" },
|
|
12
|
+
{ name: "symbol", type: "string" },
|
|
13
|
+
{ name: "description", type: "string" },
|
|
14
|
+
{ name: "imageUrl", type: "string" },
|
|
15
|
+
{ name: "twitter", type: "string" },
|
|
16
|
+
{ name: "telegram", type: "string" },
|
|
17
|
+
{ name: "website", type: "string" },
|
|
18
|
+
{ name: "userSalt", type: "bytes32" },
|
|
19
|
+
],
|
|
20
|
+
outputs: [{ name: "tokenAddress", type: "address" }],
|
|
21
|
+
},
|
|
22
|
+
// View functions
|
|
23
|
+
{
|
|
24
|
+
type: "function",
|
|
25
|
+
name: "isOfficialToken",
|
|
26
|
+
stateMutability: "view",
|
|
27
|
+
inputs: [{ name: "token", type: "address" }],
|
|
28
|
+
outputs: [{ name: "", type: "bool" }],
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
type: "function",
|
|
32
|
+
name: "tokenCreator",
|
|
33
|
+
stateMutability: "view",
|
|
34
|
+
inputs: [{ name: "token", type: "address" }],
|
|
35
|
+
outputs: [{ name: "", type: "address" }],
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
type: "function",
|
|
39
|
+
name: "totalTokensCreated",
|
|
40
|
+
stateMutability: "view",
|
|
41
|
+
inputs: [],
|
|
42
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
type: "function",
|
|
46
|
+
name: "totalTokensGraduated",
|
|
47
|
+
stateMutability: "view",
|
|
48
|
+
inputs: [],
|
|
49
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
50
|
+
},
|
|
51
|
+
// Events
|
|
52
|
+
{
|
|
53
|
+
type: "event",
|
|
54
|
+
name: "TokenCreated",
|
|
55
|
+
inputs: [
|
|
56
|
+
{ name: "tokenAddress", type: "address", indexed: true },
|
|
57
|
+
{ name: "creator", type: "address", indexed: true },
|
|
58
|
+
{ name: "name", type: "string", indexed: false },
|
|
59
|
+
{ name: "symbol", type: "string", indexed: false },
|
|
60
|
+
{ name: "imageUrl", type: "string", indexed: false },
|
|
61
|
+
{ name: "description", type: "string", indexed: false },
|
|
62
|
+
{ name: "twitter", type: "string", indexed: false },
|
|
63
|
+
{ name: "telegram", type: "string", indexed: false },
|
|
64
|
+
{ name: "website", type: "string", indexed: false },
|
|
65
|
+
{ name: "tokenId", type: "uint256", indexed: false },
|
|
66
|
+
{ name: "timestamp", type: "uint256", indexed: false },
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
];
|
|
70
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/slop/abi/factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,iBAAiB;IACjB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;YAClC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;YACpC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;YACpC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;SACtC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACrD;IACD,iBAAiB;IACjB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD,SAAS;IACT;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;YACxD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;YACnD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YAChD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YAClD,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YACpD,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YACvD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YACnD,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YACpD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE;YACnD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;YACpD,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;SACvD;KACF;CACO,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FeeCollector ABI - minimal subset for fee queries and withdrawals
|
|
3
|
+
*/
|
|
4
|
+
export declare const SLOP_FEE_COLLECTOR_ABI: readonly [{
|
|
5
|
+
readonly type: "function";
|
|
6
|
+
readonly name: "getTokenFeeStats";
|
|
7
|
+
readonly stateMutability: "view";
|
|
8
|
+
readonly inputs: readonly [{
|
|
9
|
+
readonly name: "token";
|
|
10
|
+
readonly type: "address";
|
|
11
|
+
}];
|
|
12
|
+
readonly outputs: readonly [{
|
|
13
|
+
readonly name: "totalCreator";
|
|
14
|
+
readonly type: "uint256";
|
|
15
|
+
}, {
|
|
16
|
+
readonly name: "totalPlatform";
|
|
17
|
+
readonly type: "uint256";
|
|
18
|
+
}, {
|
|
19
|
+
readonly name: "pendingCreator";
|
|
20
|
+
readonly type: "uint256";
|
|
21
|
+
}, {
|
|
22
|
+
readonly name: "pendingPlatform";
|
|
23
|
+
readonly type: "uint256";
|
|
24
|
+
}, {
|
|
25
|
+
readonly name: "volume";
|
|
26
|
+
readonly type: "uint256";
|
|
27
|
+
}];
|
|
28
|
+
}, {
|
|
29
|
+
readonly type: "function";
|
|
30
|
+
readonly name: "tokenFeeConfigs";
|
|
31
|
+
readonly stateMutability: "view";
|
|
32
|
+
readonly inputs: readonly [{
|
|
33
|
+
readonly name: "token";
|
|
34
|
+
readonly type: "address";
|
|
35
|
+
}];
|
|
36
|
+
readonly outputs: readonly [{
|
|
37
|
+
readonly name: "creatorShare";
|
|
38
|
+
readonly type: "uint16";
|
|
39
|
+
}, {
|
|
40
|
+
readonly name: "platformShare";
|
|
41
|
+
readonly type: "uint16";
|
|
42
|
+
}, {
|
|
43
|
+
readonly name: "creator";
|
|
44
|
+
readonly type: "address";
|
|
45
|
+
}, {
|
|
46
|
+
readonly name: "isActive";
|
|
47
|
+
readonly type: "bool";
|
|
48
|
+
}];
|
|
49
|
+
}, {
|
|
50
|
+
readonly type: "function";
|
|
51
|
+
readonly name: "withdrawCreatorFees";
|
|
52
|
+
readonly stateMutability: "nonpayable";
|
|
53
|
+
readonly inputs: readonly [{
|
|
54
|
+
readonly name: "token";
|
|
55
|
+
readonly type: "address";
|
|
56
|
+
}];
|
|
57
|
+
readonly outputs: readonly [];
|
|
58
|
+
}, {
|
|
59
|
+
readonly type: "function";
|
|
60
|
+
readonly name: "totalFeesCollected";
|
|
61
|
+
readonly stateMutability: "view";
|
|
62
|
+
readonly inputs: readonly [];
|
|
63
|
+
readonly outputs: readonly [{
|
|
64
|
+
readonly name: "";
|
|
65
|
+
readonly type: "uint256";
|
|
66
|
+
}];
|
|
67
|
+
}, {
|
|
68
|
+
readonly type: "function";
|
|
69
|
+
readonly name: "totalCreatorPayouts";
|
|
70
|
+
readonly stateMutability: "view";
|
|
71
|
+
readonly inputs: readonly [];
|
|
72
|
+
readonly outputs: readonly [{
|
|
73
|
+
readonly name: "";
|
|
74
|
+
readonly type: "uint256";
|
|
75
|
+
}];
|
|
76
|
+
}, {
|
|
77
|
+
readonly type: "function";
|
|
78
|
+
readonly name: "totalPlatformRevenue";
|
|
79
|
+
readonly stateMutability: "view";
|
|
80
|
+
readonly inputs: readonly [];
|
|
81
|
+
readonly outputs: readonly [{
|
|
82
|
+
readonly name: "";
|
|
83
|
+
readonly type: "uint256";
|
|
84
|
+
}];
|
|
85
|
+
}, {
|
|
86
|
+
readonly type: "function";
|
|
87
|
+
readonly name: "minDistributionAmount";
|
|
88
|
+
readonly stateMutability: "view";
|
|
89
|
+
readonly inputs: readonly [];
|
|
90
|
+
readonly outputs: readonly [{
|
|
91
|
+
readonly name: "";
|
|
92
|
+
readonly type: "uint256";
|
|
93
|
+
}];
|
|
94
|
+
}];
|
|
95
|
+
//# sourceMappingURL=feeCollector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feeCollector.d.ts","sourceRoot":"","sources":["../../../src/slop/abi/feeCollector.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkEzB,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FeeCollector ABI - minimal subset for fee queries and withdrawals
|
|
3
|
+
*/
|
|
4
|
+
export const SLOP_FEE_COLLECTOR_ABI = [
|
|
5
|
+
// Fee stats per token
|
|
6
|
+
{
|
|
7
|
+
type: "function",
|
|
8
|
+
name: "getTokenFeeStats",
|
|
9
|
+
stateMutability: "view",
|
|
10
|
+
inputs: [{ name: "token", type: "address" }],
|
|
11
|
+
outputs: [
|
|
12
|
+
{ name: "totalCreator", type: "uint256" },
|
|
13
|
+
{ name: "totalPlatform", type: "uint256" },
|
|
14
|
+
{ name: "pendingCreator", type: "uint256" },
|
|
15
|
+
{ name: "pendingPlatform", type: "uint256" },
|
|
16
|
+
{ name: "volume", type: "uint256" },
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
// Fee config per token
|
|
20
|
+
{
|
|
21
|
+
type: "function",
|
|
22
|
+
name: "tokenFeeConfigs",
|
|
23
|
+
stateMutability: "view",
|
|
24
|
+
inputs: [{ name: "token", type: "address" }],
|
|
25
|
+
outputs: [
|
|
26
|
+
{ name: "creatorShare", type: "uint16" },
|
|
27
|
+
{ name: "platformShare", type: "uint16" },
|
|
28
|
+
{ name: "creator", type: "address" },
|
|
29
|
+
{ name: "isActive", type: "bool" },
|
|
30
|
+
],
|
|
31
|
+
},
|
|
32
|
+
// Creator withdrawal
|
|
33
|
+
{
|
|
34
|
+
type: "function",
|
|
35
|
+
name: "withdrawCreatorFees",
|
|
36
|
+
stateMutability: "nonpayable",
|
|
37
|
+
inputs: [{ name: "token", type: "address" }],
|
|
38
|
+
outputs: [],
|
|
39
|
+
},
|
|
40
|
+
// Global stats
|
|
41
|
+
{
|
|
42
|
+
type: "function",
|
|
43
|
+
name: "totalFeesCollected",
|
|
44
|
+
stateMutability: "view",
|
|
45
|
+
inputs: [],
|
|
46
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
type: "function",
|
|
50
|
+
name: "totalCreatorPayouts",
|
|
51
|
+
stateMutability: "view",
|
|
52
|
+
inputs: [],
|
|
53
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
type: "function",
|
|
57
|
+
name: "totalPlatformRevenue",
|
|
58
|
+
stateMutability: "view",
|
|
59
|
+
inputs: [],
|
|
60
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
61
|
+
},
|
|
62
|
+
// Thresholds
|
|
63
|
+
{
|
|
64
|
+
type: "function",
|
|
65
|
+
name: "minDistributionAmount",
|
|
66
|
+
stateMutability: "view",
|
|
67
|
+
inputs: [],
|
|
68
|
+
outputs: [{ name: "", type: "uint256" }],
|
|
69
|
+
},
|
|
70
|
+
];
|
|
71
|
+
//# sourceMappingURL=feeCollector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feeCollector.js","sourceRoot":"","sources":["../../../src/slop/abi/feeCollector.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,sBAAsB;IACtB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1C,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3C,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;KACF;IACD,uBAAuB;IACvB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE;YACxC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;SACnC;KACF;IACD,qBAAqB;IACrB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,qBAAqB;QAC3B,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,EAAE;KACZ;IACD,eAAe;IACf;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,qBAAqB;QAC3B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;IACD,aAAa;IACb;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,eAAe,EAAE,MAAM;QACvB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KACzC;CACO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/slop/abi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/slop/abi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TokenRegistry ABI - minimal subset for token queries
|
|
3
|
+
*/
|
|
4
|
+
export declare const SLOP_REGISTRY_ABI: readonly [{
|
|
5
|
+
readonly type: "function";
|
|
6
|
+
readonly name: "isValidToken";
|
|
7
|
+
readonly stateMutability: "view";
|
|
8
|
+
readonly inputs: readonly [{
|
|
9
|
+
readonly name: "tokenAddress";
|
|
10
|
+
readonly type: "address";
|
|
11
|
+
}];
|
|
12
|
+
readonly outputs: readonly [{
|
|
13
|
+
readonly name: "";
|
|
14
|
+
readonly type: "bool";
|
|
15
|
+
}];
|
|
16
|
+
}, {
|
|
17
|
+
readonly type: "function";
|
|
18
|
+
readonly name: "tokenInfo";
|
|
19
|
+
readonly stateMutability: "view";
|
|
20
|
+
readonly inputs: readonly [{
|
|
21
|
+
readonly name: "tokenAddress";
|
|
22
|
+
readonly type: "address";
|
|
23
|
+
}];
|
|
24
|
+
readonly outputs: readonly [{
|
|
25
|
+
readonly name: "name";
|
|
26
|
+
readonly type: "string";
|
|
27
|
+
}, {
|
|
28
|
+
readonly name: "symbol";
|
|
29
|
+
readonly type: "string";
|
|
30
|
+
}, {
|
|
31
|
+
readonly name: "creator";
|
|
32
|
+
readonly type: "address";
|
|
33
|
+
}, {
|
|
34
|
+
readonly name: "createdAt";
|
|
35
|
+
readonly type: "uint256";
|
|
36
|
+
}, {
|
|
37
|
+
readonly name: "isGraduated";
|
|
38
|
+
readonly type: "bool";
|
|
39
|
+
}];
|
|
40
|
+
}, {
|
|
41
|
+
readonly type: "function";
|
|
42
|
+
readonly name: "getCreatorTokens";
|
|
43
|
+
readonly stateMutability: "view";
|
|
44
|
+
readonly inputs: readonly [{
|
|
45
|
+
readonly name: "creator";
|
|
46
|
+
readonly type: "address";
|
|
47
|
+
}];
|
|
48
|
+
readonly outputs: readonly [{
|
|
49
|
+
readonly name: "";
|
|
50
|
+
readonly type: "address[]";
|
|
51
|
+
}];
|
|
52
|
+
}, {
|
|
53
|
+
readonly type: "function";
|
|
54
|
+
readonly name: "getTokensInfo";
|
|
55
|
+
readonly stateMutability: "view";
|
|
56
|
+
readonly inputs: readonly [{
|
|
57
|
+
readonly name: "tokenAddresses";
|
|
58
|
+
readonly type: "address[]";
|
|
59
|
+
}];
|
|
60
|
+
readonly outputs: readonly [{
|
|
61
|
+
readonly name: "infos";
|
|
62
|
+
readonly type: "tuple[]";
|
|
63
|
+
readonly components: readonly [{
|
|
64
|
+
readonly name: "name";
|
|
65
|
+
readonly type: "string";
|
|
66
|
+
}, {
|
|
67
|
+
readonly name: "symbol";
|
|
68
|
+
readonly type: "string";
|
|
69
|
+
}, {
|
|
70
|
+
readonly name: "creator";
|
|
71
|
+
readonly type: "address";
|
|
72
|
+
}, {
|
|
73
|
+
readonly name: "createdAt";
|
|
74
|
+
readonly type: "uint256";
|
|
75
|
+
}, {
|
|
76
|
+
readonly name: "isGraduated";
|
|
77
|
+
readonly type: "bool";
|
|
78
|
+
}];
|
|
79
|
+
}];
|
|
80
|
+
}, {
|
|
81
|
+
readonly type: "function";
|
|
82
|
+
readonly name: "getTokensPaginated";
|
|
83
|
+
readonly stateMutability: "view";
|
|
84
|
+
readonly inputs: readonly [{
|
|
85
|
+
readonly name: "offset";
|
|
86
|
+
readonly type: "uint256";
|
|
87
|
+
}, {
|
|
88
|
+
readonly name: "limit";
|
|
89
|
+
readonly type: "uint256";
|
|
90
|
+
}];
|
|
91
|
+
readonly outputs: readonly [{
|
|
92
|
+
readonly name: "tokens";
|
|
93
|
+
readonly type: "address[]";
|
|
94
|
+
}, {
|
|
95
|
+
readonly name: "total";
|
|
96
|
+
readonly type: "uint256";
|
|
97
|
+
}];
|
|
98
|
+
}, {
|
|
99
|
+
readonly type: "function";
|
|
100
|
+
readonly name: "getStatistics";
|
|
101
|
+
readonly stateMutability: "view";
|
|
102
|
+
readonly inputs: readonly [];
|
|
103
|
+
readonly outputs: readonly [{
|
|
104
|
+
readonly name: "total";
|
|
105
|
+
readonly type: "uint256";
|
|
106
|
+
}, {
|
|
107
|
+
readonly name: "graduated";
|
|
108
|
+
readonly type: "uint256";
|
|
109
|
+
}, {
|
|
110
|
+
readonly name: "active";
|
|
111
|
+
readonly type: "uint256";
|
|
112
|
+
}];
|
|
113
|
+
}, {
|
|
114
|
+
readonly type: "function";
|
|
115
|
+
readonly name: "totalTokensCreated";
|
|
116
|
+
readonly stateMutability: "view";
|
|
117
|
+
readonly inputs: readonly [];
|
|
118
|
+
readonly outputs: readonly [{
|
|
119
|
+
readonly name: "";
|
|
120
|
+
readonly type: "uint256";
|
|
121
|
+
}];
|
|
122
|
+
}, {
|
|
123
|
+
readonly type: "function";
|
|
124
|
+
readonly name: "creatorTokenCount";
|
|
125
|
+
readonly stateMutability: "view";
|
|
126
|
+
readonly inputs: readonly [{
|
|
127
|
+
readonly name: "creator";
|
|
128
|
+
readonly type: "address";
|
|
129
|
+
}];
|
|
130
|
+
readonly outputs: readonly [{
|
|
131
|
+
readonly name: "";
|
|
132
|
+
readonly type: "uint256";
|
|
133
|
+
}];
|
|
134
|
+
}];
|
|
135
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/slop/abi/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqFpB,CAAC"}
|