@dev.sail.money/sailor 1.3.0-238 → 1.3.0-239

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.
Files changed (93) hide show
  1. package/README.md +18 -9
  2. package/package.json +1 -5
  3. package/packages/cli/README.md +1 -1
  4. package/packages/cli/dist/index.cjs +3 -3
  5. package/packages/sdk/dist/intelligence.d.ts +1 -1
  6. package/packages/sdk/dist/intelligence.js +1 -1
  7. package/packages/ui/dist/assets/{add-DoHGZfJI.js → add-CBbu2pe_.js} +1 -1
  8. package/packages/ui/dist/assets/{all-wallets-CUKVFyT3.js → all-wallets-C1oy4NUu.js} +1 -1
  9. package/packages/ui/dist/assets/{app-store-DyQ4PZOs.js → app-store-DKqyf0Zv.js} +1 -1
  10. package/packages/ui/dist/assets/{apple-Dc-GOiDW.js → apple-DyoIbCFy.js} +1 -1
  11. package/packages/ui/dist/assets/{arrow-bottom-circle-BH2LebvP.js → arrow-bottom-circle-CMS-OqZQ.js} +1 -1
  12. package/packages/ui/dist/assets/{arrow-bottom-C-dI8Oh_.js → arrow-bottom-pUWeEqYu.js} +1 -1
  13. package/packages/ui/dist/assets/{arrow-left-CUIn5NsD.js → arrow-left-B81HMJNL.js} +1 -1
  14. package/packages/ui/dist/assets/{arrow-right-B-X57DDF.js → arrow-right-Z5czoKlC.js} +1 -1
  15. package/packages/ui/dist/assets/{arrow-top-BNOmzVbg.js → arrow-top-C6ym1oll.js} +1 -1
  16. package/packages/ui/dist/assets/{bank-Dqcy3Map.js → bank-B41nlslf.js} +1 -1
  17. package/packages/ui/dist/assets/{basic-CN95kOlB.js → basic-CWqOb7CV.js} +1 -1
  18. package/packages/ui/dist/assets/{browser-v-WzD6Au.js → browser-DDKdqoZ9.js} +1 -1
  19. package/packages/ui/dist/assets/{card-DJmQXuOi.js → card-BgOmTajq.js} +1 -1
  20. package/packages/ui/dist/assets/{ccip-8oS512uk.js → ccip-CtJUKWRd.js} +1 -1
  21. package/packages/ui/dist/assets/{checkmark-6Rvy6Al7.js → checkmark-CGqQipH4.js} +1 -1
  22. package/packages/ui/dist/assets/{checkmark-bold-GYXSMFUr.js → checkmark-bold-Ci5xf90j.js} +1 -1
  23. package/packages/ui/dist/assets/{chevron-bottom-BF1Fa2NO.js → chevron-bottom-D7Xert17.js} +1 -1
  24. package/packages/ui/dist/assets/{chevron-left-kj9KjPLp.js → chevron-left-BGbUebR2.js} +1 -1
  25. package/packages/ui/dist/assets/{chevron-right-CHH0lg7_.js → chevron-right-xVsESnHU.js} +1 -1
  26. package/packages/ui/dist/assets/{chevron-top-DjHmnG32.js → chevron-top-DEA9cR6v.js} +1 -1
  27. package/packages/ui/dist/assets/{chrome-store-KzNe4H9H.js → chrome-store-BsyI-4PI.js} +1 -1
  28. package/packages/ui/dist/assets/{clock-xHvMNQNx.js → clock-Dct9oQ3M.js} +1 -1
  29. package/packages/ui/dist/assets/{close-nKtgX0WM.js → close-BvSCnI2y.js} +1 -1
  30. package/packages/ui/dist/assets/{coinPlaceholder-gnwD3g4G.js → coinPlaceholder-p7RiWkon.js} +1 -1
  31. package/packages/ui/dist/assets/{compass-wnLBxh3w.js → compass-BUeeZqX4.js} +1 -1
  32. package/packages/ui/dist/assets/{copy-CmLisiOG.js → copy-C5jXbxLq.js} +1 -1
  33. package/packages/ui/dist/assets/{core-BLOM5s8O.js → core-CiAm42Mq.js} +3 -3
  34. package/packages/ui/dist/assets/{cursor-DgwjrlpZ.js → cursor-C0T7JWFO.js} +1 -1
  35. package/packages/ui/dist/assets/{cursor-transparent-CjVDknUI.js → cursor-transparent-BZp3-JmA.js} +1 -1
  36. package/packages/ui/dist/assets/{desktop-BSGjR5fT.js → desktop-BIui_Lzb.js} +1 -1
  37. package/packages/ui/dist/assets/{disconnect-DkOQ_j9U.js → disconnect-B3Bxdchp.js} +1 -1
  38. package/packages/ui/dist/assets/{discord-DtvZ281_.js → discord-VWI0yDyx.js} +1 -1
  39. package/packages/ui/dist/assets/{etherscan-BB3baLbR.js → etherscan-BpBvUT9i.js} +1 -1
  40. package/packages/ui/dist/assets/{exclamation-triangle-BrR8a-pR.js → exclamation-triangle-o1TJHIUw.js} +1 -1
  41. package/packages/ui/dist/assets/{extension-BiGAMg97.js → extension-4RaLvbh5.js} +1 -1
  42. package/packages/ui/dist/assets/{external-link-qUc7QuKA.js → external-link-BHIwjDgj.js} +1 -1
  43. package/packages/ui/dist/assets/{facebook-BuXatc22.js → facebook-Bes5g-wN.js} +1 -1
  44. package/packages/ui/dist/assets/{farcaster-USwPlLU8.js → farcaster-CiJ-352m.js} +1 -1
  45. package/packages/ui/dist/assets/{filters-BWx3pZxN.js → filters-DMOteumb.js} +1 -1
  46. package/packages/ui/dist/assets/{github-CUSWD7ff.js → github-D2nDec9X.js} +1 -1
  47. package/packages/ui/dist/assets/{google-CxJSLEaz.js → google-lZZlQZPQ.js} +1 -1
  48. package/packages/ui/dist/assets/{help-circle-_8isjSO0.js → help-circle-D4cSSziR.js} +1 -1
  49. package/packages/ui/dist/assets/{id-DJCzMfx_.js → id-BmhXZq5P.js} +1 -1
  50. package/packages/ui/dist/assets/{image-CmG69MZj.js → image-Dz4FPeET.js} +1 -1
  51. package/packages/ui/dist/assets/{index-BIqjq0q5.js → index-BeUp3nOq.js} +1 -1
  52. package/packages/ui/dist/assets/{index-DsxB7ORb.js → index-CvRylmZJ.js} +1 -1
  53. package/packages/ui/dist/assets/{index-3YqzzyrK.js → index-DeoQO45V.js} +3 -3
  54. package/packages/ui/dist/assets/{index-DHVwxjrm.js → index-Et5S3ZaW.js} +1 -1
  55. package/packages/ui/dist/assets/{index-D8zwDy7d.js → index-LiKeH8Cd.js} +4 -4
  56. package/packages/ui/dist/assets/{index.es-Hqwz_Ukd.js → index.es-dfpEui-9.js} +4 -4
  57. package/packages/ui/dist/assets/{info-XYctdUoY.js → info-77RSvIMg.js} +1 -1
  58. package/packages/ui/dist/assets/{info-circle-D_fYZUhv.js → info-circle-CWsII-NN.js} +1 -1
  59. package/packages/ui/dist/assets/{lightbulb-BqKkDThe.js → lightbulb-BZXzm7XE.js} +1 -1
  60. package/packages/ui/dist/assets/{mail-CM4laVWT.js → mail-DMG1YqB0.js} +1 -1
  61. package/packages/ui/dist/assets/{metamask-sdk-8TvB8vxr.js → metamask-sdk-K1x_iqcc.js} +1 -1
  62. package/packages/ui/dist/assets/{mobile-C2cl_MIN.js → mobile-DuJfOBSk.js} +1 -1
  63. package/packages/ui/dist/assets/{more-DOik7ytj.js → more-Cs9ySK2F.js} +1 -1
  64. package/packages/ui/dist/assets/{network-placeholder-CC9Cg0q_.js → network-placeholder-CMDPmB1E.js} +1 -1
  65. package/packages/ui/dist/assets/{nftPlaceholder-Oe_bTYkM.js → nftPlaceholder-Cj0f9y2u.js} +1 -1
  66. package/packages/ui/dist/assets/{off-ao0Rdo1E.js → off-9zSSsm-e.js} +1 -1
  67. package/packages/ui/dist/assets/{play-store-BcQlROdR.js → play-store-CPwIb8Gj.js} +1 -1
  68. package/packages/ui/dist/assets/{plus-DSOprccT.js → plus-BOHQri8o.js} +1 -1
  69. package/packages/ui/dist/assets/{qr-code-B64-C9CJ.js → qr-code-DqhbK276.js} +1 -1
  70. package/packages/ui/dist/assets/{recycle-horizontal-BJg7qNO9.js → recycle-horizontal-BpGM56Qz.js} +1 -1
  71. package/packages/ui/dist/assets/{refresh-Dexg1q9p.js → refresh-BPzZlhTP.js} +1 -1
  72. package/packages/ui/dist/assets/{reown-logo-D8KP4d24.js → reown-logo-OCkI0xzo.js} +1 -1
  73. package/packages/ui/dist/assets/{search-CBfhIhB0.js → search-B1JEJvwq.js} +1 -1
  74. package/packages/ui/dist/assets/{secp256k1-BOKPNuRR.js → secp256k1-BqUeV9Cb.js} +1 -1
  75. package/packages/ui/dist/assets/{send-DpJV-P0b.js → send-JNsDlNoq.js} +1 -1
  76. package/packages/ui/dist/assets/{swapHorizontal-DC-Elc2j.js → swapHorizontal-C3Z1FImK.js} +1 -1
  77. package/packages/ui/dist/assets/{swapHorizontalBold-Unn8xI55.js → swapHorizontalBold-Cmdy2iAn.js} +1 -1
  78. package/packages/ui/dist/assets/{swapHorizontalMedium-B58RR8wP.js → swapHorizontalMedium-DFX57Nn9.js} +1 -1
  79. package/packages/ui/dist/assets/{swapHorizontalRoundedBold-UTrbE6zM.js → swapHorizontalRoundedBold-baB389c8.js} +1 -1
  80. package/packages/ui/dist/assets/{swapVertical-CLBtBVG1.js → swapVertical-DmAYGfK1.js} +1 -1
  81. package/packages/ui/dist/assets/{telegram-C_tvCVU8.js → telegram-BHbYE-nI.js} +1 -1
  82. package/packages/ui/dist/assets/{three-dots-BIn_IFa0.js → three-dots-BwRWl6qJ.js} +1 -1
  83. package/packages/ui/dist/assets/{twitch-BqiEXRul.js → twitch-Drx0q6B6.js} +1 -1
  84. package/packages/ui/dist/assets/{twitterIcon-CquA5TCG.js → twitterIcon-AuJ2KQ6p.js} +1 -1
  85. package/packages/ui/dist/assets/{verify-DOUX5_SE.js → verify-Dkrd3q7o.js} +1 -1
  86. package/packages/ui/dist/assets/{verify-filled-nMk53S_a.js → verify-filled-B9e3-nz-.js} +1 -1
  87. package/packages/ui/dist/assets/{w3m-modal-B-JVYtbP.js → w3m-modal-DtkEjQA7.js} +1 -1
  88. package/packages/ui/dist/assets/{wallet-BjbzMOXA.js → wallet-CqYzSiBd.js} +1 -1
  89. package/packages/ui/dist/assets/{wallet-placeholder-DPidGoJt.js → wallet-placeholder-B05kTN_K.js} +1 -1
  90. package/packages/ui/dist/assets/{walletconnect-Dw14KwDj.js → walletconnect-BwoPXLaS.js} +1 -1
  91. package/packages/ui/dist/assets/{warning-circle-Ewxxj9bx.js → warning-circle-DK9Ai8rT.js} +1 -1
  92. package/packages/ui/dist/assets/{x-B5Li_yME.js → x-BNdh5DVW.js} +1 -1
  93. package/packages/ui/dist/index.html +1 -1
