@dev.sail.money/sailor 1.1.0-59 → 1.1.0-61
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/package.json +1 -1
- package/packages/cli/dist/index.cjs +61 -27
- package/packages/cli/dist/server.cjs +20 -3
- package/packages/sdk/dist/intelligence.d.ts +1 -1
- package/packages/sdk/dist/intelligence.js +1 -1
- package/packages/ui/dist/assets/{add-BkkqrYWB.js → add-C-dsfxDo.js} +1 -1
- package/packages/ui/dist/assets/{all-wallets-DkOBJCgx.js → all-wallets-CnIqhv43.js} +1 -1
- package/packages/ui/dist/assets/{app-store-COmofKYQ.js → app-store-ChQtg1vX.js} +1 -1
- package/packages/ui/dist/assets/{apple-C74TaioJ.js → apple-BjgF3Q4D.js} +1 -1
- package/packages/ui/dist/assets/{arrow-bottom-CrMrxCkH.js → arrow-bottom-B6a-dLkm.js} +1 -1
- package/packages/ui/dist/assets/{arrow-bottom-circle-RBTLtzcR.js → arrow-bottom-circle-iFIsQg-8.js} +1 -1
- package/packages/ui/dist/assets/{arrow-left-C4b71cmS.js → arrow-left-CZGr-Z6-.js} +1 -1
- package/packages/ui/dist/assets/{arrow-right-D5clzuwD.js → arrow-right-BHkO-l6J.js} +1 -1
- package/packages/ui/dist/assets/{arrow-top-C2TbLIrV.js → arrow-top-CSAHnpAG.js} +1 -1
- package/packages/ui/dist/assets/{bank-CdrDcIo1.js → bank-CBmII1x8.js} +1 -1
- package/packages/ui/dist/assets/{basic-DC_nce86.js → basic-z0IGeGoe.js} +1 -1
- package/packages/ui/dist/assets/{browser-Bds2ajCA.js → browser-C63FxwgG.js} +1 -1
- package/packages/ui/dist/assets/{card-BBbe5M7a.js → card-B6aMu64l.js} +1 -1
- package/packages/ui/dist/assets/{ccip-Cd-Us0eQ.js → ccip-DpFAdEcw.js} +1 -1
- package/packages/ui/dist/assets/{checkmark-Bu8wk6S3.js → checkmark-CXN3abIo.js} +1 -1
- package/packages/ui/dist/assets/{checkmark-bold-D_We1fZp.js → checkmark-bold-CnE9PClq.js} +1 -1
- package/packages/ui/dist/assets/{chevron-bottom-0NdO8szM.js → chevron-bottom-BycxXH48.js} +1 -1
- package/packages/ui/dist/assets/{chevron-left-ByFZqD-8.js → chevron-left-RCx9bqyC.js} +1 -1
- package/packages/ui/dist/assets/{chevron-right-BnIkNb00.js → chevron-right-B1DFs8_e.js} +1 -1
- package/packages/ui/dist/assets/{chevron-top-DU8ubJaU.js → chevron-top-Dqq8VaiR.js} +1 -1
- package/packages/ui/dist/assets/{chrome-store-D4y5tSBu.js → chrome-store-N1IilO-E.js} +1 -1
- package/packages/ui/dist/assets/{clock-CftWr0z5.js → clock-8pQLsWRy.js} +1 -1
- package/packages/ui/dist/assets/{close-I0yiZodl.js → close-LHyV89kq.js} +1 -1
- package/packages/ui/dist/assets/{coinPlaceholder-D0OAREKG.js → coinPlaceholder-5bT2NQld.js} +1 -1
- package/packages/ui/dist/assets/{compass-dvpQeqSx.js → compass-CLhzgv54.js} +1 -1
- package/packages/ui/dist/assets/{copy-BugJ4WFr.js → copy-DJ6auzXs.js} +1 -1
- package/packages/ui/dist/assets/{core-BzIB7-vh.js → core-Cp3xGXA6.js} +3 -3
- package/packages/ui/dist/assets/cursor-CIbOGu5K.js +3 -0
- package/packages/ui/dist/assets/{cursor-transparent-BPb-3Hyk.js → cursor-transparent-CohavsEh.js} +1 -1
- package/packages/ui/dist/assets/{desktop-CeDRdIIG.js → desktop-n28VeLf1.js} +1 -1
- package/packages/ui/dist/assets/{disconnect-IwpWvrKA.js → disconnect-BytBq3zd.js} +1 -1
- package/packages/ui/dist/assets/{discord-XhqhcqiG.js → discord-DHkapJMS.js} +1 -1
- package/packages/ui/dist/assets/{etherscan-tWzMxtji.js → etherscan-C43zbGve.js} +1 -1
- package/packages/ui/dist/assets/{events-jqbAbVlK.js → events-BRxyYKwO.js} +1 -1
- package/packages/ui/dist/assets/{exclamation-triangle-DEvePQkx.js → exclamation-triangle-lpLpOiUn.js} +1 -1
- package/packages/ui/dist/assets/{extension-Dode6JDE.js → extension-BAcEl3l1.js} +1 -1
- package/packages/ui/dist/assets/{external-link-DyarUzCV.js → external-link-Bi2lQaCr.js} +1 -1
- package/packages/ui/dist/assets/{facebook-DqKLKTw4.js → facebook-CYLNHpDr.js} +1 -1
- package/packages/ui/dist/assets/{fallback-CLs3NgaE.js → fallback-DAe2x1wz.js} +1 -1
- package/packages/ui/dist/assets/{farcaster-BVbjfPad.js → farcaster-CpbuoD-A.js} +1 -1
- package/packages/ui/dist/assets/{filters-BqCfeyWr.js → filters-2SeCLkqg.js} +1 -1
- package/packages/ui/dist/assets/{github-8QpZFu7F.js → github-CXGuiWnN.js} +1 -1
- package/packages/ui/dist/assets/{google-CVk0kyBN.js → google-u86NQc9o.js} +1 -1
- package/packages/ui/dist/assets/{help-circle-fKcWeR5p.js → help-circle-VXfl2gxH.js} +1 -1
- package/packages/ui/dist/assets/{id-Ci8t7CBc.js → id--tXCaijO.js} +1 -1
- package/packages/ui/dist/assets/{image-BlGujsvY.js → image-fGZdyWSE.js} +1 -1
- package/packages/ui/dist/assets/{index-iL8gxnJZ.js → index-B7HoHWiW.js} +1 -1
- package/packages/ui/dist/assets/{index-DsOOZoQ6.js → index-BbxcsrfK.js} +1 -1
- package/packages/ui/dist/assets/index-CBGxOWky.css +1 -0
- package/packages/ui/dist/assets/{index-DFLVuZGD.js → index-CQAVTqzM.js} +1 -1
- package/packages/ui/dist/assets/{index-CHdC1RP1.js → index-C_eqUkeY.js} +3 -3
- package/packages/ui/dist/assets/{index-26mk1_O0.js → index-PxeN2I9s.js} +1 -1
- package/packages/ui/dist/assets/{index-H2WA2taB.js → index-vPyTb3MD.js} +79 -78
- package/packages/ui/dist/assets/{index.es-Bhx_uNt5.js → index.es-r4dwiXlA.js} +4 -4
- package/packages/ui/dist/assets/{info-BDqeqntk.js → info-C_QVyvKM.js} +1 -1
- package/packages/ui/dist/assets/{info-circle-CrFxScTA.js → info-circle-BQ6SUcsG.js} +1 -1
- package/packages/ui/dist/assets/{lightbulb-BxSygEig.js → lightbulb-DiDGGbfa.js} +1 -1
- package/packages/ui/dist/assets/{mail-4GDY-ze2.js → mail-A6VjvryF.js} +1 -1
- package/packages/ui/dist/assets/{metamask-sdk-DPCbwaIS.js → metamask-sdk-wtBcTydn.js} +1 -1
- package/packages/ui/dist/assets/{mobile-BUUviKTv.js → mobile-pGU4EH2u.js} +1 -1
- package/packages/ui/dist/assets/{more-DhnT17wk.js → more-DcCpyKKY.js} +1 -1
- package/packages/ui/dist/assets/{network-placeholder-TsxqT2gD.js → network-placeholder-CuG8kjRQ.js} +1 -1
- package/packages/ui/dist/assets/{nftPlaceholder-jgTe8P1g.js → nftPlaceholder-CR04xCSJ.js} +1 -1
- package/packages/ui/dist/assets/{off-DcHkZT5o.js → off-B0iV5ojg.js} +1 -1
- package/packages/ui/dist/assets/{parseSignature-B8Lpw1L2.js → parseSignature-5Cmk56ft.js} +1 -1
- package/packages/ui/dist/assets/{play-store-CJstT7y7.js → play-store-DihUKb7H.js} +1 -1
- package/packages/ui/dist/assets/{plus-MYc63_GS.js → plus-CsIbMkij.js} +1 -1
- package/packages/ui/dist/assets/{qr-code-d-0KT0T0.js → qr-code-Dqbt_uUa.js} +1 -1
- package/packages/ui/dist/assets/{recycle-horizontal-DTip0Vh-.js → recycle-horizontal-DAgZ0s3B.js} +1 -1
- package/packages/ui/dist/assets/{refresh-Bvbjnc5_.js → refresh-BckmchSk.js} +1 -1
- package/packages/ui/dist/assets/{reown-logo-CyEiIKwt.js → reown-logo-Ck_DLLhR.js} +1 -1
- package/packages/ui/dist/assets/{search-CvaM9X5d.js → search-DvTEXRW7.js} +1 -1
- package/packages/ui/dist/assets/{secp256k1-DcETRhg-.js → secp256k1-C98H2goB.js} +1 -1
- package/packages/ui/dist/assets/{send-DeX0yj_h.js → send-BIKg5OD7.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontal-BhIMtg47.js → swapHorizontal-7TJPm-09.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalBold-Bcff8r01.js → swapHorizontalBold-OPBCTkZ8.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalMedium-D6exybM7.js → swapHorizontalMedium-BiR-wXTk.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalRoundedBold-E7S191SI.js → swapHorizontalRoundedBold-CjZW0yXV.js} +1 -1
- package/packages/ui/dist/assets/{swapVertical-DnaSU8Vj.js → swapVertical-BvJSfTbs.js} +1 -1
- package/packages/ui/dist/assets/{telegram-BhfatdcJ.js → telegram-BIvNqVBz.js} +1 -1
- package/packages/ui/dist/assets/{three-dots-BTpm_nUE.js → three-dots-ohueHxZy.js} +1 -1
- package/packages/ui/dist/assets/{twitch-BDRYcsTl.js → twitch-BqrnP162.js} +1 -1
- package/packages/ui/dist/assets/{twitterIcon-3FzeZC95.js → twitterIcon-Dw0kNY9c.js} +1 -1
- package/packages/ui/dist/assets/{verify-CUzf_uJD.js → verify-DRBQ8AnL.js} +1 -1
- package/packages/ui/dist/assets/{verify-filled-BbsqfxaJ.js → verify-filled-9og8tsf9.js} +1 -1
- package/packages/ui/dist/assets/{w3m-modal-BqaDz6_Y.js → w3m-modal-rIMTDhot.js} +1 -1
- package/packages/ui/dist/assets/{wallet-DP0T4ID6.js → wallet-X2eNWOim.js} +1 -1
- package/packages/ui/dist/assets/{wallet-placeholder-D6lN9LWp.js → wallet-placeholder-BrLMYsyb.js} +1 -1
- package/packages/ui/dist/assets/{walletconnect-TbWRXzdf.js → walletconnect-C4JQX1g7.js} +1 -1
- package/packages/ui/dist/assets/{warning-circle-Cu3F_XOK.js → warning-circle-obEvu57J.js} +1 -1
- package/packages/ui/dist/assets/{x-BmIFFXMW.js → x-BkGddY7Q.js} +1 -1
- package/packages/ui/dist/index.html +2 -2
- package/packages/ui/dist/assets/cursor-T9CAl8CQ.js +0 -3
- package/packages/ui/dist/assets/index-ZMTNJl7U.css +0 -1
package/package.json
CHANGED
|
@@ -38333,10 +38333,15 @@ function readJsonFile(filePath) {
|
|
|
38333
38333
|
return null;
|
|
38334
38334
|
}
|
|
38335
38335
|
}
|
|
38336
|
-
function writeJsonFile(filePath, data) {
|
|
38336
|
+
function writeJsonFile(filePath, data, mode) {
|
|
38337
38337
|
import_node_fs2.default.mkdirSync(import_node_path.default.dirname(filePath), { recursive: true });
|
|
38338
|
-
import_node_fs2.default.writeFileSync(
|
|
38339
|
-
|
|
38338
|
+
import_node_fs2.default.writeFileSync(
|
|
38339
|
+
filePath,
|
|
38340
|
+
`${JSON.stringify(data, null, 2)}
|
|
38341
|
+
`,
|
|
38342
|
+
mode !== void 0 ? { mode } : void 0
|
|
38343
|
+
);
|
|
38344
|
+
if (mode !== void 0) import_node_fs2.default.chmodSync(filePath, mode);
|
|
38340
38345
|
}
|
|
38341
38346
|
function fileExists(filePath) {
|
|
38342
38347
|
return import_node_fs2.default.existsSync(filePath);
|
|
@@ -38377,6 +38382,18 @@ function parseEnvFile(filePath) {
|
|
|
38377
38382
|
}
|
|
38378
38383
|
return out;
|
|
38379
38384
|
}
|
|
38385
|
+
function persistPassphrase(envPath, passphrase) {
|
|
38386
|
+
let content = "";
|
|
38387
|
+
if (import_node_fs2.default.existsSync(envPath)) {
|
|
38388
|
+
content = import_node_fs2.default.readFileSync(envPath, "utf-8").replace(/^SAIL_PASSPHRASE=.*\n?/m, "");
|
|
38389
|
+
}
|
|
38390
|
+
const trimmed = content.trimEnd();
|
|
38391
|
+
content = `${trimmed}${trimmed.length > 0 ? "\n" : ""}SAIL_PASSPHRASE=${passphrase}
|
|
38392
|
+
`;
|
|
38393
|
+
import_node_fs2.default.mkdirSync(import_node_path.default.dirname(envPath), { recursive: true });
|
|
38394
|
+
import_node_fs2.default.writeFileSync(envPath, content, { mode: 384 });
|
|
38395
|
+
import_node_fs2.default.chmodSync(envPath, 384);
|
|
38396
|
+
}
|
|
38380
38397
|
function checksum4(address) {
|
|
38381
38398
|
return getAddress(address);
|
|
38382
38399
|
}
|
|
@@ -39701,7 +39718,18 @@ async function loadManagerSigner(safe) {
|
|
|
39701
39718
|
'No agent wallet found.\nRun "sailor keys generate" and choose "agent wallet".'
|
|
39702
39719
|
);
|
|
39703
39720
|
}
|
|
39704
|
-
|
|
39721
|
+
try {
|
|
39722
|
+
return await LocalKeyring.fromKeystore(keystore, passphrase);
|
|
39723
|
+
} catch {
|
|
39724
|
+
throw new Error(
|
|
39725
|
+
"SAIL_PASSPHRASE does not match this keystore.\nCheck the value in .sail/.env.local (or the SAIL_PASSPHRASE CI secret) \u2014 it must be the passphrase the agent wallet was encrypted with."
|
|
39726
|
+
);
|
|
39727
|
+
}
|
|
39728
|
+
}
|
|
39729
|
+
if (process.stdin.isTTY !== true && keyExists("manager", safe)) {
|
|
39730
|
+
throw new Error(
|
|
39731
|
+
'Agent keystore found but SAIL_PASSPHRASE is not set.\nIf you created the key in the dashboard, add SAIL_PASSPHRASE to .sail/.env.local, or run "sailor keys generate".\nFor CI, set the SAIL_PASSPHRASE GitHub Actions secret.'
|
|
39732
|
+
);
|
|
39705
39733
|
}
|
|
39706
39734
|
return loadKeyring("manager", safe);
|
|
39707
39735
|
}
|
|
@@ -40174,6 +40202,9 @@ async function doctor(options = {}) {
|
|
|
40174
40202
|
} catch {
|
|
40175
40203
|
}
|
|
40176
40204
|
const chainIdMatches = chainIdOnChain === null ? null : chainIdOnChain === chainId;
|
|
40205
|
+
const managerKeystorePresent = keyExists("manager", stored?.safe);
|
|
40206
|
+
const passphraseSet = Boolean(process.env.SAIL_PASSPHRASE);
|
|
40207
|
+
const passphraseGap = managerKeystorePresent && !passphraseSet;
|
|
40177
40208
|
let ownerBal = null;
|
|
40178
40209
|
let managerBal = null;
|
|
40179
40210
|
try {
|
|
@@ -40195,6 +40226,7 @@ async function doctor(options = {}) {
|
|
|
40195
40226
|
owner: ownerAddr ? { address: ownerAddr, ...ownerBal ?? {} } : null,
|
|
40196
40227
|
manager: managerAddr ? { address: managerAddr, ...managerBal ?? {} } : null
|
|
40197
40228
|
},
|
|
40229
|
+
passphrase: { keystorePresent: managerKeystorePresent, envSet: passphraseSet },
|
|
40198
40230
|
account: safe,
|
|
40199
40231
|
saltNonce: stored?.saltNonce ?? null,
|
|
40200
40232
|
permissions,
|
|
@@ -40256,6 +40288,11 @@ async function doctor(options = {}) {
|
|
|
40256
40288
|
' \u2192 The manager (agent) pays gas. Fund it before "sailor run" or dispatches fail.'
|
|
40257
40289
|
);
|
|
40258
40290
|
}
|
|
40291
|
+
if (passphraseGap) {
|
|
40292
|
+
console.log(
|
|
40293
|
+
' \u26A0 SAIL_PASSPHRASE is not set, but an agent keystore exists.\n "sailor run" will prompt interactively; CI and the scheduled cron will fail to unlock it.\n Add SAIL_PASSPHRASE to .sail/.env.local (the dashboard does this automatically when it creates the key).'
|
|
40294
|
+
);
|
|
40295
|
+
}
|
|
40259
40296
|
if (!safe) {
|
|
40260
40297
|
console.log('\nAccount: none found. Run "sailor onboard --new-sma", or pass --account <addr>.');
|
|
40261
40298
|
console.log("Skipping permission checks.");
|
|
@@ -40564,14 +40601,19 @@ before changing strategy code or running commands that touch funds.
|
|
|
40564
40601
|
function writeIfMissing2(file, content) {
|
|
40565
40602
|
if (!import_node_fs8.default.existsSync(file)) import_node_fs8.default.writeFileSync(file, content, "utf-8");
|
|
40566
40603
|
}
|
|
40567
|
-
|
|
40604
|
+
var CANONICAL_PKG = "@sail.money/sailor";
|
|
40605
|
+
var DEV_PKG = "@dev.sail.money/sailor";
|
|
40606
|
+
function cliPackageInfo() {
|
|
40568
40607
|
try {
|
|
40569
40608
|
const pkg = JSON.parse(
|
|
40570
40609
|
import_node_fs8.default.readFileSync(import_node_path7.default.join(packageRoot(), "package.json"), "utf-8")
|
|
40571
40610
|
);
|
|
40572
|
-
return
|
|
40611
|
+
return {
|
|
40612
|
+
name: pkg.name ?? CANONICAL_PKG,
|
|
40613
|
+
version: pkg.version ?? "0.0.0"
|
|
40614
|
+
};
|
|
40573
40615
|
} catch {
|
|
40574
|
-
return "0.0.0";
|
|
40616
|
+
return { name: CANONICAL_PKG, version: "0.0.0" };
|
|
40575
40617
|
}
|
|
40576
40618
|
}
|
|
40577
40619
|
function scaffoldProjectWorkspace(dest, name, options) {
|
|
@@ -40702,7 +40744,8 @@ run from the repo root.` : ` Available: ${available}`;
|
|
|
40702
40744
|
const pkg = JSON.parse(import_node_fs8.default.readFileSync(pkgPath, "utf-8"));
|
|
40703
40745
|
pkg.name = name;
|
|
40704
40746
|
const devDeps = pkg.devDependencies ?? {};
|
|
40705
|
-
|
|
40747
|
+
const { name: cliName, version: cliVer } = cliPackageInfo();
|
|
40748
|
+
devDeps[CANONICAL_PKG] = cliName === DEV_PKG ? `npm:${DEV_PKG}@^${cliVer}` : `^${cliVer}`;
|
|
40706
40749
|
pkg.devDependencies = devDeps;
|
|
40707
40750
|
import_node_fs8.default.writeFileSync(pkgPath, `${JSON.stringify(pkg, null, 2)}
|
|
40708
40751
|
`);
|
|
@@ -40863,7 +40906,7 @@ async function keysGenerate() {
|
|
|
40863
40906
|
}
|
|
40864
40907
|
const keyring = LocalKeyring.generate();
|
|
40865
40908
|
const keystore = await keyring.exportKeystore(password);
|
|
40866
|
-
writeJsonFile(keyPath(role), keystore);
|
|
40909
|
+
writeJsonFile(keyPath(role), keystore, 384);
|
|
40867
40910
|
const label = role === "manager" ? "Agent wallet" : "Mandate signer";
|
|
40868
40911
|
console.log(`
|
|
40869
40912
|
${label} key saved. Address: ${checksum4(keyring.address)}`);
|
|
@@ -40873,16 +40916,7 @@ ${label} key saved. Address: ${checksum4(keyring.address)}`);
|
|
|
40873
40916
|
"\nSave passphrase to .sail/.env.local for non-interactive use? (required for CI/GitHub Actions)"
|
|
40874
40917
|
);
|
|
40875
40918
|
if (save) {
|
|
40876
|
-
|
|
40877
|
-
let content = "";
|
|
40878
|
-
if (import_node_fs9.default.existsSync(envPath)) {
|
|
40879
|
-
content = import_node_fs9.default.readFileSync(envPath, "utf-8");
|
|
40880
|
-
content = content.replace(/^SAIL_PASSPHRASE=.*\n?/m, "");
|
|
40881
|
-
}
|
|
40882
|
-
content = content.trimEnd() + (content.length > 0 ? "\n" : "") + `SAIL_PASSPHRASE=${password}
|
|
40883
|
-
`;
|
|
40884
|
-
import_node_fs9.default.mkdirSync(import_node_path8.default.dirname(envPath), { recursive: true });
|
|
40885
|
-
import_node_fs9.default.writeFileSync(envPath, content, { mode: 384 });
|
|
40919
|
+
persistPassphrase(sailPath(".env.local"), password);
|
|
40886
40920
|
console.log("\u2713 SAIL_PASSPHRASE saved to .sail/.env.local (mode 0600)");
|
|
40887
40921
|
console.log(" sailor run will now work non-interactively.");
|
|
40888
40922
|
} else {
|
|
@@ -43286,15 +43320,15 @@ ensure the agent that signs dispatches holds this key.`
|
|
|
43286
43320
|
if (fileExists(target)) {
|
|
43287
43321
|
const backup = `${target}.${Date.now()}.bak`;
|
|
43288
43322
|
const existing = readJsonFile(target);
|
|
43289
|
-
if (existing) writeJsonFile(backup, existing);
|
|
43323
|
+
if (existing) writeJsonFile(backup, existing, 384);
|
|
43290
43324
|
say(() => console.log(` Backed up the old agent keystore \u2192 ${backup}`));
|
|
43291
43325
|
}
|
|
43292
43326
|
const keyring = LocalKeyring.generate();
|
|
43293
43327
|
const keystore = await keyring.exportKeystore(password);
|
|
43294
|
-
writeJsonFile(target, keystore);
|
|
43328
|
+
writeJsonFile(target, keystore, 384);
|
|
43295
43329
|
const perManagerPath = managerKeystorePath(keyring.address);
|
|
43296
43330
|
(0, import_node_fs13.mkdirSync)(sailPath("keys", "managers"), { recursive: true });
|
|
43297
|
-
writeJsonFile(perManagerPath, keystore);
|
|
43331
|
+
writeJsonFile(perManagerPath, keystore, 384);
|
|
43298
43332
|
say(
|
|
43299
43333
|
() => console.log(
|
|
43300
43334
|
` New agent wallet: ${checksum4(keyring.address)} (keystore at .sail/keys/manager.json)`
|
|
@@ -43310,11 +43344,11 @@ function promoteManagerKeystore(newManager, say) {
|
|
|
43310
43344
|
const displaced = readJsonFile(activeTarget);
|
|
43311
43345
|
if (displaced?.address) {
|
|
43312
43346
|
const snapshotPath = managerKeystorePath(displaced.address);
|
|
43313
|
-
if (readJsonFile(snapshotPath) === null) writeJsonFile(snapshotPath, displaced);
|
|
43347
|
+
if (readJsonFile(snapshotPath) === null) writeJsonFile(snapshotPath, displaced, 384);
|
|
43314
43348
|
} else if (displaced) {
|
|
43315
|
-
writeJsonFile(`${activeTarget}.${Date.now()}.bak`, displaced);
|
|
43349
|
+
writeJsonFile(`${activeTarget}.${Date.now()}.bak`, displaced, 384);
|
|
43316
43350
|
}
|
|
43317
|
-
writeJsonFile(activeTarget, stored);
|
|
43351
|
+
writeJsonFile(activeTarget, stored, 384);
|
|
43318
43352
|
say(
|
|
43319
43353
|
() => console.log(` Agent wallet keystore for ${newManager} is now active (.sail/keys/manager.json).`)
|
|
43320
43354
|
);
|
|
@@ -44341,7 +44375,7 @@ function uiStop() {
|
|
|
44341
44375
|
}
|
|
44342
44376
|
|
|
44343
44377
|
// src/index.ts
|
|
44344
|
-
function
|
|
44378
|
+
function cliVersion() {
|
|
44345
44379
|
try {
|
|
44346
44380
|
const pkg = JSON.parse((0, import_node_fs18.readFileSync)((0, import_node_path14.join)(packageRoot(), "package.json"), "utf-8"));
|
|
44347
44381
|
return pkg.version ?? "0.0.0";
|
|
@@ -44350,7 +44384,7 @@ function cliVersion2() {
|
|
|
44350
44384
|
}
|
|
44351
44385
|
}
|
|
44352
44386
|
var program2 = new Command();
|
|
44353
|
-
program2.name("sailor").description("Operator toolkit for Sail Protocol").version(
|
|
44387
|
+
program2.name("sailor").description("Operator toolkit for Sail Protocol").version(cliVersion());
|
|
44354
44388
|
function action(fn) {
|
|
44355
44389
|
return async () => {
|
|
44356
44390
|
try {
|
|
@@ -48753,6 +48753,18 @@ function parseEnvFile(file) {
|
|
|
48753
48753
|
}
|
|
48754
48754
|
return out;
|
|
48755
48755
|
}
|
|
48756
|
+
function persistPassphrase(envPath, passphrase) {
|
|
48757
|
+
let content = "";
|
|
48758
|
+
if (import_node_fs2.default.existsSync(envPath)) {
|
|
48759
|
+
content = import_node_fs2.default.readFileSync(envPath, "utf-8").replace(/^SAIL_PASSPHRASE=.*\n?/m, "");
|
|
48760
|
+
}
|
|
48761
|
+
const trimmed = content.trimEnd();
|
|
48762
|
+
content = `${trimmed}${trimmed.length > 0 ? "\n" : ""}SAIL_PASSPHRASE=${passphrase}
|
|
48763
|
+
`;
|
|
48764
|
+
import_node_fs2.default.mkdirSync(import_node_path.default.dirname(envPath), { recursive: true });
|
|
48765
|
+
import_node_fs2.default.writeFileSync(envPath, content, { mode: 384 });
|
|
48766
|
+
import_node_fs2.default.chmodSync(envPath, 384);
|
|
48767
|
+
}
|
|
48756
48768
|
var CHAIN_NAMES = {
|
|
48757
48769
|
1: "ethereum",
|
|
48758
48770
|
10: "optimism",
|
|
@@ -49137,7 +49149,9 @@ function startServer(sailDir, { port = PORT } = {}) {
|
|
|
49137
49149
|
const keystore = await keyring.exportKeystore(password);
|
|
49138
49150
|
import_node_fs2.default.mkdirSync(at("keys"), { recursive: true });
|
|
49139
49151
|
import_node_fs2.default.writeFileSync(managerKeyPath(safe), `${JSON.stringify(keystore, null, 2)}
|
|
49140
|
-
|
|
49152
|
+
`, { mode: 384 });
|
|
49153
|
+
import_node_fs2.default.chmodSync(managerKeyPath(safe), 384);
|
|
49154
|
+
persistPassphrase(at(".env.local"), password);
|
|
49141
49155
|
try {
|
|
49142
49156
|
const ev = { ts: (/* @__PURE__ */ new Date()).toISOString(), actor: "owner", type: "signer_created", method, address: keyring.address, safe };
|
|
49143
49157
|
import_node_fs2.default.appendFileSync(at("activity.jsonl"), `${JSON.stringify(ev)}
|
|
@@ -49574,7 +49588,8 @@ function startServer(sailDir, { port = PORT } = {}) {
|
|
|
49574
49588
|
if (chainId) existing.CHAIN_ID = String(chainId);
|
|
49575
49589
|
const content = Object.entries(existing).map(([k, v]) => `${k}=${v}`).join("\n") + "\n";
|
|
49576
49590
|
import_node_fs2.default.mkdirSync(sailDir, { recursive: true });
|
|
49577
|
-
import_node_fs2.default.writeFileSync(envPath, content);
|
|
49591
|
+
import_node_fs2.default.writeFileSync(envPath, content, { mode: 384 });
|
|
49592
|
+
import_node_fs2.default.chmodSync(envPath, 384);
|
|
49578
49593
|
res.json({ ok: true });
|
|
49579
49594
|
} catch (err) {
|
|
49580
49595
|
res.status(500).json({ error: String(err) });
|
|
@@ -49597,7 +49612,9 @@ function startServer(sailDir, { port = PORT } = {}) {
|
|
|
49597
49612
|
const keystore = await keyring.exportKeystore(passphrase);
|
|
49598
49613
|
import_node_fs2.default.mkdirSync(at("keys"), { recursive: true });
|
|
49599
49614
|
import_node_fs2.default.writeFileSync(managerKeyPath2, `${JSON.stringify(keystore, null, 2)}
|
|
49600
|
-
|
|
49615
|
+
`, { mode: 384 });
|
|
49616
|
+
import_node_fs2.default.chmodSync(managerKeyPath2, 384);
|
|
49617
|
+
persistPassphrase(at(".env.local"), passphrase);
|
|
49601
49618
|
res.json({ address: keyring.address, existed: false });
|
|
49602
49619
|
} catch (err) {
|
|
49603
49620
|
res.status(500).json({ error: String(err) });
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Do not edit manually — run `pnpm build` to regenerate.
|
|
6
6
|
*
|
|
7
7
|
* Spec version : 1.2.0
|
|
8
|
-
* Generated at : 2026-06-15T17:
|
|
8
|
+
* Generated at : 2026-06-15T17:19:52.072Z
|
|
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.0
|
|
8
|
-
* Generated at : 2026-06-15T17:
|
|
8
|
+
* Generated at : 2026-06-15T17:19:52.072Z
|
|
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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const d=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const p=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-
|
|
1
|
+
import{F as t}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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-
|
|
1
|
+
import{F as i}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const h=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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const p=o`<svg fill="none" viewBox="0 0 14 15">
|
|
2
2
|
<path
|
|
3
3
|
fill="currentColor"
|
|
4
4
|
fill-rule="evenodd"
|
package/packages/ui/dist/assets/{arrow-bottom-circle-RBTLtzcR.js → arrow-bottom-circle-iFIsQg-8.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const t=o`<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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const p=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const H=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 P,s as M,y as A,v as I,p as c,g as L,c as T,O as Y,l as E,m as J,R as O,h as ke,e as D,f as S,o as ft,j as Hi,W as gt,C as jt,d as si,T as kt,n as Qe,M as vi,k as yi,F as Ae,A as li,q as Ki}from"./core-
|
|
1
|
+
import{u as P,s as M,y as A,v as I,p as c,g as L,c as T,O as Y,l as E,m as J,R as O,h as ke,e as D,f as S,o as ft,j as Hi,W as gt,C as jt,d as si,T as kt,n as Qe,M as vi,k as yi,F as Ae,A as li,q as Ki}from"./core-Cp3xGXA6.js";import{n as u,c as C,o as y,r as v,U as se,e as Gi,f as Yi,a as Ji}from"./index-C_eqUkeY.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const Qi=P`
|
|
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-
|
|
1
|
+
import{F as l}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const i=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-
|
|
1
|
+
import{F as C}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const l=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,cY as p,fP as k,c0 as x,de as M,dl as S,dk as $,bK as A,bR as T,cd as C,cJ as w,dc as E,a0 as b,dg as G}from"./index-
|
|
1
|
+
import{B as u,cY as p,fP as k,c0 as x,de as M,dl as S,dk as $,bK as A,bR as T,cd as C,cJ as w,dc as E,a0 as b,dg as G}from"./index-vPyTb3MD.js";class D extends u{constructor({callbackSelector:a,cause:t,data:f,extraData:e,sender:d,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: ${d}`,` Data: ${f}`,` Callback selector: ${a}`,` Extra data: ${e}`].flat(),name:"OffchainLookupError"})}}class P 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 B 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 H="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:d}){var s;const{args:i}=x({data:f,abi:[U]}),[o,n,l,g,y]=i,{ccipRead:h}=c,r=h&&typeof(h==null?void 0:h.request)=="function"?h.request:j;try{if(!M(d,o))throw new B({sender:o,to:d});const m=n.includes(S)?await $({data:l,ccipRequest:R=>r({...R,requestOptions:e})}):await r({data:l,requestOptions:e,sender:o,urls:n}),{data:L}=await A(c,{blockNumber:a,blockTag:t,data:T([g,C([{type:"bytes"},{type:"bytes"}],[m,y])]),requestOptions:e,to:d});return L}catch(m){throw(s=e==null?void 0:e.signal)!=null&&s.aborted?w(e.signal):E(m)?m:new D({callbackSelector:g,cause:m,data:f,extraData:y,sender:o,urls:n})}}async function j({data:c,requestOptions:a,sender:t,urls:f}){var d,i,o;let e=new Error("An unknown error occurred.");for(let n=0;n<f.length;n++){if((d=a==null?void 0:a.signal)!=null&&d.aborted)throw w(a.signal);const l=f[n],g=l.includes("{data}")?"GET":"POST",y=g==="POST"?{data:c,sender:t}:void 0,h=g==="POST"?{"Content-Type":"application/json"}:{};try{const r=await fetch(l.replace("{sender}",t.toLowerCase()).replace("{data}",c),{body:JSON.stringify(y),headers:h,method:g,...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:l});continue}if(!G(s)){e=new P({result:s,url:l});continue}return s}catch(r){if((o=a==null?void 0:a.signal)!=null&&o.aborted)throw w(a.signal);if(E(r))throw r;e=new b({body:y,details:r.message,url:l})}}throw e}export{j as ccipRequest,J as offchainLookup,U as offchainLookupAbiItem,H as offchainLookupSignature};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const p=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const p=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 t}from"./core-
|
|
1
|
+
import{F as t}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const l=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const t=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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 o}from"./core-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const m=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-
|
|
1
|
+
import{F as o}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.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 C}from"./core-
|
|
1
|
+
import{F as C}from"./core-Cp3xGXA6.js";import"./index-vPyTb3MD.js";import"./events-BRxyYKwO.js";import"./index.es-r4dwiXlA.js";import"./fallback-DAe2x1wz.js";const e=C`<svg
|
|
2
2
|
xmlns="http://www.w3.org/2000/svg"
|
|
3
3
|
width="16"
|
|
4
4
|
height="16"
|