@kasarlabs/erc721-mcp 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/schemas/index.d.ts +16 -16
- package/build/tools/read/balanceOf.d.ts +2 -10
- package/build/tools/read/balanceOf.js +6 -2
- package/build/tools/read/balanceOf.js.map +1 -1
- package/build/tools/read/getApproved.d.ts +2 -10
- package/build/tools/read/getApproved.js +6 -2
- package/build/tools/read/getApproved.js.map +1 -1
- package/build/tools/read/isApprovedForAll.d.ts +2 -10
- package/build/tools/read/isApprovedForAll.js +6 -2
- package/build/tools/read/isApprovedForAll.js.map +1 -1
- package/build/tools/read/ownerOf.d.ts +2 -10
- package/build/tools/read/ownerOf.js +6 -2
- package/build/tools/read/ownerOf.js.map +1 -1
- package/build/tools/write/approve.d.ts +2 -3
- package/build/tools/write/approve.js +12 -10
- package/build/tools/write/approve.js.map +1 -1
- package/build/tools/write/deployERC721.d.ts +2 -12
- package/build/tools/write/deployERC721.js +4 -2
- package/build/tools/write/deployERC721.js.map +1 -1
- package/build/tools/write/safeTransferFrom.d.ts +2 -2
- package/build/tools/write/safeTransferFrom.js +13 -11
- package/build/tools/write/safeTransferFrom.js.map +1 -1
- package/build/tools/write/setApprovalForAll.d.ts +2 -2
- package/build/tools/write/setApprovalForAll.js +12 -10
- package/build/tools/write/setApprovalForAll.js.map +1 -1
- package/build/tools/write/transferFrom.d.ts +3 -3
- package/build/tools/write/transferFrom.js +32 -24
- package/build/tools/write/transferFrom.js.map +1 -1
- package/package.json +12 -6
package/build/schemas/index.d.ts
CHANGED
|
@@ -3,11 +3,11 @@ export declare const getBalanceSchema: z.ZodObject<{
|
|
|
3
3
|
accountAddress: z.ZodString;
|
|
4
4
|
contractAddress: z.ZodString;
|
|
5
5
|
}, "strip", z.ZodTypeAny, {
|
|
6
|
-
contractAddress: string;
|
|
7
6
|
accountAddress: string;
|
|
8
|
-
}, {
|
|
9
7
|
contractAddress: string;
|
|
8
|
+
}, {
|
|
10
9
|
accountAddress: string;
|
|
10
|
+
contractAddress: string;
|
|
11
11
|
}>;
|
|
12
12
|
export declare const getOwnBalanceSchema: z.ZodObject<{
|
|
13
13
|
contractAddress: z.ZodString;
|
|
@@ -20,21 +20,21 @@ export declare const ownerOfSchema: z.ZodObject<{
|
|
|
20
20
|
tokenId: z.ZodString;
|
|
21
21
|
contractAddress: z.ZodString;
|
|
22
22
|
}, "strip", z.ZodTypeAny, {
|
|
23
|
-
tokenId: string;
|
|
24
23
|
contractAddress: string;
|
|
25
|
-
}, {
|
|
26
24
|
tokenId: string;
|
|
25
|
+
}, {
|
|
27
26
|
contractAddress: string;
|
|
27
|
+
tokenId: string;
|
|
28
28
|
}>;
|
|
29
29
|
export declare const getApprovedSchema: z.ZodObject<{
|
|
30
30
|
tokenId: z.ZodString;
|
|
31
31
|
contractAddress: z.ZodString;
|
|
32
32
|
}, "strip", z.ZodTypeAny, {
|
|
33
|
-
tokenId: string;
|
|
34
33
|
contractAddress: string;
|
|
35
|
-
}, {
|
|
36
34
|
tokenId: string;
|
|
35
|
+
}, {
|
|
37
36
|
contractAddress: string;
|
|
37
|
+
tokenId: string;
|
|
38
38
|
}>;
|
|
39
39
|
export declare const isApprovedForAllSchema: z.ZodObject<{
|
|
40
40
|
ownerAddress: z.ZodString;
|
|
@@ -55,13 +55,13 @@ export declare const transferFromSchema: z.ZodObject<{
|
|
|
55
55
|
tokenId: z.ZodString;
|
|
56
56
|
contractAddress: z.ZodString;
|
|
57
57
|
}, "strip", z.ZodTypeAny, {
|
|
58
|
-
tokenId: string;
|
|
59
58
|
contractAddress: string;
|
|
59
|
+
tokenId: string;
|
|
60
60
|
fromAddress: string;
|
|
61
61
|
toAddress: string;
|
|
62
62
|
}, {
|
|
63
|
-
tokenId: string;
|
|
64
63
|
contractAddress: string;
|
|
64
|
+
tokenId: string;
|
|
65
65
|
fromAddress: string;
|
|
66
66
|
toAddress: string;
|
|
67
67
|
}>;
|
|
@@ -70,12 +70,12 @@ export declare const transferSchema: z.ZodObject<{
|
|
|
70
70
|
tokenId: z.ZodString;
|
|
71
71
|
contractAddress: z.ZodString;
|
|
72
72
|
}, "strip", z.ZodTypeAny, {
|
|
73
|
-
tokenId: string;
|
|
74
73
|
contractAddress: string;
|
|
74
|
+
tokenId: string;
|
|
75
75
|
toAddress: string;
|
|
76
76
|
}, {
|
|
77
|
-
tokenId: string;
|
|
78
77
|
contractAddress: string;
|
|
78
|
+
tokenId: string;
|
|
79
79
|
toAddress: string;
|
|
80
80
|
}>;
|
|
81
81
|
export declare const safeTransferFromSchema: z.ZodObject<{
|
|
@@ -84,13 +84,13 @@ export declare const safeTransferFromSchema: z.ZodObject<{
|
|
|
84
84
|
tokenId: z.ZodString;
|
|
85
85
|
contractAddress: z.ZodString;
|
|
86
86
|
}, "strip", z.ZodTypeAny, {
|
|
87
|
-
tokenId: string;
|
|
88
87
|
contractAddress: string;
|
|
88
|
+
tokenId: string;
|
|
89
89
|
fromAddress: string;
|
|
90
90
|
toAddress: string;
|
|
91
91
|
}, {
|
|
92
|
-
tokenId: string;
|
|
93
92
|
contractAddress: string;
|
|
93
|
+
tokenId: string;
|
|
94
94
|
fromAddress: string;
|
|
95
95
|
toAddress: string;
|
|
96
96
|
}>;
|
|
@@ -99,12 +99,12 @@ export declare const approveSchema: z.ZodObject<{
|
|
|
99
99
|
tokenId: z.ZodString;
|
|
100
100
|
contractAddress: z.ZodString;
|
|
101
101
|
}, "strip", z.ZodTypeAny, {
|
|
102
|
-
tokenId: string;
|
|
103
102
|
contractAddress: string;
|
|
103
|
+
tokenId: string;
|
|
104
104
|
approvedAddress: string;
|
|
105
105
|
}, {
|
|
106
|
-
tokenId: string;
|
|
107
106
|
contractAddress: string;
|
|
107
|
+
tokenId: string;
|
|
108
108
|
approvedAddress: string;
|
|
109
109
|
}>;
|
|
110
110
|
export declare const setApprovalForAllSchema: z.ZodObject<{
|
|
@@ -113,12 +113,12 @@ export declare const setApprovalForAllSchema: z.ZodObject<{
|
|
|
113
113
|
contractAddress: z.ZodString;
|
|
114
114
|
}, "strip", z.ZodTypeAny, {
|
|
115
115
|
contractAddress: string;
|
|
116
|
-
approved: boolean;
|
|
117
116
|
operatorAddress: string;
|
|
117
|
+
approved: boolean;
|
|
118
118
|
}, {
|
|
119
119
|
contractAddress: string;
|
|
120
|
-
approved: boolean;
|
|
121
120
|
operatorAddress: string;
|
|
121
|
+
approved: boolean;
|
|
122
122
|
}>;
|
|
123
123
|
export declare const deployERC721Schema: z.ZodObject<{
|
|
124
124
|
name: z.ZodString;
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { getBalanceSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainRead } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const getBalance: (env: onchainRead, params: z.infer<typeof getBalanceSchema>) => Promise<
|
|
5
|
-
status: string;
|
|
6
|
-
balance: any;
|
|
7
|
-
error?: undefined;
|
|
8
|
-
} | {
|
|
9
|
-
status: string;
|
|
10
|
-
error: string;
|
|
11
|
-
balance?: undefined;
|
|
12
|
-
}>;
|
|
3
|
+
import { onchainRead, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const getBalance: (env: onchainRead, params: z.infer<typeof getBalanceSchema>) => Promise<toolResult>;
|
|
@@ -9,11 +9,15 @@ export const getBalance = async (env, params) => {
|
|
|
9
9
|
const provider = env.provider;
|
|
10
10
|
const accountAddress = validateAndParseAddress(params.accountAddress);
|
|
11
11
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
12
|
-
const contract = new Contract(
|
|
12
|
+
const contract = new Contract({
|
|
13
|
+
abi: INTERACT_ERC721_ABI,
|
|
14
|
+
address: contractAddress,
|
|
15
|
+
providerOrAccount: provider,
|
|
16
|
+
});
|
|
13
17
|
const balanceResponse = await contract.balanceOf(accountAddress);
|
|
14
18
|
return {
|
|
15
19
|
status: 'success',
|
|
16
|
-
balance: balanceResponse.toString(),
|
|
20
|
+
data: { balance: balanceResponse.toString() },
|
|
17
21
|
};
|
|
18
22
|
}
|
|
19
23
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balanceOf.js","sourceRoot":"","sources":["../../../src/tools/read/balanceOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWnD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,GAAgB,EAChB,MAAwC,
|
|
1
|
+
{"version":3,"file":"balanceOf.js","sourceRoot":"","sources":["../../../src/tools/read/balanceOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWnD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,GAAgB,EAChB,MAAwC,EACnB,EAAE;IACvB,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,cAAc,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,QAAQ;SAC5B,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAEjE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,EAAE,OAAO,EAAE,eAAe,CAAC,QAAQ,EAAE,EAAE;SAC9C,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { getApprovedSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainRead } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const getApproved: (env: onchainRead, params: z.infer<typeof getApprovedSchema>) => Promise<
|
|
5
|
-
status: string;
|
|
6
|
-
approved: any;
|
|
7
|
-
error?: undefined;
|
|
8
|
-
} | {
|
|
9
|
-
status: string;
|
|
10
|
-
error: string;
|
|
11
|
-
approved?: undefined;
|
|
12
|
-
}>;
|
|
3
|
+
import { onchainRead, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const getApproved: (env: onchainRead, params: z.infer<typeof getApprovedSchema>) => Promise<toolResult>;
|
|
@@ -10,11 +10,15 @@ export const getApproved = async (env, params) => {
|
|
|
10
10
|
const provider = env.provider;
|
|
11
11
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
12
12
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
13
|
-
const contract = new Contract(
|
|
13
|
+
const contract = new Contract({
|
|
14
|
+
abi: INTERACT_ERC721_ABI,
|
|
15
|
+
address: contractAddress,
|
|
16
|
+
providerOrAccount: provider,
|
|
17
|
+
});
|
|
14
18
|
const approvedResponse = await contract.getApproved(tokenId);
|
|
15
19
|
return {
|
|
16
20
|
status: 'success',
|
|
17
|
-
approved: approvedResponse.toString(),
|
|
21
|
+
data: { approved: approvedResponse.toString() },
|
|
18
22
|
};
|
|
19
23
|
}
|
|
20
24
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getApproved.js","sourceRoot":"","sources":["../../../src/tools/read/getApproved.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAgB,EAChB,MAAyC,
|
|
1
|
+
{"version":3,"file":"getApproved.js","sourceRoot":"","sources":["../../../src/tools/read/getApproved.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAgB,EAChB,MAAyC,EACpB,EAAE;IACvB,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,QAAQ;SAC5B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE7D,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,EAAE,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,EAAE;SAChD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { isApprovedForAllSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainRead } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const isApprovedForAll: (env: onchainRead, params: z.infer<typeof isApprovedForAllSchema>) => Promise<
|
|
5
|
-
status: string;
|
|
6
|
-
isApproved: boolean;
|
|
7
|
-
error?: undefined;
|
|
8
|
-
} | {
|
|
9
|
-
status: string;
|
|
10
|
-
error: string;
|
|
11
|
-
isApproved?: undefined;
|
|
12
|
-
}>;
|
|
3
|
+
import { onchainRead, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const isApprovedForAll: (env: onchainRead, params: z.infer<typeof isApprovedForAllSchema>) => Promise<toolResult>;
|
|
@@ -12,11 +12,15 @@ export const isApprovedForAll = async (env, params) => {
|
|
|
12
12
|
const ownerAddress = validateAndParseAddress(params.ownerAddress);
|
|
13
13
|
const operatorAddress = validateAndParseAddress(params.operatorAddress);
|
|
14
14
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
15
|
-
const contract = new Contract(
|
|
15
|
+
const contract = new Contract({
|
|
16
|
+
abi: INTERACT_ERC721_ABI,
|
|
17
|
+
address: contractAddress,
|
|
18
|
+
providerOrAccount: provider,
|
|
19
|
+
});
|
|
16
20
|
const approvedResponse = await contract.isApprovedForAll(ownerAddress, operatorAddress);
|
|
17
21
|
return {
|
|
18
22
|
status: 'success',
|
|
19
|
-
isApproved: approvedResponse === true,
|
|
23
|
+
data: { isApproved: approvedResponse === true },
|
|
20
24
|
};
|
|
21
25
|
}
|
|
22
26
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isApprovedForAll.js","sourceRoot":"","sources":["../../../src/tools/read/isApprovedForAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,GAAgB,EAChB,MAA8C,
|
|
1
|
+
{"version":3,"file":"isApprovedForAll.js","sourceRoot":"","sources":["../../../src/tools/read/isApprovedForAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,GAAgB,EAChB,MAA8C,EACzB,EAAE;IACvB,IAAI,CAAC;QACH,IACE,CAAC,MAAM,EAAE,YAAY;YACrB,CAAC,MAAM,EAAE,eAAe;YACxB,CAAC,MAAM,EAAE,eAAe,EACxB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAClE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,QAAQ;SAC5B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CACtD,YAAY,EACZ,eAAe,CAChB,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,EAAE,UAAU,EAAE,gBAAgB,KAAK,IAAI,EAAE;SAChD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { ownerOfSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainRead } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const getOwner: (env: onchainRead, params: z.infer<typeof ownerOfSchema>) => Promise<
|
|
5
|
-
status: string;
|
|
6
|
-
owner: string;
|
|
7
|
-
error?: undefined;
|
|
8
|
-
} | {
|
|
9
|
-
status: string;
|
|
10
|
-
error: string;
|
|
11
|
-
owner?: undefined;
|
|
12
|
-
}>;
|
|
3
|
+
import { onchainRead, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const getOwner: (env: onchainRead, params: z.infer<typeof ownerOfSchema>) => Promise<toolResult>;
|
|
@@ -11,11 +11,15 @@ export const getOwner = async (env, params) => {
|
|
|
11
11
|
const provider = env.provider;
|
|
12
12
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
13
13
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
14
|
-
const contract = new Contract(
|
|
14
|
+
const contract = new Contract({
|
|
15
|
+
abi: INTERACT_ERC721_ABI,
|
|
16
|
+
address: contractAddress,
|
|
17
|
+
providerOrAccount: provider,
|
|
18
|
+
});
|
|
15
19
|
const ownerResponse = await contract.ownerOf(tokenId);
|
|
16
20
|
return {
|
|
17
21
|
status: 'success',
|
|
18
|
-
owner: bigintToHex(BigInt(ownerResponse)),
|
|
22
|
+
data: { owner: bigintToHex(BigInt(ownerResponse)) },
|
|
19
23
|
};
|
|
20
24
|
}
|
|
21
25
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownerOf.js","sourceRoot":"","sources":["../../../src/tools/read/ownerOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,GAAgB,EAChB,MAAqC,
|
|
1
|
+
{"version":3,"file":"ownerOf.js","sourceRoot":"","sources":["../../../src/tools/read/ownerOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,GAAgB,EAChB,MAAqC,EAChB,EAAE;IACvB,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,QAAQ;SAC5B,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEtD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;SACpD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { onchainWrite } from '@kasarlabs/ask-starknet-core';
|
|
1
|
+
import { onchainWrite, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { approveSchema } from '../../schemas/index.js';
|
|
4
|
-
|
|
5
|
-
export declare const approve: (env: onchainWrite, params: z.infer<typeof approveSchema>) => Promise<TransactionResult>;
|
|
4
|
+
export declare const approve: (env: onchainWrite, params: z.infer<typeof approveSchema>) => Promise<toolResult>;
|
|
@@ -13,28 +13,30 @@ export const approve = async (env, params) => {
|
|
|
13
13
|
const approvedAddress = validateAndParseAddress(params.approvedAddress);
|
|
14
14
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
15
15
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
16
|
-
const contract = new Contract(
|
|
17
|
-
|
|
16
|
+
const contract = new Contract({
|
|
17
|
+
abi: INTERACT_ERC721_ABI,
|
|
18
|
+
address: contractAddress,
|
|
19
|
+
providerOrAccount: account,
|
|
20
|
+
});
|
|
18
21
|
const calldata = contract.populate('approve', [approvedAddress, tokenId]);
|
|
19
22
|
const txH = await executeV3Transaction({
|
|
20
23
|
call: calldata,
|
|
21
24
|
account: account,
|
|
22
25
|
});
|
|
23
|
-
|
|
26
|
+
return {
|
|
24
27
|
status: 'success',
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
+
data: {
|
|
29
|
+
tokenId: params.tokenId,
|
|
30
|
+
approved: true,
|
|
31
|
+
transactionHash: txH,
|
|
32
|
+
},
|
|
28
33
|
};
|
|
29
|
-
return result;
|
|
30
34
|
}
|
|
31
35
|
catch (error) {
|
|
32
|
-
|
|
36
|
+
return {
|
|
33
37
|
status: 'failure',
|
|
34
38
|
error: error instanceof Error ? error.message : 'Unknown error',
|
|
35
|
-
step: 'approve execution',
|
|
36
39
|
};
|
|
37
|
-
return result;
|
|
38
40
|
}
|
|
39
41
|
};
|
|
40
42
|
//# sourceMappingURL=approve.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approve.js","sourceRoot":"","sources":["../../../src/tools/write/approve.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAER,uBAAuB,GACxB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAWlC,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAC1B,GAAiB,EACjB,MAAqC,
|
|
1
|
+
{"version":3,"file":"approve.js","sourceRoot":"","sources":["../../../src/tools/write/approve.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAER,uBAAuB,GACxB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAWlC,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAC1B,GAAiB,EACjB,MAAqC,EAChB,EAAE;IACvB,IAAI,CAAC;QACH,IACE,CAAC,MAAM,EAAE,eAAe;YACxB,CAAC,MAAM,EAAE,OAAO;YAChB,CAAC,MAAM,EAAE,eAAe,EACxB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE5B,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QAE1E,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,IAAI;gBACd,eAAe,EAAE,GAAG;aACrB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,14 +1,4 @@
|
|
|
1
1
|
import { deployERC721Schema } from '../../schemas/index.js';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { onchainWrite } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const deployERC721Contract: (env: onchainWrite, params: z.infer<typeof deployERC721Schema>) => Promise<
|
|
5
|
-
status: string;
|
|
6
|
-
transactionHash: string | undefined;
|
|
7
|
-
contractAddress: string | undefined;
|
|
8
|
-
error?: undefined;
|
|
9
|
-
} | {
|
|
10
|
-
status: string;
|
|
11
|
-
error: string;
|
|
12
|
-
transactionHash?: undefined;
|
|
13
|
-
contractAddress?: undefined;
|
|
14
|
-
}>;
|
|
3
|
+
import { onchainWrite, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const deployERC721Contract: (env: onchainWrite, params: z.infer<typeof deployERC721Schema>) => Promise<toolResult>;
|
|
@@ -23,8 +23,10 @@ export const deployERC721Contract = async (env, params) => {
|
|
|
23
23
|
});
|
|
24
24
|
return {
|
|
25
25
|
status: 'success',
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
data: {
|
|
27
|
+
transactionHash: response.transactionHash,
|
|
28
|
+
contractAddress: response.contractAddress,
|
|
29
|
+
},
|
|
28
30
|
};
|
|
29
31
|
}
|
|
30
32
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployERC721.js","sourceRoot":"","sources":["../../../src/tools/write/deployERC721.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAUlC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,GAAiB,EACjB,MAA0C,
|
|
1
|
+
{"version":3,"file":"deployERC721.js","sourceRoot":"","sources":["../../../src/tools/write/deployERC721.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAUlC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,GAAiB,EACjB,MAA0C,EACrB,EAAE;IACvB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE5B,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAC3E,MAAM,SAAS,GACb,OAAO,KAAK,SAAS;YACnB,CAAC,CAAC,wBAAwB;YAC1B,CAAC,CAAC,wBAAwB,CAAC;QAC/B,MAAM,GAAG,GACP,OAAO,KAAK,SAAS;YACnB,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,yBAAyB,CAAC;QAEhC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,cAAc,CACnD,SAAmB,EACnB,GAAG,EACH;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,OAAO;YACxB,YAAY,EAAE,MAAM,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,OAAO;SAC3B,CACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,eAAe,EAAE,QAAQ,CAAC,eAAe;aAC1C;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { safeTransferFromSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainWrite } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const safeTransferFrom: (env: onchainWrite, params: z.infer<typeof safeTransferFromSchema>) => Promise<
|
|
3
|
+
import { onchainWrite, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const safeTransferFrom: (env: onchainWrite, params: z.infer<typeof safeTransferFromSchema>) => Promise<toolResult>;
|
|
@@ -17,8 +17,11 @@ export const safeTransferFrom = async (env, params) => {
|
|
|
17
17
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
18
18
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
19
19
|
const data = ['0x0'];
|
|
20
|
-
const contract = new Contract(
|
|
21
|
-
|
|
20
|
+
const contract = new Contract({
|
|
21
|
+
abi: INTERACT_ERC721_ABI,
|
|
22
|
+
address: contractAddress,
|
|
23
|
+
providerOrAccount: account,
|
|
24
|
+
});
|
|
22
25
|
const calldata = contract.populate('safe_transfer_from', [
|
|
23
26
|
fromAddress,
|
|
24
27
|
toAddress,
|
|
@@ -29,22 +32,21 @@ export const safeTransferFrom = async (env, params) => {
|
|
|
29
32
|
call: calldata,
|
|
30
33
|
account: account,
|
|
31
34
|
});
|
|
32
|
-
|
|
35
|
+
return {
|
|
33
36
|
status: 'success',
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
data: {
|
|
38
|
+
tokenId: params.tokenId,
|
|
39
|
+
from: fromAddress,
|
|
40
|
+
to: toAddress,
|
|
41
|
+
transactionHash: txH,
|
|
42
|
+
},
|
|
38
43
|
};
|
|
39
|
-
return JSON.stringify(result);
|
|
40
44
|
}
|
|
41
45
|
catch (error) {
|
|
42
|
-
|
|
46
|
+
return {
|
|
43
47
|
status: 'failure',
|
|
44
48
|
error: error instanceof Error ? error.message : 'Unknown error',
|
|
45
|
-
step: 'safe transfer execution',
|
|
46
49
|
};
|
|
47
|
-
return JSON.stringify(result);
|
|
48
50
|
}
|
|
49
51
|
};
|
|
50
52
|
//# sourceMappingURL=safeTransferFrom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safeTransferFrom.js","sourceRoot":"","sources":["../../../src/tools/write/safeTransferFrom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAa,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,GAAiB,EACjB,MAA8C,
|
|
1
|
+
{"version":3,"file":"safeTransferFrom.js","sourceRoot":"","sources":["../../../src/tools/write/safeTransferFrom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAa,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,GAAiB,EACjB,MAA8C,EACzB,EAAE;IACvB,IAAI,CAAC;QACH,IACE,CAAC,MAAM,EAAE,WAAW;YACpB,CAAC,MAAM,EAAE,SAAS;YAClB,CAAC,MAAM,EAAE,OAAO;YAChB,CAAC,MAAM,EAAE,eAAe,EACxB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE5B,MAAM,WAAW,GAAG,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAErB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,EAAE;YACvD,WAAW;YACX,SAAS;YACT,OAAO;YACP,IAAI;SACL,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,SAAS;gBACb,eAAe,EAAE,GAAG;aACrB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { setApprovalForAllSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainWrite } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const setApprovalForAll: (env: onchainWrite, params: z.infer<typeof setApprovalForAllSchema>) => Promise<
|
|
3
|
+
import { onchainWrite, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const setApprovalForAll: (env: onchainWrite, params: z.infer<typeof setApprovalForAllSchema>) => Promise<toolResult>;
|
|
@@ -13,8 +13,11 @@ export const setApprovalForAll = async (env, params) => {
|
|
|
13
13
|
const account = env.account;
|
|
14
14
|
const operatorAddress = validateAndParseAddress(params.operatorAddress);
|
|
15
15
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
16
|
-
const contract = new Contract(
|
|
17
|
-
|
|
16
|
+
const contract = new Contract({
|
|
17
|
+
abi: INTERACT_ERC721_ABI,
|
|
18
|
+
address: contractAddress,
|
|
19
|
+
providerOrAccount: account,
|
|
20
|
+
});
|
|
18
21
|
const calldata = contract.populate('set_approval_for_all', [
|
|
19
22
|
operatorAddress,
|
|
20
23
|
params.approved ? true : false,
|
|
@@ -23,21 +26,20 @@ export const setApprovalForAll = async (env, params) => {
|
|
|
23
26
|
call: calldata,
|
|
24
27
|
account: account,
|
|
25
28
|
});
|
|
26
|
-
|
|
29
|
+
return {
|
|
27
30
|
status: 'success',
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
data: {
|
|
32
|
+
operator: operatorAddress,
|
|
33
|
+
approved: params.approved,
|
|
34
|
+
transactionHash: txH,
|
|
35
|
+
},
|
|
31
36
|
};
|
|
32
|
-
return JSON.stringify(result);
|
|
33
37
|
}
|
|
34
38
|
catch (error) {
|
|
35
|
-
|
|
39
|
+
return {
|
|
36
40
|
status: 'failure',
|
|
37
41
|
error: error instanceof Error ? error.message : 'Unknown error',
|
|
38
|
-
step: 'setApprovalForAll execution',
|
|
39
42
|
};
|
|
40
|
-
return JSON.stringify(result);
|
|
41
43
|
}
|
|
42
44
|
};
|
|
43
45
|
//# sourceMappingURL=setApprovalForAll.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setApprovalForAll.js","sourceRoot":"","sources":["../../../src/tools/write/setApprovalForAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAa,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAIhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,GAAiB,EACjB,MAA+C,
|
|
1
|
+
{"version":3,"file":"setApprovalForAll.js","sourceRoot":"","sources":["../../../src/tools/write/setApprovalForAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAa,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAIhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,GAAiB,EACjB,MAA+C,EAC1B,EAAE;IACvB,IAAI,CAAC;QACH,IACE,CAAC,MAAM,EAAE,eAAe;YACxB,MAAM,EAAE,QAAQ,KAAK,SAAS;YAC9B,CAAC,MAAM,EAAE,eAAe,EACxB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE5B,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxE,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,EAAE;YACzD,eAAe;YACf,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;SAC/B,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,QAAQ,EAAE,eAAe;gBACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,eAAe,EAAE,GAAG;aACrB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { transferFromSchema, transferSchema } from '../../schemas/index.js';
|
|
3
|
-
import { onchainWrite } from '@kasarlabs/ask-starknet-core';
|
|
4
|
-
export declare const transferFrom: (env: onchainWrite, params: z.infer<typeof transferFromSchema>) => Promise<
|
|
5
|
-
export declare const transfer: (env: onchainWrite, params: z.infer<typeof transferSchema>) => Promise<
|
|
3
|
+
import { onchainWrite, toolResult } from '@kasarlabs/ask-starknet-core';
|
|
4
|
+
export declare const transferFrom: (env: onchainWrite, params: z.infer<typeof transferFromSchema>) => Promise<toolResult>;
|
|
5
|
+
export declare const transfer: (env: onchainWrite, params: z.infer<typeof transferSchema>) => Promise<toolResult>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Account, Contract
|
|
1
|
+
import { Account, Contract } from 'starknet';
|
|
2
2
|
import { INTERACT_ERC721_ABI } from '../../lib/abis/interact.js';
|
|
3
3
|
import { validateAndFormatTokenId, executeV3Transaction, } from '../../lib/utils/utils.js';
|
|
4
4
|
import { validateAndParseAddress } from 'starknet';
|
|
@@ -16,8 +16,11 @@ export const transferFrom = async (env, params) => {
|
|
|
16
16
|
const toAddress = validateAndParseAddress(params.toAddress);
|
|
17
17
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
18
18
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
19
|
-
const contract = new Contract(
|
|
20
|
-
|
|
19
|
+
const contract = new Contract({
|
|
20
|
+
abi: INTERACT_ERC721_ABI,
|
|
21
|
+
address: contractAddress,
|
|
22
|
+
providerOrAccount: account,
|
|
23
|
+
});
|
|
21
24
|
const calldata = contract.populate('transfer_from', [
|
|
22
25
|
fromAddress,
|
|
23
26
|
toAddress,
|
|
@@ -27,22 +30,21 @@ export const transferFrom = async (env, params) => {
|
|
|
27
30
|
call: calldata,
|
|
28
31
|
account: account,
|
|
29
32
|
});
|
|
30
|
-
|
|
33
|
+
return {
|
|
31
34
|
status: 'success',
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
data: {
|
|
36
|
+
tokenId: params.tokenId,
|
|
37
|
+
from: fromAddress,
|
|
38
|
+
to: toAddress,
|
|
39
|
+
transactionHash: txH,
|
|
40
|
+
},
|
|
36
41
|
};
|
|
37
|
-
return JSON.stringify(result);
|
|
38
42
|
}
|
|
39
43
|
catch (error) {
|
|
40
|
-
|
|
44
|
+
return {
|
|
41
45
|
status: 'failure',
|
|
42
46
|
error: error instanceof Error ? error.message : 'Unknown error',
|
|
43
|
-
step: 'transfer execution',
|
|
44
47
|
};
|
|
45
|
-
return JSON.stringify(result);
|
|
46
48
|
}
|
|
47
49
|
};
|
|
48
50
|
export const transfer = async (env, params) => {
|
|
@@ -55,9 +57,16 @@ export const transfer = async (env, params) => {
|
|
|
55
57
|
const toAddress = validateAndParseAddress(params.toAddress);
|
|
56
58
|
const tokenId = validateAndFormatTokenId(params.tokenId);
|
|
57
59
|
const contractAddress = validateAndParseAddress(params.contractAddress);
|
|
58
|
-
const account = new Account(
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
const account = new Account({
|
|
61
|
+
provider,
|
|
62
|
+
address: accountCredentials.address,
|
|
63
|
+
signer: accountCredentials.signer,
|
|
64
|
+
});
|
|
65
|
+
const contract = new Contract({
|
|
66
|
+
abi: INTERACT_ERC721_ABI,
|
|
67
|
+
address: contractAddress,
|
|
68
|
+
providerOrAccount: account,
|
|
69
|
+
});
|
|
61
70
|
const calldata = contract.populate('transfer_from', [
|
|
62
71
|
accountCredentials.address,
|
|
63
72
|
toAddress,
|
|
@@ -67,22 +76,21 @@ export const transfer = async (env, params) => {
|
|
|
67
76
|
call: calldata,
|
|
68
77
|
account: account,
|
|
69
78
|
});
|
|
70
|
-
|
|
79
|
+
return {
|
|
71
80
|
status: 'success',
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
81
|
+
data: {
|
|
82
|
+
tokenId: params.tokenId,
|
|
83
|
+
from: accountCredentials.address,
|
|
84
|
+
to: toAddress,
|
|
85
|
+
transactionHash: txH,
|
|
86
|
+
},
|
|
76
87
|
};
|
|
77
|
-
return JSON.stringify(result);
|
|
78
88
|
}
|
|
79
89
|
catch (error) {
|
|
80
|
-
|
|
90
|
+
return {
|
|
81
91
|
status: 'failure',
|
|
82
92
|
error: error instanceof Error ? error.message : 'Unknown error',
|
|
83
|
-
step: 'transfer execution',
|
|
84
93
|
};
|
|
85
|
-
return JSON.stringify(result);
|
|
86
94
|
}
|
|
87
95
|
};
|
|
88
96
|
//# sourceMappingURL=transferFrom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferFrom.js","sourceRoot":"","sources":["../../../src/tools/write/transferFrom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"transferFrom.js","sourceRoot":"","sources":["../../../src/tools/write/transferFrom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAYnD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,GAAiB,EACjB,MAA0C,EACrB,EAAE;IACvB,IAAI,CAAC;QACH,IACE,CAAC,MAAM,EAAE,WAAW;YACpB,CAAC,MAAM,EAAE,SAAS;YAClB,CAAC,MAAM,EAAE,OAAO;YAChB,CAAC,MAAM,EAAE,eAAe,EACxB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAE5B,MAAM,WAAW,GAAG,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE;YAClD,WAAW;YACX,SAAS;YACT,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,SAAS;gBACb,eAAe,EAAE,GAAG;aACrB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAQF,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,GAAiB,EACjB,MAAsC,EACjB,EAAE;IACvB,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC;QAEvC,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,QAAQ;YACR,OAAO,EAAE,kBAAkB,CAAC,OAAO;YACnC,MAAM,EAAE,kBAAkB,CAAC,MAAM;SAClC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC5B,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE;YAClD,kBAAkB,CAAC,OAAO;YAC1B,SAAS;YACT,OAAO;SACR,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,kBAAkB,CAAC,OAAO;gBAChC,EAAE,EAAE,SAAS;gBACb,eAAe,EAAE,GAAG;aACrB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kasarlabs/erc721-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -10,22 +10,28 @@
|
|
|
10
10
|
"build": "tsc && chmod 755 build/index.js",
|
|
11
11
|
"clean": "rm -rf build",
|
|
12
12
|
"clean:all": "rm -rf build node_modules",
|
|
13
|
-
"start": "node build/index.js"
|
|
13
|
+
"start": "node build/index.js",
|
|
14
|
+
"test": "NODE_OPTIONS=--experimental-vm-modules jest",
|
|
15
|
+
"test:e2e": "NODE_OPTIONS=--experimental-vm-modules jest __tests__/e2e"
|
|
14
16
|
},
|
|
15
17
|
"files": [
|
|
16
18
|
"build"
|
|
17
19
|
],
|
|
18
20
|
"dependencies": {
|
|
19
|
-
"@kasarlabs/ask-starknet-core": "0.1.
|
|
21
|
+
"@kasarlabs/ask-starknet-core": "0.1.4",
|
|
20
22
|
"@langchain/core": "^0.3.42",
|
|
21
|
-
"@modelcontextprotocol/sdk": "
|
|
23
|
+
"@modelcontextprotocol/sdk": "1.22.0",
|
|
22
24
|
"dotenv": "^16.4.7",
|
|
23
|
-
"starknet": "
|
|
25
|
+
"starknet": "~8.9.0",
|
|
24
26
|
"winston": "^3.17.0",
|
|
25
27
|
"zod": "^3.24.2"
|
|
26
28
|
},
|
|
27
29
|
"devDependencies": {
|
|
30
|
+
"@jest/globals": "^29.7.0",
|
|
31
|
+
"@types/jest": "^29.5.12",
|
|
28
32
|
"@types/node": "^22.13.10",
|
|
33
|
+
"jest": "^29.7.0",
|
|
34
|
+
"ts-jest": "^29.1.2",
|
|
29
35
|
"typescript": "^5.8.2"
|
|
30
36
|
},
|
|
31
37
|
"keywords": [
|
|
@@ -39,5 +45,5 @@
|
|
|
39
45
|
"publishConfig": {
|
|
40
46
|
"access": "public"
|
|
41
47
|
},
|
|
42
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "0799e2b085e950e5d102822d71a6b122290e8c38"
|
|
43
49
|
}
|