@@ -76,14 +76,15 @@ export const ChatWindow: FC<ChatWindowProps> = ({
76
76
const { messages : chatMessages , input, handleInputChange, handleSubmit, isLoading } = useChat ( {
77
77
api : endpoint ,
78
78
onError : ( error ) => {
79
- let errorMessage = "An error occurred while processing your request." ;
80
- try {
81
- const parsedError = JSON . parse ( error . message ) ;
82
- errorMessage = parsedError . error || error . message ;
83
- } catch {
84
- errorMessage = error . message ;
85
- }
86
- toast . error ( errorMessage ) ;
79
+ // let errorMessage = "An error occurred while processing your request.";
80
+ console . log ( error ) ;
81
+ // try {
82
+ // const parsedError = JSON.parse(error.message);
83
+ // errorMessage = parsedError.error || error.message;
84
+ // } catch {
85
+ // errorMessage = error.message;
86
+ // }
87
+ toast . error ( error . message as any ) ;
87
88
} ,
88
89
onResponse : ( response ) => {
89
90
if ( ! response . ok ) {
@@ -132,24 +133,99 @@ export const ChatWindow: FC<ChatWindowProps> = ({
132
133
} ;
133
134
}
134
135
}
136
+ if ( invocation . toolName === '0' ) {
137
+ // console.log(invocation.result)
138
+ try {
139
+ // Save user share data to our API
140
+ const response = await fetch ( '/api/usershare' , {
141
+ method : 'POST' ,
142
+ headers : {
143
+ 'Content-Type' : 'application/json' ,
144
+ } ,
145
+ body : JSON . stringify ( {
146
+ email : invocation . result ?. email ,
147
+ userShare : invocation . result ?. userShare
148
+ } )
149
+ } ) ;
150
+
151
+ if ( ! response . ok ) {
152
+ throw new Error ( 'Failed to save user share data' ) ;
153
+ }
154
+
155
+ return {
156
+ ...invocation ,
157
+ result : {
158
+ status : 'success' ,
159
+ ...invocation . result
160
+ }
161
+ } ;
162
+ } catch ( error ) {
163
+ console . error ( 'Error saving user share data:' , error ) ;
164
+ return {
165
+ ...invocation ,
166
+ result : {
167
+ status : 'error' ,
168
+ message : ( error as Error ) . message ,
169
+ ...invocation . result
170
+ }
171
+ } ;
172
+ }
173
+ }
135
174
//
136
175
if ( invocation . toolName === 'CLAIM_PARA_PREGEN_WALLET' ) {
176
+ // const userShare="eyJjcmVhdGVkQXQiOiIyMDI1LTAzLTE4VDAyOjIwOjMwLjE5NloiLCJ1cGRhdGVkQXQiOiIyMDI1LTAzLTE4VDAyOjIwOjMyLjc5N1oiLCJpZCI6IjU5OWMyZWU2LWExZDgtNDZlYy1hY2ZjLTBlM2FkZjcyNWU5OSIsInVzZXJJZCI6bnVsbCwibmFtZSI6bnVsbCwia2V5R2VuQ29tcGxldGUiOnRydWUsImFkZHJlc3MiOiJETnhKS1pIckFSdmU1aFl5U3U1dGU4RlZxQmkyVlZ6UXJ3ZE5GUDZCbnNIZiIsImFkZHJlc3NTZWNvbmRhcnkiOm51bGwsInB1YmxpY0tleSI6IiIsImNvc21vc1ByZWZpeCI6bnVsbCwic2NoZW1lIjoiRUQyNTUxOSIsImlzUHJlZ2VuIjp0cnVlLCJ0eXBlIjoiU09MQU5BIiwicHJlZ2VuSWRlbnRpZmllciI6InBvbmNpQHRlc3QuZ2V0cGFyYS5jb20iLCJwcmVnZW5JZGVudGlmaWVyVHlwZSI6IkVNQUlMIiwicGFydG5lcklkIjoiOGY2MTE2MDktZDFjNS00YmU3LTlhMTUtMjE2NjQ5ZDk4M2ExIiwiY3VzdG9tQXV0aElkSWQiOm51bGwsImxhc3RVc2VkQXQiOm51bGwsImxhc3RVc2VkUGFydG5lcklkIjpudWxsLCJoYXNCZWVuVXNlZENyb3NzUGFydG5lciI6ZmFsc2UsInBhcnRuZXIiOnsiY3JlYXRlZEF0IjoiMjAyNS0wMS0yNFQxMzoxNTo1Ni40MDJaIiwidXBkYXRlZEF0IjoiMjAyNS0wMi0yNlQwNzo1NDo0NS4xODBaIiwiaWQiOiI4ZjYxMTYwOS1kMWM1LTRiZTctOWExNS0yMTY2NDlkOTgzYTEiLCJuYW1lIjoic29sYW5hIiwib3JnYW5pemF0aW9uSWQiOiJkZjVhN2Q2YS1jMDk1LTQyMDYtYWE1ZS05Mjc2ZjA2YjhkOWMiLCJwcm9qZWN0SWQiOiIxODFiZjg5OS1kZTE2LTQ3OWYtYjk4Mi1hZjQ1MWE0YTI1NGMiLCJkaXNwbGF5TmFtZSI6InNvbGFuYSIsImJhbm5lckltYWdlVXJsIjpudWxsLCJ2ZXJpZnlVcmwiOm51bGwsInBvcnRhbFVybCI6bnVsbCwiaG9tZXBhZ2VVcmwiOiJodHRwczovL21hbnRsZS51cmF0bWFuZ3VuLm92aCIsInBvcnRhbEhlYWRlckxvZ29VcmwiOm51bGwsImFwaUtleSI6IjUwMDZlMGMwZGU5MjhjYjA1MzA1ZDEyNDk0Yjc1ZmI0IiwicG9saWNpZXNFbmFibGVkIjpmYWxzZSwib3JpZ2lucyI6bnVsbCwibWl4cGFuZWxUb2tlbiI6bnVsbCwibG9nb1VybCI6bnVsbCwiZW1haWxCYWNrdXBLaXQiOmZhbHNlLCJlbWFpbFdlbGNvbWUiOnRydWUsImVtYWlsSW1hZ2VVcmwiOm51bGwsImVtYWlsSW1hZ2VMaW5rIjpudWxsLCJiYWNrZ3JvdW5kQ29sb3IiOm51bGwsImZvcmVncm91bmRDb2xvciI6bnVsbCwiZm9udCI6bnVsbCwidHdpdHRlclVybCI6bnVsbCwiZ2l0aHViVXJsIjpudWxsLCJsaW5rZWRpblVybCI6bnVsbCwiYXJjaGl2ZWQiOmZhbHNlLCJpc1VzZWQiOnRydWUsImlzSW5zdGFsbGVkIjp0cnVlLCJzdXBwb3J0ZWRXYWxsZXRUeXBlcyI6W3sidHlwZSI6IlNPTEFOQSIsIm9wdGlvbmFsIjpmYWxzZX0seyJ0eXBlIjoiRVZNIiwib3B0aW9uYWwiOmZhbHNlfV0sImNvc21vc1ByZWZpeCI6ImNvc21vcyIsImlzV2l0aGRyYXdFbmFibGVkIjp0cnVlLCJpc0J1eUVuYWJsZWQiOnRydWUsImlzUmVjZWl2ZUVuYWJsZWQiOnRydWUsIm9uUmFtcFByb3ZpZGVycyI6WyJTVFJJUEUiLCJNT09OUEFZIl0sIm9uUmFtcEFzc2V0cyI6bnVsbCwidGVhbUlkIjpudWxsLCJidW5kbGVJZGVudGlmaWVyIjpudWxsLCJhbmRyb2lkUGFja2FnZU5hbWUiOm51bGwsImFuZHJvaWRTaGEyNTZDZXJ0RmluZ2VycHJpbnRzIjpudWxsLCJhY2NlbnRDb2xvciI6bnVsbCwidGhlbWVNb2RlIjoiTElHSFQiLCJzdXBwb3J0ZWRBdXRoTWV0aG9kcyI6WyJQQVNTS0VZIl0sImljb25VcmwiOm51bGwsInJhbXBBcGlLZXkiOm51bGwsImRlZmF1bHRPblJhbXBBc3NldCI6bnVsbCwiZGVmYXVsdE9uUmFtcE5ldHdvcmsiOm51bGwsImRlZmF1bHRCdXlBbW91bnQiOm51bGwsImRlZmF1bHRCdXlBbW91bnRDdXJyZW5jeSI6bnVsbCwiZGVmYXVsdFNlbGxBbW91bnQiOm51bGwsImRlZmF1bHRTZWxsQW1vdW50Q3VycmVuY3kiOm51bGwsImZvcmNlVHJhbnNhY3Rpb25Qb3B1cHMiOmZhbHNlLCJ0cmFuc2FjdGlvblBvcHVwc0VuYWJsZWQiOmZhbHNlfSwibGFzdFVzZWRQYXJ0bmVyIjpudWxsLCJzaWduZXIiOiJleUpKWkNJNklqRWlMQ0pQZEdobGNrbGtJam9pTWlJc0lrOTFkSEIxZENJNmV5SlFkV0pzYVdNaU9uc2lkQ0k2TVN3aVozSnZkWEJyWlhraU9pSjZTR1ZQTTFOeVIzZHlZVTFOTmpSQ1F5OXJUREZUZGxsbE4zaGhTRUZEYjNkQ1pHdEZWMDFCVVRGUlBTSXNJbk5vWVhKbGN5STZleUl4SWpvaVZITXllbVZGVEZkcVFXbzRWRlJ1Wm1sV09IYzRZMWcyT1VzdlpqWkROVWhQUXpWQlkyRnRiRlJxWnowaUxDSXlJam9pUkdoM1JrZzROM05US3poeFdWRkpUSGd3VVVoMUt6ZFRUMWx3YzJ3cmVXMHJTbFZtSzJ4TE0zbFRPRDBpZlgwc0lsTmxZM0psZEV0bGVTSTZleUpwWkNJNk1Td2ljMlZqY21WMElqb2libGNyTDNaSk9FazVPWEZDYkZKMWJXZ3dhMlZXWnpkalR6Z3pXV3g0Y3paeldEQkVXRzVTVmpCQll6MGlmWDBzSWxkaGJHeGxkRWxrSWpvaU5UazVZekpsWlRZdFlURmtPQzAwTm1WakxXRmpabU10TUdVellXUm1OekkxWlRrNUlpd2lTRzl6ZENJNkluZHpjem92TDIxd1l5MXVaWFIzYjNKckxtSmxkR0V1WjJWMGNHRnlZUzVqYjIwaWZRPT0ifQ==";
177
+
178
+ // const claim=await solanaAgentWithPara.methods.claimParaPregenWallet(userShare,"")
179
+
180
+ // return {
181
+ // ...invocation,
182
+ // result: { status: 'success', ...claim }
183
+ // };
137
184
try {
138
- const response = await solanaAgentWithPara . methods . claimParaPregenWallet ( ) ;
139
-
140
- return {
141
- ...invocation ,
142
- result : { status : 'success' , ...response }
143
- } ;
185
+ // Save user share data to our API
186
+ const response = await fetch ( '/api/usershare?email=' + invocation . args ?. email , {
187
+ method : 'GET' ,
188
+ headers : {
189
+ 'Content-Type' : 'application/json' ,
190
+ } ,
191
+ } ) ;
192
+
193
+
194
+ if ( ! response . ok ) {
195
+ throw new Error ( 'Failed to get user share data' ) ;
196
+ }
197
+ const data = await response . json ( ) ;
198
+ // const userShare="eyJjcmVhdGVkQXQiOiIyMDI1LTAzLTE4VDAyOjE0OjIyLjI0M1oiLCJ1cGRhdGVkQXQiOiIyMDI1LTAzLTE4VDAyOjE0OjI1LjI4MFoiLCJpZCI6ImQ5Nzg4MWUxLTA0ZTQtNGJhYS04MjYyLTc1NDdmYjVhZTU2MCIsInVzZXJJZCI6bnVsbCwibmFtZSI6bnVsbCwia2V5R2VuQ29tcGxldGUiOnRydWUsImFkZHJlc3MiOiI5VzU1Q29jU3RQb0xqMXppN3JZWXdtaTNFSHY1QTkzTWNiQXpidWc3U0c2NiIsImFkZHJlc3NTZWNvbmRhcnkiOm51bGwsInB1YmxpY0tleSI6IiIsImNvc21vc1ByZWZpeCI6bnVsbCwic2NoZW1lIjoiRUQyNTUxOSIsImlzUHJlZ2VuIjp0cnVlLCJ0eXBlIjoiU09MQU5BIiwicHJlZ2VuSWRlbnRpZmllciI6InBvbmNpQHRlc3QuZ2V0cGFyYS5jb20iLCJwcmVnZW5JZGVudGlmaWVyVHlwZSI6IkVNQUlMIiwicGFydG5lcklkIjoiOGY2MTE2MDktZDFjNS00YmU3LTlhMTUtMjE2NjQ5ZDk4M2ExIiwiY3VzdG9tQXV0aElkSWQiOm51bGwsImxhc3RVc2VkQXQiOm51bGwsImxhc3RVc2VkUGFydG5lcklkIjpudWxsLCJoYXNCZWVuVXNlZENyb3NzUGFydG5lciI6ZmFsc2UsInBhcnRuZXIiOnsiY3JlYXRlZEF0IjoiMjAyNS0wMS0yNFQxMzoxNTo1Ni40MDJaIiwidXBkYXRlZEF0IjoiMjAyNS0wMi0yNlQwNzo1NDo0NS4xODBaIiwiaWQiOiI4ZjYxMTYwOS1kMWM1LTRiZTctOWExNS0yMTY2NDlkOTgzYTEiLCJuYW1lIjoic29sYW5hIiwib3JnYW5pemF0aW9uSWQiOiJkZjVhN2Q2YS1jMDk1LTQyMDYtYWE1ZS05Mjc2ZjA2YjhkOWMiLCJwcm9qZWN0SWQiOiIxODFiZjg5OS1kZTE2LTQ3OWYtYjk4Mi1hZjQ1MWE0YTI1NGMiLCJkaXNwbGF5TmFtZSI6InNvbGFuYSIsImJhbm5lckltYWdlVXJsIjpudWxsLCJ2ZXJpZnlVcmwiOm51bGwsInBvcnRhbFVybCI6bnVsbCwiaG9tZXBhZ2VVcmwiOiJodHRwczovL21hbnRsZS51cmF0bWFuZ3VuLm92aCIsInBvcnRhbEhlYWRlckxvZ29VcmwiOm51bGwsImFwaUtleSI6IjUwMDZlMGMwZGU5MjhjYjA1MzA1ZDEyNDk0Yjc1ZmI0IiwicG9saWNpZXNFbmFibGVkIjpmYWxzZSwib3JpZ2lucyI6bnVsbCwibWl4cGFuZWxUb2tlbiI6bnVsbCwibG9nb1VybCI6bnVsbCwiZW1haWxCYWNrdXBLaXQiOmZhbHNlLCJlbWFpbFdlbGNvbWUiOnRydWUsImVtYWlsSW1hZ2VVcmwiOm51bGwsImVtYWlsSW1hZ2VMaW5rIjpudWxsLCJiYWNrZ3JvdW5kQ29sb3IiOm51bGwsImZvcmVncm91bmRDb2xvciI6bnVsbCwiZm9udCI6bnVsbCwidHdpdHRlclVybCI6bnVsbCwiZ2l0aHViVXJsIjpudWxsLCJsaW5rZWRpblVybCI6bnVsbCwiYXJjaGl2ZWQiOmZhbHNlLCJpc1VzZWQiOnRydWUsImlzSW5zdGFsbGVkIjp0cnVlLCJzdXBwb3J0ZWRXYWxsZXRUeXBlcyI6W3sidHlwZSI6IlNPTEFOQSIsIm9wdGlvbmFsIjpmYWxzZX0seyJ0eXBlIjoiRVZNIiwib3B0aW9uYWwiOmZhbHNlfV0sImNvc21vc1ByZWZpeCI6ImNvc21vcyIsImlzV2l0aGRyYXdFbmFibGVkIjp0cnVlLCJpc0J1eUVuYWJsZWQiOnRydWUsImlzUmVjZWl2ZUVuYWJsZWQiOnRydWUsIm9uUmFtcFByb3ZpZGVycyI6WyJTVFJJUEUiLCJNT09OUEFZIl0sIm9uUmFtcEFzc2V0cyI6bnVsbCwidGVhbUlkIjpudWxsLCJidW5kbGVJZGVudGlmaWVyIjpudWxsLCJhbmRyb2lkUGFja2FnZU5hbWUiOm51bGwsImFuZHJvaWRTaGEyNTZDZXJ0RmluZ2VycHJpbnRzIjpudWxsLCJhY2NlbnRDb2xvciI6bnVsbCwidGhlbWVNb2RlIjoiTElHSFQiLCJzdXBwb3J0ZWRBdXRoTWV0aG9kcyI6WyJQQVNTS0VZIl0sImljb25VcmwiOm51bGwsInJhbXBBcGlLZXkiOm51bGwsImRlZmF1bHRPblJhbXBBc3NldCI6bnVsbCwiZGVmYXVsdE9uUmFtcE5ldHdvcmsiOm51bGwsImRlZmF1bHRCdXlBbW91bnQiOm51bGwsImRlZmF1bHRCdXlBbW91bnRDdXJyZW5jeSI6bnVsbCwiZGVmYXVsdFNlbGxBbW91bnQiOm51bGwsImRlZmF1bHRTZWxsQW1vdW50Q3VycmVuY3kiOm51bGwsImZvcmNlVHJhbnNhY3Rpb25Qb3B1cHMiOmZhbHNlLCJ0cmFuc2FjdGlvblBvcHVwc0VuYWJsZWQiOmZhbHNlfSwibGFzdFVzZWRQYXJ0bmVyIjpudWxsLCJzaWduZXIiOiJleUpKWkNJNklqRWlMQ0pQZEdobGNrbGtJam9pTWlJc0lrOTFkSEIxZENJNmV5SlFkV0pzYVdNaU9uc2lkQ0k2TVN3aVozSnZkWEJyWlhraU9pSlNTRlpPWWtkd2RXWkZWM3AzV2xCcFlsSnliR05TUkhjeGQyTlVialJLUjFsbllqVlZNMGxWUkhkVlBTSXNJbk5vWVhKbGN5STZleUl4SWpvaVprcElSRGd5YkUwNEx6RmhkRTVpYlU0d1NDdFNZVkZxVG5weVJYWXJTRWx4UWl0WGRGb3JjVTVJUlQwaUxDSXlJam9pYUV4UFRUUTRUVzk2Wkd4UFkwdFhaWFp0V1hkRGJFNWhha0oxVm10blMybFZTSGxQVUV4VWRHcDVVVDBpZlgwc0lsTmxZM0psZEV0bGVTSTZleUpwWkNJNk1Td2ljMlZqY21WMElqb2llRWRTVWpsSU9UZFZZVEZVYld3d09XOVdSSE5EUzJNeFFYUm5kVTFOUVhaclVISnNVelkyVjB4UmF6MGlmWDBzSWxkaGJHeGxkRWxrSWpvaVpEazNPRGd4WlRFdE1EUmxOQzAwWW1GaExUZ3lOakl0TnpVME4yWmlOV0ZsTlRZd0lpd2lTRzl6ZENJNkluZHpjem92TDIxd1l5MXVaWFIzYjNKckxtSmxkR0V1WjJWMGNHRnlZUzVqYjIwaWZRPT0ifQ==";
199
+
200
+ const claim = await solanaAgentWithPara . methods . claimParaPregenWallet ( data . userShare , "" )
201
+ // Delete user share data
202
+ const deleteResponse = await fetch ( '/api/usershare?email=' + invocation . args ?. email , {
203
+ method : 'DELETE' ,
204
+ headers : {
205
+ 'Content-Type' : 'application/json' ,
206
+ }
207
+ } ) ;
208
+
209
+ if ( ! deleteResponse . ok ) {
210
+ throw new Error ( 'Failed to delete user share data' ) ;
211
+ }
212
+ return {
213
+ ...invocation ,
214
+ result : { status : 'success' , ...claim }
215
+ } ;
216
+
144
217
} catch ( error ) {
145
-
146
- return {
147
- ...invocation ,
148
- result : { status : 'error' , message : ( error as Error ) . message }
149
- } ;
150
-
218
+ console . error ( 'Error getting user share data:' , error ) ;
219
+ return {
151
220
221
+ result : {
222
+ status : 'error' ,
223
+ message : ( error as Error ) . message ,
224
+
225
+ }
226
+ } ;
152
227
}
228
+
153
229
}
154
230
if ( invocation . toolName === 'USE_WALLET' ) {
155
231
0 commit comments