thirdweb 5.84.0-nightly-0fdfb8aa778a344aa847503f668e48feb5f72548-20250115000312 → 5.84.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/dist/cjs/ai/chat.js +29 -0
- package/dist/cjs/ai/chat.js.map +1 -0
- package/dist/cjs/ai/common.js +69 -0
- package/dist/cjs/ai/common.js.map +1 -0
- package/dist/cjs/ai/execute.js +43 -0
- package/dist/cjs/ai/execute.js.map +1 -0
- package/dist/cjs/ai/index.js +8 -0
- package/dist/cjs/ai/index.js.map +1 -0
- package/dist/cjs/exports/ai.js +5 -0
- package/dist/cjs/exports/ai.js.map +1 -0
- package/dist/cjs/exports/wallets/engine.js +6 -0
- package/dist/cjs/exports/wallets/engine.js.map +1 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/engine/index.js +143 -0
- package/dist/cjs/wallets/engine/index.js.map +1 -0
- package/dist/cjs/wallets/smart/lib/signing.js +1 -1
- package/dist/esm/ai/chat.js +26 -0
- package/dist/esm/ai/chat.js.map +1 -0
- package/dist/esm/ai/common.js +66 -0
- package/dist/esm/ai/common.js.map +1 -0
- package/dist/esm/ai/execute.js +40 -0
- package/dist/esm/ai/execute.js.map +1 -0
- package/dist/esm/ai/index.js +3 -0
- package/dist/esm/ai/index.js.map +1 -0
- package/dist/esm/exports/ai.js +2 -0
- package/dist/esm/exports/ai.js.map +1 -0
- package/dist/esm/exports/wallets/engine.js +2 -0
- package/dist/esm/exports/wallets/engine.js.map +1 -0
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/engine/index.js +140 -0
- package/dist/esm/wallets/engine/index.js.map +1 -0
- package/dist/esm/wallets/smart/lib/signing.js +1 -1
- package/dist/types/ai/chat.d.ts +24 -0
- package/dist/types/ai/chat.d.ts.map +1 -0
- package/dist/types/ai/common.d.ts +22 -0
- package/dist/types/ai/common.d.ts.map +1 -0
- package/dist/types/ai/execute.d.ts +29 -0
- package/dist/types/ai/execute.d.ts.map +1 -0
- package/dist/types/ai/index.d.ts +4 -0
- package/dist/types/ai/index.d.ts.map +1 -0
- package/dist/types/exports/ai.d.ts +2 -0
- package/dist/types/exports/ai.d.ts.map +1 -0
- package/dist/types/exports/wallets/engine.d.ts +2 -0
- package/dist/types/exports/wallets/engine.d.ts.map +1 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/engine/index.d.ts +54 -0
- package/dist/types/wallets/engine/index.d.ts.map +1 -0
- package/dist/types/wallets/smart/lib/signing.d.ts +1 -1
- package/package.json +9 -1
- package/src/ai/chat.test.ts +31 -0
- package/src/ai/chat.ts +26 -0
- package/src/ai/common.ts +114 -0
- package/src/ai/execute.test.ts +43 -0
- package/src/ai/execute.ts +44 -0
- package/src/ai/index.ts +3 -0
- package/src/exports/ai.ts +1 -0
- package/src/exports/wallets/engine.ts +4 -0
- package/src/version.ts +1 -1
- package/src/wallets/engine/engine-account.test.ts +69 -0
- package/src/wallets/engine/index.ts +198 -0
- package/src/wallets/smart/lib/signing.ts +1 -1
@@ -0,0 +1,29 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.chat = chat;
|
4
|
+
const common_js_1 = require("./common.js");
|
5
|
+
/**
|
6
|
+
* Chat with Nebula.
|
7
|
+
*
|
8
|
+
* @param input - The input for the chat.
|
9
|
+
* @returns The chat response.
|
10
|
+
* @beta
|
11
|
+
* @nebula
|
12
|
+
*
|
13
|
+
* @example
|
14
|
+
* ```ts
|
15
|
+
* import { Nebula } from "thirdweb/ai";
|
16
|
+
*
|
17
|
+
* const response = await Nebula.chat({
|
18
|
+
* client: TEST_CLIENT,
|
19
|
+
* prompt: "What's the symbol of this contract: 0xe2cb0eb5147b42095c2FfA6F7ec953bb0bE347D8",
|
20
|
+
* context: {
|
21
|
+
* chains: [sepolia],
|
22
|
+
* },
|
23
|
+
* });
|
24
|
+
* ```
|
25
|
+
*/
|
26
|
+
async function chat(input) {
|
27
|
+
return (0, common_js_1.nebulaFetch)("chat", input);
|
28
|
+
}
|
29
|
+
//# sourceMappingURL=chat.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/ai/chat.ts"],"names":[],"mappings":";;AAuBA,oBAEC;AAzBD,2CAAmE;AAEnE;;;;;;;;;;;;;;;;;;;;GAoBG;AACI,KAAK,UAAU,IAAI,CAAC,KAAY;IACrC,OAAO,IAAA,uBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC"}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.nebulaFetch = nebulaFetch;
|
4
|
+
const utils_js_1 = require("../chains/utils.js");
|
5
|
+
const prepare_transaction_js_1 = require("../transaction/prepare-transaction.js");
|
6
|
+
const bigint_js_1 = require("../utils/bigint.js");
|
7
|
+
const fetch_js_1 = require("../utils/fetch.js");
|
8
|
+
const NEBULA_API_URL = "https://nebula-api.thirdweb.com";
|
9
|
+
async function nebulaFetch(mode, input) {
|
10
|
+
const fetch = (0, fetch_js_1.getClientFetch)(input.client);
|
11
|
+
const response = await fetch(`${NEBULA_API_URL}/${mode}`, {
|
12
|
+
method: "POST",
|
13
|
+
headers: {
|
14
|
+
"Content-Type": "application/json",
|
15
|
+
},
|
16
|
+
body: JSON.stringify({
|
17
|
+
message: input.prompt, // TODO: support array of messages
|
18
|
+
session_id: input.sessionId,
|
19
|
+
...(input.account
|
20
|
+
? {
|
21
|
+
execute_config: {
|
22
|
+
mode: "client",
|
23
|
+
signer_wallet_address: input.account.address,
|
24
|
+
},
|
25
|
+
}
|
26
|
+
: {}),
|
27
|
+
...(input.context
|
28
|
+
? {
|
29
|
+
context_filter: {
|
30
|
+
chain_ids: input.context.chains?.map((c) => c.id.toString()) || [],
|
31
|
+
signer_wallet_address: input.context.walletAddresses || [],
|
32
|
+
contract_addresses: input.context.contractAddresses || [],
|
33
|
+
},
|
34
|
+
}
|
35
|
+
: {}),
|
36
|
+
}),
|
37
|
+
});
|
38
|
+
if (!response.ok) {
|
39
|
+
const error = await response.text();
|
40
|
+
throw new Error(`Nebula API error: ${error}`);
|
41
|
+
}
|
42
|
+
const data = (await response.json());
|
43
|
+
// parse transactions if present
|
44
|
+
let transactions = [];
|
45
|
+
if (data.actions) {
|
46
|
+
transactions = data.actions
|
47
|
+
.map((action) => {
|
48
|
+
// only parse sign_transaction actions
|
49
|
+
if (action.type === "sign_transaction") {
|
50
|
+
const tx = JSON.parse(action.data);
|
51
|
+
return (0, prepare_transaction_js_1.prepareTransaction)({
|
52
|
+
chain: (0, utils_js_1.getCachedChain)(tx.chainId),
|
53
|
+
client: input.client,
|
54
|
+
to: tx.to,
|
55
|
+
value: tx.value ? (0, bigint_js_1.toBigInt)(tx.value) : undefined,
|
56
|
+
data: tx.data,
|
57
|
+
});
|
58
|
+
}
|
59
|
+
return undefined;
|
60
|
+
})
|
61
|
+
.filter((tx) => tx !== undefined);
|
62
|
+
}
|
63
|
+
return {
|
64
|
+
message: data.message,
|
65
|
+
sessionId: data.session_id,
|
66
|
+
transactions,
|
67
|
+
};
|
68
|
+
}
|
69
|
+
//# sourceMappingURL=common.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/ai/common.ts"],"names":[],"mappings":";;AA2CA,kCAsEC;AAhHD,iDAAoD;AAEpD,kFAG+C;AAE/C,kDAA8C;AAE9C,gDAAmD;AAGnD,MAAM,cAAc,GAAG,iCAAiC,CAAC;AA8BlD,KAAK,UAAU,WAAW,CAC/B,IAAwB,EACxB,KAAY;IAEZ,MAAM,KAAK,GAAG,IAAA,yBAAc,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,cAAc,IAAI,IAAI,EAAE,EAAE;QACxD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,kCAAkC;YACzD,UAAU,EAAE,KAAK,CAAC,SAAS;YAC3B,GAAG,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC;oBACE,cAAc,EAAE;wBACd,IAAI,EAAE,QAAQ;wBACd,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;qBAC7C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC;oBACE,cAAc,EAAE;wBACd,SAAS,EACP,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;wBACzD,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE;wBAC1D,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE;qBAC1D;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAgB,CAAC;IAEpD,gCAAgC;IAChC,IAAI,YAAY,GAA0B,EAAE,CAAC;IAC7C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,YAAY,GAAG,IAAI,CAAC,OAAO;aACxB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACd,sCAAsC;YACtC,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACvC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAKhC,CAAC;gBACF,OAAO,IAAA,2CAAkB,EAAC;oBACxB,KAAK,EAAE,IAAA,yBAAc,EAAC,EAAE,CAAC,OAAO,CAAC;oBACjC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,oBAAQ,EAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;oBAChD,IAAI,EAAE,EAAE,CAAC,IAAI;iBACd,CAAC,CAAC;YACL,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS,EAAE,IAAI,CAAC,UAAU;QAC1B,YAAY;KACb,CAAC;AACJ,CAAC"}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.execute = execute;
|
4
|
+
const send_transaction_js_1 = require("../transaction/actions/send-transaction.js");
|
5
|
+
const common_js_1 = require("./common.js");
|
6
|
+
/**
|
7
|
+
* Execute a transaction based on a prompt.
|
8
|
+
*
|
9
|
+
* @param input - The input for the transaction.
|
10
|
+
* @returns The transaction hash.
|
11
|
+
* @beta
|
12
|
+
* @nebula
|
13
|
+
*
|
14
|
+
* @example
|
15
|
+
* ```ts
|
16
|
+
* import { Nebula } from "thirdweb/ai";
|
17
|
+
*
|
18
|
+
* const result = await Nebula.execute({
|
19
|
+
* client: TEST_CLIENT,
|
20
|
+
* prompt: "send 0.0001 ETH to vitalik.eth",
|
21
|
+
* account: TEST_ACCOUNT_A,
|
22
|
+
* context: {
|
23
|
+
* chains: [sepolia],
|
24
|
+
* },
|
25
|
+
* });
|
26
|
+
* ```
|
27
|
+
*/
|
28
|
+
async function execute(input) {
|
29
|
+
const result = await (0, common_js_1.nebulaFetch)("execute", input);
|
30
|
+
// TODO: optionally only return the transaction without executing it?
|
31
|
+
if (result.transactions.length === 0) {
|
32
|
+
throw new Error(result.message);
|
33
|
+
}
|
34
|
+
const tx = result.transactions[0];
|
35
|
+
if (!tx) {
|
36
|
+
throw new Error(result.message);
|
37
|
+
}
|
38
|
+
return (0, send_transaction_js_1.sendTransaction)({
|
39
|
+
transaction: tx,
|
40
|
+
account: input.account,
|
41
|
+
});
|
42
|
+
}
|
43
|
+
//# sourceMappingURL=execute.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/ai/execute.ts"],"names":[],"mappings":";;AA2BA,0BAgBC;AA3CD,oFAA6E;AAG7E,2CAAsD;AAEtD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,OAAO,CAC3B,KAAmC;IAEnC,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,qEAAqE;IACrE,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,IAAA,qCAAe,EAAC;QACrB,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC;AACL,CAAC"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.execute = exports.chat = void 0;
|
4
|
+
var chat_js_1 = require("./chat.js");
|
5
|
+
Object.defineProperty(exports, "chat", { enumerable: true, get: function () { return chat_js_1.chat; } });
|
6
|
+
var execute_js_1 = require("./execute.js");
|
7
|
+
Object.defineProperty(exports, "execute", { enumerable: true, get: function () { return execute_js_1.execute; } });
|
8
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/index.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAAxB,+FAAA,IAAI,OAAA;AACb,2CAAuC;AAA9B,qGAAA,OAAO,OAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../src/exports/ai.ts"],"names":[],"mappings":";;;AAAA,2CAAyC"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.engineAccount = void 0;
|
4
|
+
var index_js_1 = require("../../wallets/engine/index.js");
|
5
|
+
Object.defineProperty(exports, "engineAccount", { enumerable: true, get: function () { return index_js_1.engineAccount; } });
|
6
|
+
//# sourceMappingURL=engine.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/exports/wallets/engine.ts"],"names":[],"mappings":";;;AAAA,0DAGuC;AADrC,yGAAA,aAAa,OAAA"}
|
package/dist/cjs/version.js
CHANGED
package/dist/cjs/version.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,QAAQ,CAAC"}
|
@@ -0,0 +1,143 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.engineAccount = engineAccount;
|
4
|
+
const hex_js_1 = require("../../utils/encoding/hex.js");
|
5
|
+
/**
|
6
|
+
* Creates an account that uses your engine backend wallet for sending transactions and signing messages.
|
7
|
+
*
|
8
|
+
* @param options - The options for the engine account.
|
9
|
+
* @returns An account that uses your engine backend wallet.
|
10
|
+
*
|
11
|
+
* @beta
|
12
|
+
* @wallet
|
13
|
+
*
|
14
|
+
* @example
|
15
|
+
* ```ts
|
16
|
+
* import { engineAccount } from "thirdweb/wallets/engine";
|
17
|
+
*
|
18
|
+
* const engineAcc = engineAccount({
|
19
|
+
* engineUrl: "https://engine.thirdweb.com",
|
20
|
+
* authToken: "your-auth-token",
|
21
|
+
* walletAddress: "0x...",
|
22
|
+
* });
|
23
|
+
*
|
24
|
+
* // then use the account as you would any other account
|
25
|
+
* const transaction = claimTo({
|
26
|
+
* contract,
|
27
|
+
* to: "0x...",
|
28
|
+
* quantity: 1n,
|
29
|
+
* });
|
30
|
+
* const result = await sendTransaction({ transaction, account: engineAcc });
|
31
|
+
* console.log("Transaction sent:", result.transactionHash);
|
32
|
+
* ```
|
33
|
+
*/
|
34
|
+
function engineAccount(options) {
|
35
|
+
const { engineUrl, authToken, walletAddress, chain } = options;
|
36
|
+
// these are shared across all methods
|
37
|
+
const headers = {
|
38
|
+
"x-backend-wallet-address": walletAddress,
|
39
|
+
Authorization: `Bearer ${authToken}`,
|
40
|
+
"Content-Type": "application/json",
|
41
|
+
};
|
42
|
+
return {
|
43
|
+
address: walletAddress,
|
44
|
+
sendTransaction: async (transaction) => {
|
45
|
+
const ENGINE_URL = new URL(engineUrl);
|
46
|
+
ENGINE_URL.pathname = `/backend-wallet/${transaction.chainId}/send-transaction`;
|
47
|
+
const engineData = {
|
48
|
+
// add to address if we have it (is optional to pass to engine)
|
49
|
+
toAddress: transaction.to || undefined,
|
50
|
+
// engine wants a hex string here so we serialize it
|
51
|
+
data: transaction.data || "0x",
|
52
|
+
// value is always required
|
53
|
+
value: (0, hex_js_1.toHex)(transaction.value ?? 0n),
|
54
|
+
};
|
55
|
+
// TODO: gas overrides etc?
|
56
|
+
const engineRes = await fetch(ENGINE_URL, {
|
57
|
+
method: "POST",
|
58
|
+
headers,
|
59
|
+
body: JSON.stringify(engineData),
|
60
|
+
});
|
61
|
+
if (!engineRes.ok) {
|
62
|
+
const body = await engineRes.text();
|
63
|
+
throw new Error(`Engine request failed with status ${engineRes.status} - ${body}`);
|
64
|
+
}
|
65
|
+
const engineJson = (await engineRes.json());
|
66
|
+
// wait for the queueId to be processed
|
67
|
+
ENGINE_URL.pathname = `/transaction/status/${engineJson.result.queueId}`;
|
68
|
+
const startTime = Date.now();
|
69
|
+
const TIMEOUT_IN_MS = 5 * 60 * 1000; // 5 minutes in milliseconds
|
70
|
+
while (Date.now() - startTime < TIMEOUT_IN_MS) {
|
71
|
+
const queueRes = await fetch(ENGINE_URL, {
|
72
|
+
method: "GET",
|
73
|
+
headers,
|
74
|
+
});
|
75
|
+
if (!queueRes.ok) {
|
76
|
+
const body = await queueRes.text();
|
77
|
+
throw new Error(`Engine request failed with status ${queueRes.status} - ${body}`);
|
78
|
+
}
|
79
|
+
const queueJSON = (await queueRes.json());
|
80
|
+
if (queueJSON.result.status === "errored" &&
|
81
|
+
queueJSON.result.errorMessage) {
|
82
|
+
throw new Error(queueJSON.result.errorMessage);
|
83
|
+
}
|
84
|
+
if (queueJSON.result.transactionHash) {
|
85
|
+
return {
|
86
|
+
transactionHash: queueJSON.result.transactionHash,
|
87
|
+
};
|
88
|
+
}
|
89
|
+
// wait 1s before checking again
|
90
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
91
|
+
}
|
92
|
+
throw new Error("Transaction timed out after 5 minutes");
|
93
|
+
},
|
94
|
+
signMessage: async ({ message }) => {
|
95
|
+
let engineMessage;
|
96
|
+
let isBytes = false;
|
97
|
+
if (typeof message === "string") {
|
98
|
+
engineMessage = message;
|
99
|
+
}
|
100
|
+
else {
|
101
|
+
engineMessage = (0, hex_js_1.toHex)(message.raw);
|
102
|
+
isBytes = true;
|
103
|
+
}
|
104
|
+
const ENGINE_URL = new URL(engineUrl);
|
105
|
+
ENGINE_URL.pathname = "/backend-wallet/sign-message";
|
106
|
+
const engineRes = await fetch(ENGINE_URL, {
|
107
|
+
method: "POST",
|
108
|
+
headers,
|
109
|
+
body: JSON.stringify({
|
110
|
+
message: engineMessage,
|
111
|
+
isBytes,
|
112
|
+
chainId: chain?.id,
|
113
|
+
}),
|
114
|
+
});
|
115
|
+
if (!engineRes.ok) {
|
116
|
+
const body = await engineRes.text();
|
117
|
+
throw new Error(`Engine request failed with status ${engineRes.status} - ${body}`);
|
118
|
+
}
|
119
|
+
const engineJson = (await engineRes.json());
|
120
|
+
return engineJson.result;
|
121
|
+
},
|
122
|
+
signTypedData: async (_typedData) => {
|
123
|
+
const ENGINE_URL = new URL(engineUrl);
|
124
|
+
ENGINE_URL.pathname = "/backend-wallet/sign-typed-data";
|
125
|
+
const engineRes = await fetch(ENGINE_URL, {
|
126
|
+
method: "POST",
|
127
|
+
headers,
|
128
|
+
body: JSON.stringify({
|
129
|
+
domain: _typedData.domain,
|
130
|
+
types: _typedData.types,
|
131
|
+
value: _typedData.message,
|
132
|
+
}),
|
133
|
+
});
|
134
|
+
if (!engineRes.ok) {
|
135
|
+
engineRes.body?.cancel();
|
136
|
+
throw new Error(`Engine request failed with status ${engineRes.status}`);
|
137
|
+
}
|
138
|
+
const engineJson = (await engineRes.json());
|
139
|
+
return engineJson.result;
|
140
|
+
},
|
141
|
+
};
|
142
|
+
}
|
143
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/wallets/engine/index.ts"],"names":[],"mappings":"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"}
|
@@ -220,7 +220,7 @@ async function checkFor712Factory({ factoryContract, accountContract, originalMs
|
|
220
220
|
* });
|
221
221
|
* ```
|
222
222
|
*
|
223
|
-
* @
|
223
|
+
* @wallet
|
224
224
|
*/
|
225
225
|
async function deploySmartAccount(args) {
|
226
226
|
const { chain, client, smartAccount, accountContract } = args;
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { nebulaFetch } from "./common.js";
|
2
|
+
/**
|
3
|
+
* Chat with Nebula.
|
4
|
+
*
|
5
|
+
* @param input - The input for the chat.
|
6
|
+
* @returns The chat response.
|
7
|
+
* @beta
|
8
|
+
* @nebula
|
9
|
+
*
|
10
|
+
* @example
|
11
|
+
* ```ts
|
12
|
+
* import { Nebula } from "thirdweb/ai";
|
13
|
+
*
|
14
|
+
* const response = await Nebula.chat({
|
15
|
+
* client: TEST_CLIENT,
|
16
|
+
* prompt: "What's the symbol of this contract: 0xe2cb0eb5147b42095c2FfA6F7ec953bb0bE347D8",
|
17
|
+
* context: {
|
18
|
+
* chains: [sepolia],
|
19
|
+
* },
|
20
|
+
* });
|
21
|
+
* ```
|
22
|
+
*/
|
23
|
+
export async function chat(input) {
|
24
|
+
return nebulaFetch("chat", input);
|
25
|
+
}
|
26
|
+
//# sourceMappingURL=chat.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/ai/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,WAAW,EAAE,MAAM,aAAa,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,KAAY;IACrC,OAAO,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC"}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
import { getCachedChain } from "../chains/utils.js";
|
2
|
+
import { prepareTransaction, } from "../transaction/prepare-transaction.js";
|
3
|
+
import { toBigInt } from "../utils/bigint.js";
|
4
|
+
import { getClientFetch } from "../utils/fetch.js";
|
5
|
+
const NEBULA_API_URL = "https://nebula-api.thirdweb.com";
|
6
|
+
export async function nebulaFetch(mode, input) {
|
7
|
+
const fetch = getClientFetch(input.client);
|
8
|
+
const response = await fetch(`${NEBULA_API_URL}/${mode}`, {
|
9
|
+
method: "POST",
|
10
|
+
headers: {
|
11
|
+
"Content-Type": "application/json",
|
12
|
+
},
|
13
|
+
body: JSON.stringify({
|
14
|
+
message: input.prompt, // TODO: support array of messages
|
15
|
+
session_id: input.sessionId,
|
16
|
+
...(input.account
|
17
|
+
? {
|
18
|
+
execute_config: {
|
19
|
+
mode: "client",
|
20
|
+
signer_wallet_address: input.account.address,
|
21
|
+
},
|
22
|
+
}
|
23
|
+
: {}),
|
24
|
+
...(input.context
|
25
|
+
? {
|
26
|
+
context_filter: {
|
27
|
+
chain_ids: input.context.chains?.map((c) => c.id.toString()) || [],
|
28
|
+
signer_wallet_address: input.context.walletAddresses || [],
|
29
|
+
contract_addresses: input.context.contractAddresses || [],
|
30
|
+
},
|
31
|
+
}
|
32
|
+
: {}),
|
33
|
+
}),
|
34
|
+
});
|
35
|
+
if (!response.ok) {
|
36
|
+
const error = await response.text();
|
37
|
+
throw new Error(`Nebula API error: ${error}`);
|
38
|
+
}
|
39
|
+
const data = (await response.json());
|
40
|
+
// parse transactions if present
|
41
|
+
let transactions = [];
|
42
|
+
if (data.actions) {
|
43
|
+
transactions = data.actions
|
44
|
+
.map((action) => {
|
45
|
+
// only parse sign_transaction actions
|
46
|
+
if (action.type === "sign_transaction") {
|
47
|
+
const tx = JSON.parse(action.data);
|
48
|
+
return prepareTransaction({
|
49
|
+
chain: getCachedChain(tx.chainId),
|
50
|
+
client: input.client,
|
51
|
+
to: tx.to,
|
52
|
+
value: tx.value ? toBigInt(tx.value) : undefined,
|
53
|
+
data: tx.data,
|
54
|
+
});
|
55
|
+
}
|
56
|
+
return undefined;
|
57
|
+
})
|
58
|
+
.filter((tx) => tx !== undefined);
|
59
|
+
}
|
60
|
+
return {
|
61
|
+
message: data.message,
|
62
|
+
sessionId: data.session_id,
|
63
|
+
transactions,
|
64
|
+
};
|
65
|
+
}
|
66
|
+
//# sourceMappingURL=common.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/ai/common.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
import { sendTransaction } from "../transaction/actions/send-transaction.js";
|
2
|
+
import { nebulaFetch } from "./common.js";
|
3
|
+
/**
|
4
|
+
* Execute a transaction based on a prompt.
|
5
|
+
*
|
6
|
+
* @param input - The input for the transaction.
|
7
|
+
* @returns The transaction hash.
|
8
|
+
* @beta
|
9
|
+
* @nebula
|
10
|
+
*
|
11
|
+
* @example
|
12
|
+
* ```ts
|
13
|
+
* import { Nebula } from "thirdweb/ai";
|
14
|
+
*
|
15
|
+
* const result = await Nebula.execute({
|
16
|
+
* client: TEST_CLIENT,
|
17
|
+
* prompt: "send 0.0001 ETH to vitalik.eth",
|
18
|
+
* account: TEST_ACCOUNT_A,
|
19
|
+
* context: {
|
20
|
+
* chains: [sepolia],
|
21
|
+
* },
|
22
|
+
* });
|
23
|
+
* ```
|
24
|
+
*/
|
25
|
+
export async function execute(input) {
|
26
|
+
const result = await nebulaFetch("execute", input);
|
27
|
+
// TODO: optionally only return the transaction without executing it?
|
28
|
+
if (result.transactions.length === 0) {
|
29
|
+
throw new Error(result.message);
|
30
|
+
}
|
31
|
+
const tx = result.transactions[0];
|
32
|
+
if (!tx) {
|
33
|
+
throw new Error(result.message);
|
34
|
+
}
|
35
|
+
return sendTransaction({
|
36
|
+
transaction: tx,
|
37
|
+
account: input.account,
|
38
|
+
});
|
39
|
+
}
|
40
|
+
//# sourceMappingURL=execute.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/ai/execute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAG7E,OAAO,EAAc,WAAW,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,KAAmC;IAEnC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,qEAAqE;IACrE,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,eAAe,CAAC;QACrB,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC;AACL,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../src/exports/ai.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/exports/wallets/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,GACd,MAAM,+BAA+B,CAAC"}
|
package/dist/esm/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = "5.84.0
|
1
|
+
export const version = "5.84.0";
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/dist/esm/version.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC"}
|