Skip to content

Commit a332356

Browse files
authored
Merge pull request #42 from hchen2020/main
token expires.
2 parents 19ca422 + 74c2f7b commit a332356

File tree

4 files changed

+20
-9
lines changed

4 files changed

+20
-9
lines changed

src/lib/helpers/http.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,13 @@ axios.interceptors.response.use(
2626
},
2727
(error) => {
2828
setGlobalLoad(false);
29+
30+
let user = getUserStore();
31+
32+
if (Date.now() / 1000 > user.expires) {
33+
error.response = {status: 401};
34+
}
35+
2936
// If the error status is 401, handle it here
3037
if (error.response && error.response.status === 401) {
3138
// Perform actions like redirecting to the login page or refreshing tokens

src/lib/helpers/store.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ export const conversationKey = "conversation";
66
export const conversationUserStatesKey = "conversation_user_states";
77

88
/** @type {Writable<import('$types').UserModel>} */
9-
export const userStore = writable({ id: "", full_name: "" });
9+
export const userStore = writable({ id: "", full_name: "", expires: 0 });
1010

1111
/**
1212
* @returns {Writable<import('$types').UserModel>}

src/lib/services/auth-service.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export async function getToken(email, password, onSucceed) {
2929
}
3030
let user = getUserStore();
3131
user.token = result.access_token;
32+
user.expires = result.expires;
3233
userStore.set(user);
3334
onSucceed();
3435
})

src/routes/page/task/[taskId]/execution-flow.svelte

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -105,16 +105,18 @@
105105
mid = cid;
106106
}
107107
108-
/** @param {string} message
108+
/**
109+
* @param {string} message
109110
* @param {import('$types').ChatResponseModel} response
111+
* @param {boolean} isSuccess
110112
*/
111-
function renderMessageNode(message, response) {
113+
function renderMessageNode(message, response, isSuccess) {
112114
let posX = lastPosX + nodeSpaceX, posY = lastPosY + nodeSpaceY;
113115
let html = `<div class=''>${message}</div>`;
114116
if (response.data) {
115117
html += `<img src=${response.data} alt="" width="215px"/>`
116118
}
117-
html += `<div class="bg-info mt-1 mb-1 p-1 rounded">${response.text}</div>`;
119+
html += `<div class="${isSuccess ? 'bg-info' : 'bg-danger'} mt-1 mb-1 p-1 rounded">${response.text}</div>`;
118120
119121
editor.addNodeOutput(mid);
120122
let new_mid = editor.addNode('message', 1, 0, posX, posY, 'message', {}, html, false);
@@ -127,7 +129,7 @@
127129
messageCount++;
128130
if (messageCount % 10 == 0) {
129131
// editor.zoom_out();
130-
lastPosX = lastPosX + nodeSpaceX;
132+
lastPosX = posX;
131133
lastPosY = 0;
132134
}
133135
}
@@ -143,7 +145,7 @@
143145
renderConversationNode(conversation);
144146
145147
var response = await sendMessageToHub(task.agent_id, conversation.id, task.content);
146-
renderMessageNode(task.content, response);
148+
renderMessageNode(task.content, response, true);
147149
}
148150
149151
async function handleRunTaskInteractively() {
@@ -153,7 +155,6 @@
153155
154156
// new conversation
155157
const conversation = await newConversation(task.direct_agent_id, {taskId: task.id});
156-
conversation.task_id = task.id;
157158
conversationStore.set(conversation);
158159
renderConversationNode(conversation);
159160
@@ -163,15 +164,17 @@
163164
let step = steps[i];
164165
const response = await sendMessageToHub(task.direct_agent_id, conversation.id, step, '', ['hide_context=true']);
165166
if (response.text.includes("failed")) {
167+
renderMessageNode(step, response, false);
166168
break;
169+
} else {
170+
renderMessageNode(step, response, true);
167171
}
168-
renderMessageNode(step, response);
169172
}
170173
}
171174
</script>
172175

173176
<div>
174-
<button class="btn btn-primary me-2" on:click={handleRunTaskSequentiallyInServer}><i class="bx bx-run"></i> Execute Sequentially through Router</button>
177+
<!--<button class="btn btn-primary me-2" on:click={handleRunTaskSequentiallyInServer}><i class="bx bx-run"></i> Execute Sequentially through Router</button>-->
175178
{#if task?.direct_agent_id}
176179
<button class="btn btn-primary" on:click={handleRunTaskInteractively}><i class="bx bx-rocket"></i> Execute Interactively</button>
177180
{/if}

0 commit comments

Comments
 (0)