package/README.md CHANGED
@@ -4,12 +4,21 @@
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/%40sail.money%2Fsailor)](https://www.npmjs.com/package/@sail.money/sailor)
6
6
  [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
7
- [![Tests](https://github.com/sail-money/Sailor/actions/workflows/tests.yml/badge.svg)](https://github.com/sail-money/Sailor/actions/workflows/tests.yml)
8
- [![node >= 18](https://img.shields.io/badge/node-%3E%3D18-brightgreen)](https://nodejs.org)
9
7
 
10
8
  ## What you can build
11
9
 
12
- An autonomous or semi-autonomous agent that manages capital inside a **self-custodial Safe**, bounded by **onchain permissions it cannot exceed**. The owner holds the Safe and signs a mandate — a set of permission contracts encoding exactly what the agent may do (which venues, which tokens, what size). The agent executes within those bounds; anything outside them is rejected by the SailKernel before it touches funds, and the owner can revoke the agent's dispatch rights instantly without moving assets. The trust model — what the contracts enforce versus what stays off-chain — is specified in the [Sail Protocol repo](https://github.com/sail-money/protocol) and the [whitepaper](https://github.com/sail-money/protocol/blob/main/docs/whitepaper/Sail_Protocol_Whitepaper.pdf).
10
+ Autonomous AI agents that transact digital assets, for any use case:
11
+
12
+ - **Trading** — spot, perps, DCA, rebalancing
13
+ - **Yield** — lending, borrowing, liquidity providing, looping
14
+ - **Prediction markets** — bounded bets on outcome venues
15
+ - **Payments & treasury** — transfers, scheduled moves, operational flows
16
+
17
+ Every agent operates inside a **mandate** — a set of onchain permissions the protocol enforces on each transaction. The agent can't exceed it; you can revoke it in one transaction.
18
+
19
+ Sailor takes you end to end: deploy your SMA, build your strategy, sign its mandate, and **run the agent on your own machine**.
20
+
21
+ The full trust model — what the contracts enforce versus what stays off-chain — is in the [Sail Protocol repo](https://github.com/sail-money/protocol) and the [whitepaper](https://github.com/sail-money/protocol/blob/main/docs/whitepaper/Sail_Protocol_Whitepaper.pdf).
13
22
 
14
23
  ## What's in the box
15
24
 
@@ -18,9 +27,9 @@ An autonomous or semi-autonomous agent that manages capital inside a **self-cust
18
27
  | **SDK** (`@sail.money/sailor/sdk`) | `SailorClient`, encrypted keyring, EIP-712 signing, dispatch submission, deployment + chain registries, template encoders |
19
28
  | **CLI** (`sailor`) | Everything from `sailor init` to `sailor run`: keys, SMA deployment, mandate lifecycle, agent loop, doctor, session control |
20
29
  | **Dashboard** (`sailor ui`) | Local web UI for onboarding, balances, mandate health, activity, and owner signing |
21
- | **Scaffolded skills** | Step-by-step procedures under `.agents/skills/` that your AI coding assistant follows to set up and operate the agent |
30
+ | **Skills** | Seventeen curated procedures under `.agents/skills/` that equip the agent across the whole workflow project setup and diagnostics, mandate authoring and template configuration, market data and transactions, unattended automation |
22
31
 
23
- **About the scaffold.** `sailor init` scaffolds your project from `templates/default/`, which ships two things together: the `.agents/skills` your assistant follows, and the **worked example permissions** (`templates/default/examples/` → your project's `examples/`) those skills teach from — protocol-specific bounding patterns (Uniswap, Aave, GMX, ERC-4626, and more) plus an `IPermission` authoring workspace. The examples are shipped teaching material inside every scaffold, not repo furniture.
32
+ **About the scaffold.** `sailor init` scaffolds your project from `templates/default/`, and the agent arrives already equipped: the skills cover setting up (onboarding, project state, the local servers), defining the mandate (one skill per shared template, plus the full custom-permission lifecycle), executing strategy (token resolution and liquidity mapping, live swap quotes, the dispatch model), and running unattended (automation options, notifications, custom dashboards). Alongside the skills ship the **worked example permissions** (`templates/default/examples/` → your project's `examples/`) the mandate skills teach from — protocol-specific bounding patterns (Uniswap, Aave, GMX, ERC-4626, and more) plus an `IPermission` authoring workspace. Shipped teaching material in every scaffold, not repo furniture.
24
33
 
25
34
  ## Installation
26
35
 
@@ -50,7 +59,7 @@ Project files live on your host via the volume mount; prefix `sailor` commands w
50
59
 
51
60
  ## Quickstart
52
61
 
53
- The recommended path is assistant-driven: open the scaffolded folder in Claude Code, Cursor, Codex, or any AI coding assistant and say **"start"** — the scaffold's `AGENTS.md` and skills walk the assistant through everything below. The direct-CLI version of the same journey:
62
+ The recommended path is agent-driven: open the scaffolded folder in Claude Code, Cursor, Codex, or any AI coding agent and say **"start"** — the scaffold's `AGENTS.md` and skills walk the agent through everything below. The direct-CLI version of the same journey:
54
63
 
55
64
  ```bash
56
65
  npx sailor init my-agent && cd my-agent && npm install
@@ -84,9 +93,9 @@ Each probed call prints a verdict — `PASS`, `FAIL`, or `REVERT` — which is t
84
93
 
85
94
  Longer walkthrough, including revocation: [docs/getting-started.md](./docs/getting-started.md).
86
95
 
87
- ## How the assistant is guided (skills)
96
+ ## How the agent is guided (skills)
88
97
 
89
- The scaffold follows the open [Agent Skills](https://agentskills.io) standard: a slim, always-loaded `AGENTS.md` carries the project map and hard invariants, while detailed procedures live in on-demand skills under `.agents/skills/` — onboarding, transactions, mandate authoring, shared-template configuration (one skill per template), automation, and more. Shared templates are registered and configured *through* the skills because the safe order of operations (register → configure → simulate → verify) is encoded there once, instead of re-derived by every assistant. Skills are plain markdown; assistants that don't scan skills follow the routing table in `AGENTS.md` to the same files. See [docs/templates-and-skills.md](./docs/templates-and-skills.md).
98
+ The scaffold follows the open [Agent Skills](https://agentskills.io) standard: a slim, always-loaded `AGENTS.md` carries the project map and hard invariants, while detailed procedures live in on-demand skills under `.agents/skills/` — onboarding, transactions, mandate authoring, shared-template configuration (one skill per template), automation, and more. Shared templates are registered and configured *through* the skills because the safe order of operations (register → configure → simulate → verify) is encoded there once, instead of re-derived by every agent. Skills are plain markdown; agents that don't scan skills follow the routing table in `AGENTS.md` to the same files. See [docs/templates-and-skills.md](./docs/templates-and-skills.md).
90
99
 
91
100
  ## Documentation
92
101
 
@@ -113,7 +122,7 @@ Vulnerability reports: see [SECURITY.md](./SECURITY.md) (off-chain toolkit) —
113
122
 
114
123
  The SDK bundles verified deployments for **11 chains** — mainnets: Ethereum (1), Base (8453), Arbitrum (42161), Optimism (10), Unichain (130), BSC (56), World Chain (480), HyperEVM (999), MegaETH (4326); testnets: Base Sepolia (84532), Ethereum Sepolia (11155111). Every core contract sits at the same address on every chain via CREATE2 (SailKernel: `0x38b508756c976e876EFF05a29E731A4d348BA6ED`), and the seven shared permission templates (swap, swap-no-oracle, borrow, deposit, withdraw, transfer, approve-and-call-batch) are deployed and registered as `knownTemplates` on all of them. Query it yourself: `sailor chains` or `getSailDeployment(chainId)` from the SDK; the canonical record is the protocol repo's [deployments/addresses.md](https://github.com/sail-money/protocol/blob/main/deployments/addresses.md).
115
124
 
116
- These deployments are under an ongoing external **security review** by [Octane](https://octane.security) and are not finaldo not use them with funds you are not prepared to lose.
125
+ The Sail Protocol trusted core and its seven shared permission templates underwent an AI **security review** by [Octane](https://octane.security); the final analysis identified no critical- or high-severity findings, and the reports live in the protocol repo's [docs/security](https://github.com/sail-money/protocol/tree/main/docs/security). That review covers the protocol contracts — not this toolkit. A security review is not a guarantee of correctness; size your exposure accordingly.
117
126
 
118
127
  ## Contributing
119
128
 
package/package.json CHANGED
@@ -1,11 +1,7 @@
1
1
  {
2
2
  "name": "@dev.sail.money/sailor",
3
- "version": "1.3.0-238",
3
+ "version": "1.3.0-239",
4
4
  "description": "Operator toolkit for Sail Protocol",
5
- "repository": {
6
- "type": "git",
7
- "url": "git+https://github.com/sail-money/Sailor.git"
8
- },
9
5
  "bin": {
10
6
  "sailor": "packages/cli/dist/index.cjs"
11
7
  },
@@ -1,7 +1,7 @@
1
1
  # sailor
2
2
 
3
3
  Start a new agent project with `npx @sail.money/sailor init <name>` from inside your
4
- AI coding assistant, or install globally for direct command use and CI/CD.
4
+ AI coding agent, or install globally for direct command use and CI/CD.
5
5
 
6
6
  CLI operator toolkit for Sail Protocol. Run `sailor --help` to see all commands.
7
7
 
@@ -41427,7 +41427,7 @@ function printWelcome(dest, name, inPlace, _hasRpc, freshInit = false) {
41427
41427
  console.log("Next:");
41428
41428
  console.log(" sailor ui start");
41429
41429
  console.log(" Connect your wallet and deploy your SMA in the browser.\n");
41430
- console.log('Or open this folder in your AI coding assistant and say: "continue"');
41430
+ console.log('Or open this folder in your AI coding agent and say: "continue"');
41431
41431
  return;
41432
41432
  }
41433
41433
  if (state.kind === "C") {
@@ -41444,7 +41444,7 @@ function printWelcome(dest, name, inPlace, _hasRpc, freshInit = false) {
41444
41444
  console.log(" forge build");
41445
41445
  console.log(` sailor mandate deploy --contract <Name> --attach --sma ${state.sma}
41446
41446
  `);
41447
- console.log('Or open this folder in your AI coding assistant and say: "continue"');
41447
+ console.log('Or open this folder in your AI coding agent and say: "continue"');
41448
41448
  return;
41449
41449
  }
41450
41450
  if (state.kind === "D") {
@@ -41453,7 +41453,7 @@ function printWelcome(dest, name, inPlace, _hasRpc, freshInit = false) {
41453
41453
  console.log(`SMA: ${state.sma} on ${state.chain}`);
41454
41454
  console.log(`Permissions: ${state.permissionCount} registered
41455
41455
  `);
41456
- console.log('Open this folder in your AI coding assistant and say: "continue"');
41456
+ console.log('Open this folder in your AI coding agent and say: "continue"');
41457
41457
  return;
41458
41458
  }
41459
41459
  if (!inPlace) console.log(`
@@ -5,7 +5,7 @@
5
5
  * Do not edit manually — run `pnpm build` to regenerate.
6
6
  *
7
7
  * Spec version : 1.2.1
8
- * Generated at : 2026-07-03T09:52:59.852Z
8
+ * Generated at : 2026-07-03T10:19:15.989Z
9
9
  */
10
10
  export declare const SAIL_INTELLIGENCE_BASE_URL = "https://api.sail.money";
11
11
  export declare const SAIL_INTELLIGENCE_DOCS_URL = "https://api.sail.money/docs";
@@ -5,7 +5,7 @@
5
5
  * Do not edit manually — run `pnpm build` to regenerate.
6
6
  *
7
7
  * Spec version : 1.2.1
8
- * Generated at : 2026-07-03T09:52:59.852Z
8
+ * Generated at : 2026-07-03T10:19:15.989Z
9
9
  */
10
10
  export const SAIL_INTELLIGENCE_BASE_URL = "https://api.sail.money";
11
11
  export const SAIL_INTELLIGENCE_DOCS_URL = "https://api.sail.money/docs";
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const e=o`<svg
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const e=o`<svg
2
2
  width="14"
3
3
  height="14"
4
4
  viewBox="0 0 14 14"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const r=o`<svg fill="none" viewBox="0 0 24 24">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const r=o`<svg fill="none" viewBox="0 0 24 24">
2
2
  <path
3
3
  style="fill: var(--wui-color-accent-100);"
4
4
  d="M10.2 6.6a3.6 3.6 0 1 1-7.2 0 3.6 3.6 0 0 1 7.2 0ZM21 6.6a3.6 3.6 0 1 1-7.2 0 3.6 3.6 0 0 1 7.2 0ZM10.2 17.4a3.6 3.6 0 1 1-7.2 0 3.6 3.6 0 0 1 7.2 0ZM21 17.4a3.6 3.6 0 1 1-7.2 0 3.6 3.6 0 0 1 7.2 0Z"
@@ -1,4 +1,4 @@
1
- import{F as t}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const e=t`
1
+ import{F as t}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const e=t`
2
2
  <svg width="36" height="36">
3
3
  <path
4
4
  d="M28.724 0H7.271A7.269 7.269 0 0 0 0 7.272v21.46A7.268 7.268 0 0 0 7.271 36H28.73A7.272 7.272 0 0 0 36 28.728V7.272A7.275 7.275 0 0 0 28.724 0Z"
@@ -1,4 +1,4 @@
1
- import{F as i}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const c=i`<svg fill="none" viewBox="0 0 40 40">
1
+ import{F as i}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const c=i`<svg fill="none" viewBox="0 0 40 40">
2
2
  <g clip-path="url(#a)">
3
3
  <g clip-path="url(#b)">
4
4
  <circle cx="20" cy="19.89" r="20" fill="#000" />
@@ -1,4 +1,4 @@
1
- import{F as C}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const i=C`<svg
1
+ import{F as C}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const i=C`<svg
2
2
  fill="none"
3
3
  viewBox="0 0 21 20"
4
4
  >
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 14 15">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 14 15">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 15">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 15">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 15">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 15">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const a=o`<svg fill="none" viewBox="0 0 14 15">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const a=o`<svg fill="none" viewBox="0 0 14 15">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const l=o`<svg
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const l=o`<svg
2
2
  xmlns="http://www.w3.org/2000/svg"
3
3
  width="12"
4
4
  height="13"
@@ -1,4 +1,4 @@
1
- import{u as N,s as G,y as q,v as O,p as c,g as M,c as z,O as ee,l as k,m as te,R as U,h as Me,e as K,f as j,o as ft,j as Cn,W as pt,C as Zt,d as vi,T as ei,n as Xe,M as on,k as rn,F as Ne,A as yi,q as $n}from"./core-BLOM5s8O.js";import{n as u,c as B,o as E,r as _,U as he,e as Rn,f as _n,a as In}from"./index-3YqzzyrK.js";import{P as En}from"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const Wn=N`
1
+ import{u as N,s as G,y as q,v as O,p as c,g as M,c as z,O as ee,l as k,m as te,R as U,h as Me,e as K,f as j,o as ft,j as Cn,W as pt,C as Zt,d as vi,T as ei,n as Xe,M as on,k as rn,F as Ne,A as yi,q as $n}from"./core-CiAm42Mq.js";import{n as u,c as B,o as E,r as _,U as he,e as Rn,f as _n,a as In}from"./index-DeoQO45V.js";import{P as En}from"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const Wn=N`
2
2
  :host {
3
3
  position: relative;
4
4
  background-color: var(--wui-color-gray-glass-002);
@@ -1,4 +1,4 @@
1
- import{F as l}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const c=l`<svg fill="none" viewBox="0 0 20 20">
1
+ import{F as l}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const c=l`<svg fill="none" viewBox="0 0 20 20">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as C}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const i=C`<svg
1
+ import{F as C}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const i=C`<svg
2
2
  xmlns="http://www.w3.org/2000/svg"
3
3
  width="12"
4
4
  height="13"
@@ -1 +1 @@
1
- import{B as u,R as p,az as k,t as x,a5 as M,aa as S,a9 as $,k as A,n as T,w as C,J as m,a3 as E,H as b,a7 as G}from"./index-D8zwDy7d.js";class D extends u{constructor({callbackSelector:a,cause:t,data:f,extraData:e,sender:l,urls:i}){var o;super(t.shortMessage||"An error occurred while fetching for an offchain result.",{cause:t,metaMessages:[...t.metaMessages||[],(o=t.metaMessages)!=null&&o.length?"":[],"Offchain Gateway Call:",i&&[" Gateway URL(s):",...i.map(n=>` ${p(n)}`)],` Sender: ${l}`,` Data: ${f}`,` Callback selector: ${a}`,` Extra data: ${e}`].flat(),name:"OffchainLookupError"})}}class B extends u{constructor({result:a,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${p(t)}`,`Response: ${k(a)}`],name:"OffchainLookupResponseMalformedError"})}}class P extends u{constructor({sender:a,to:t}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${a}`],name:"OffchainLookupSenderMismatchError"})}}const v="0x556f1830",U={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function J(c,{blockNumber:a,blockTag:t,data:f,requestOptions:e,to:l}){var s;const{args:i}=x({data:f,abi:[U]}),[o,n,d,w,y]=i,{ccipRead:h}=c,r=h&&typeof(h==null?void 0:h.request)=="function"?h.request:j;try{if(!M(l,o))throw new P({sender:o,to:l});const g=n.includes(S)?await $({data:d,ccipRequest:R=>r({...R,requestOptions:e})}):await r({data:d,requestOptions:e,sender:o,urls:n}),{data:L}=await A(c,{blockNumber:a,blockTag:t,data:T([w,C([{type:"bytes"},{type:"bytes"}],[g,y])]),requestOptions:e,to:l});return L}catch(g){throw(s=e==null?void 0:e.signal)!=null&&s.aborted?m(e.signal):E(g)?g:new D({callbackSelector:w,cause:g,data:f,extraData:y,sender:o,urls:n})}}async function j({data:c,requestOptions:a,sender:t,urls:f}){var l,i,o;let e=new Error("An unknown error occurred.");for(let n=0;n<f.length;n++){if((l=a==null?void 0:a.signal)!=null&&l.aborted)throw m(a.signal);const d=f[n],w=d.includes("{data}")?"GET":"POST",y=w==="POST"?{data:c,sender:t}:void 0,h=w==="POST"?{"Content-Type":"application/json"}:{};try{const r=await fetch(d.replace("{sender}",t.toLowerCase()).replace("{data}",c),{body:JSON.stringify(y),headers:h,method:w,...a!=null&&a.signal?{signal:a.signal}:{}});let s;if((i=r.headers.get("Content-Type"))!=null&&i.startsWith("application/json")?s=(await r.json()).data:s=await r.text(),!r.ok){e=new b({body:y,details:s!=null&&s.error?k(s.error):r.statusText,headers:r.headers,status:r.status,url:d});continue}if(!G(s)){e=new B({result:s,url:d});continue}return s}catch(r){if((o=a==null?void 0:a.signal)!=null&&o.aborted)throw m(a.signal);if(E(r))throw r;e=new b({body:y,details:r.message,url:d})}}throw e}export{j as ccipRequest,J as offchainLookup,U as offchainLookupAbiItem,v as offchainLookupSignature};
1
+ import{B as u,R as p,az as k,t as x,a5 as M,aa as S,a9 as $,k as A,n as T,w as C,J as m,a3 as E,H as b,a7 as G}from"./index-LiKeH8Cd.js";class D extends u{constructor({callbackSelector:a,cause:t,data:f,extraData:e,sender:l,urls:i}){var o;super(t.shortMessage||"An error occurred while fetching for an offchain result.",{cause:t,metaMessages:[...t.metaMessages||[],(o=t.metaMessages)!=null&&o.length?"":[],"Offchain Gateway Call:",i&&[" Gateway URL(s):",...i.map(n=>` ${p(n)}`)],` Sender: ${l}`,` Data: ${f}`,` Callback selector: ${a}`,` Extra data: ${e}`].flat(),name:"OffchainLookupError"})}}class B extends u{constructor({result:a,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${p(t)}`,`Response: ${k(a)}`],name:"OffchainLookupResponseMalformedError"})}}class P extends u{constructor({sender:a,to:t}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${a}`],name:"OffchainLookupSenderMismatchError"})}}const v="0x556f1830",U={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function J(c,{blockNumber:a,blockTag:t,data:f,requestOptions:e,to:l}){var s;const{args:i}=x({data:f,abi:[U]}),[o,n,d,w,y]=i,{ccipRead:h}=c,r=h&&typeof(h==null?void 0:h.request)=="function"?h.request:j;try{if(!M(l,o))throw new P({sender:o,to:l});const g=n.includes(S)?await $({data:d,ccipRequest:R=>r({...R,requestOptions:e})}):await r({data:d,requestOptions:e,sender:o,urls:n}),{data:L}=await A(c,{blockNumber:a,blockTag:t,data:T([w,C([{type:"bytes"},{type:"bytes"}],[g,y])]),requestOptions:e,to:l});return L}catch(g){throw(s=e==null?void 0:e.signal)!=null&&s.aborted?m(e.signal):E(g)?g:new D({callbackSelector:w,cause:g,data:f,extraData:y,sender:o,urls:n})}}async function j({data:c,requestOptions:a,sender:t,urls:f}){var l,i,o;let e=new Error("An unknown error occurred.");for(let n=0;n<f.length;n++){if((l=a==null?void 0:a.signal)!=null&&l.aborted)throw m(a.signal);const d=f[n],w=d.includes("{data}")?"GET":"POST",y=w==="POST"?{data:c,sender:t}:void 0,h=w==="POST"?{"Content-Type":"application/json"}:{};try{const r=await fetch(d.replace("{sender}",t.toLowerCase()).replace("{data}",c),{body:JSON.stringify(y),headers:h,method:w,...a!=null&&a.signal?{signal:a.signal}:{}});let s;if((i=r.headers.get("Content-Type"))!=null&&i.startsWith("application/json")?s=(await r.json()).data:s=await r.text(),!r.ok){e=new b({body:y,details:s!=null&&s.error?k(s.error):r.statusText,headers:r.headers,status:r.status,url:d});continue}if(!G(s)){e=new B({result:s,url:d});continue}return s}catch(r){if((o=a==null?void 0:a.signal)!=null&&o.aborted)throw m(a.signal);if(E(r))throw r;e=new b({body:y,details:r.message,url:d})}}throw e}export{j as ccipRequest,J as offchainLookup,U as offchainLookupAbiItem,v as offchainLookupSignature};
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const l=o`<svg
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const l=o`<svg
2
2
  width="28"
3
3
  height="28"
4
4
  viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 14">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 14 14">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const p=o`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const p=o`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as t}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const e=t`<svg width="36" height="36" fill="none">
1
+ import{F as t}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const e=t`<svg width="36" height="36" fill="none">
2
2
  <path
3
3
  fill="#fff"
4
4
  fill-opacity=".05"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const r=o`<svg width="14" height="14" viewBox="0 0 14 14" fill="none">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const r=o`<svg width="14" height="14" viewBox="0 0 14 14" fill="none">
2
2
  <path
3
3
  fill-rule="evenodd"
4
4
  clip-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as l}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=l`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as l}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=l`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 20 20">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=o`<svg fill="none" viewBox="0 0 20 20">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as o}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 16 16">
1
+ import{F as o}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const i=o`<svg fill="none" viewBox="0 0 16 16">
2
2
  <path
3
3
  fill="currentColor"
4
4
  fill-rule="evenodd"
@@ -1,4 +1,4 @@
1
- import{F as C}from"./core-BLOM5s8O.js";import"./index-D8zwDy7d.js";import"./index.es-Hqwz_Ukd.js";import"./events-DQ172AOg.js";const t=C`<svg
1
+ import{F as C}from"./core-CiAm42Mq.js";import"./index-LiKeH8Cd.js";import"./index.es-dfpEui-9.js";import"./events-DQ172AOg.js";const t=C`<svg
2
2
  xmlns="http://www.w3.org/2000/svg"
3
3
  width="16"
4
4
  height="16"